Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 6 odgovora
  • 3.165 pregleda

Najnovija ↓

SQL upiti u VBA kodu pomoć 27.10.2009. u 09:39 · pre 207 meseci #1
Pozdrav svima!

Molio bih za malu pomoć. Radim nekakvu aplikaciju u Access 2007 i sad mi je potrebno na formi u jedno polje da se automatski unosi nekakav broj iz registra koji se sastoji od 7 znamenaka. Kako se taj broj generira? Evo ovako: U posebnoj tablici Identifikatori je zapisan samo jedan redak koji sadrzi broj od 6 znamenaka (ime kolone je Identifikator). Ja bi trebao kroz vba kod uzeti tu vrijednost Identifikatora (i naravno pohraniti u neku varijablu), nakon toga povečati broj za 1 i pohraniti ga ponovno nazad u tablicu Identifikatori (zapravo napraviti update kolone Identifikator). E sad imam nekih problema kako "ugraditi" SQL naredbe SELECT i UPDATE u taj VBA kod da mi te vrijednosti koje dohvati spremi u neke varijable koje ću ja kasnije koristit u funkciji za izračun sedme kontrolne znamenke koju ću zaljepiti na taj šesteroznamenkasti broj i spremiti u formi u polje "broj iz registra".

I sad još skračeno, trebam da mi rezultat Query-a "Select Identifikator from Identifikatori" spremi u neku varijablu tipa Integer (to je jedan redak pa će uvijek taj select vratiti jednu vrijednost), te da mi napravi "UPDATE Identifikatori SET Identifikator = Identifikator_+_1" kroz vba kod.

Hvala.
Re: SQL upiti u VBA kodu pomoć 27.10.2009. u 10:16 · pre 207 meseci #3
meni treba da rezultat tog selecta koji sam napisao pohrani u neku varijablu tipa Integer
Re: SQL upiti u VBA kodu pomoć 27.10.2009. u 11:13 · pre 207 meseci #4
Code:
select identifikator+1 as rezultat from tablica

Dim i as integer

'tu izvrši upit

i = query!rezultat
Potpis
F
Re: SQL upiti u VBA kodu pomoć 27.10.2009. u 12:25 · pre 207 meseci #5
Dim MySQL As String
Dim Identifikator As Long
Dim rs As Recordset
Dim mdb As Database


MySQL = "SELECT Identifikator from Identifikatori"
Set mdb = CurrentDb
Set rs = mdb.OpenRecordset(MySQL)

Identifikator = rs!Identifikator

rs.Close
Set rs = Nothing


Ovo je rješenje :)
Re: SQL upiti u VBA kodu pomoć 27.10.2009. u 17:03 · pre 207 meseci #6
Najednostavnije ti je sa naredbama Dlookup ili Dmax

Znači ako želiš uzeti največi identifikator

najveci=Dmax("identifikator","tablicaidentifikator")

tu nema dileme, funkcija če uzeti največi identifikator iz tablice

ali ako želiš uzeti baš određeni identifikator onda dlookup

odredjeni=Dlookup("identifikator","tablicaidetifikator","identifikator=" & neki_identifikator_sa_tvoje forme)

još bi mogao dodati i funkciju NZ, pa ako ne postoji da ti u varijablu vrati ono sto ti upises

npr

najveci=NZ(Dmax("identifikator","tablicaidentifikator") , 0 )

ili

najveci=NZ(Dmax("identifikator","tablicaidentifikator") , 123456)


itd.....


Pozdrav
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme