pa ako ti se javlja na vise mesta mozda je najbolje da odvojis u posebnu proceduru :
(Skracena verzija)
Code:
Public Function UbaciKomitente(Optional GdeUbaciti AS String = "edupla")
Dim tSQL As String
tSQL = " SELECT * INTO [" & GdeUbaciti & "] " _
& " FROM komitenti " _
& " ORDER BY naziv; "
call CurrentDB.Execute(tSQL, dbFailOnError)
End Function
(isto to samo sa jos nekim standardnim stvarcicama)
Code:
Public Function UbaciKomitente(Optional GdeUbaciti AS String = "edupla") As String
Dim tSQL As String
ON Error Goto ERR_UbaciKomitente
tSQL = " SELECT * INTO [" & GdeUbaciti & "] " _
& " FROM komitenti " _
& " ORDER BY naziv; "
call CurrentDB.Execute(tSQL, dbFailOnError)
Exit Function
ERR_UbaciKomitente :
UbaciKomitente = Err.Description
End Function
ovakvu funkciju pozoves sa
UbaciKomitente() kada treba da ubacis u tabelu
edupla poredjane komitente, a sa
UbaciKomitente("NekiNazivTabele") kada treba da ubacis u tabelu koja se zove
NekiNazivTabele
par stvari :
- umesto kombinacije
SetWarnings (False) / DoCmd.RunSQL (tSQL) / SetWarnings (True) treba napisati samo
CurrentDB.Execute(tSQL, dbFailOnError), i neces dobijati upozorenja (mozes cak da napises samo
Execute(tSQL)), plus zauzvrat dobijas dodatnu fleksibilnost ako recimo radis sa vise baza istovremeno u kodu
- oblik
Code:
tSQL = " SELECT * INTO [" & GdeUbaciti & "] " _
& " FROM komitenti " _
& " ORDER BY naziv; "
je obicno citljiviji od
Code:
tSQL = " SELECT komitenti.* INTO edupla "
tSQL = tSQL & "FROM komitenti "
tSQL = tSQL & " ORDER BY naziv ;"
(ustvari najbolje je koristiti kombinaciju ta dva kada recimo radis sa subquerijima)
- u produzenoj verziji imas i error handling (koji naravno moze da se radi na dosta nacina, ovo je samo jedan od njih)
- broj querija koje sacuvas utice zanemarljivo na velicinu baze
- ako se ipak odlucis da pozivas staticki (sacuvan) query to radis ovako
Code:
Call CurrentDb.QueryDefs("ImeTvogQuerija").Execute(dbFailOnError)
ili kraca opcija koju ne preporucujem
Code:
Call QueryDefs("ImeTvogQuerija").Execute()
So Long, and Thanks for All the Fish