Predmet:Re: Spajanje arhiviranih baza
Ja sam se uz svoje skromno znamnje mučo sa ovim do maloprije i uspio sam neÅ¡to napraviti.
Tvoj kod je u svakom slučaju elegantniji i pregldniji.
Hvala puno.
JoÅ¡ jedino je problem da se spriječi viÅ¡e puta pokrenuti ovaj kod. Znači ako več imamo u transakcijama 'ZavrÅ¡na inventura' za određeno skladiÅ¡te trebalo bi zabraniti ponovni upis. I u mom i u tvom slučaju nakon drugog pokretanja koda u tblUlazIzlaz upisuju se nule.
PreuzmiIzvorni kôd (vbnet):Private Sub CmdTransakcije_Click()
Dim Db As Database
Dim Rs1 As Recordset
Dim Rs2 As Recordset
Dim Rs3 As Recordset
Dim rs4 As Recordset
Dim tempIdT As Integer
Dim tempSkl As String
Set Db = CurrentDb()
Set Rs1 = Db.OpenRecordset("SELECT Skladiste FROM Q_Stanje GROUP BY Skladiste", dbOpenDynaset)
Set Rs2 = Db.OpenRecordset("tblTransakcije", dbOpenDynaset)
Do While Not Rs1.EOF
Rs2.AddNew
Rs2!Datum = Date
Rs2!Skladiste = Rs1!Skladiste
Rs2!IDdokumenta = 16
Rs2!BrDokumenta = "n/a"
Rs2!PartnerID = DLookup("PartnerID", "tblPartneri", "Firma ='" & "Skladište " & Rs1!Skladiste & "'")
Rs2!Radninalog = "n/a"
Rs2!OperID = "Operater"
Rs2!StatusTR = 2
Rs2.Update
Rs2.MoveLast
tempIdT = Rs2!IdTransakcije
Set Rs3 = Db.OpenRecordset("SELECT * FROM Q_Stanje WHERE Skladiste = '" & Rs1!Skladiste & "'", dbOpenDynaset)
Set rs4 = Db.OpenRecordset("tblUlazIzlaz", dbOpenDynaset)
Do While Not Rs3.EOF
rs4.AddNew
rs4![IdTransakcije] = tempIdT
rs4![Sifra] = Rs3![Sifra]
rs4![Ulaz] = 0
rs4![Izlaz] = Rs3![Stanje]
rs4![Status] = 1
rs4![DatumU] = Now
rs4.Update
Rs3.MoveNext
Loop
Rs3.Close
rs4.Close
Rs1.MoveNext
Loop
Rs1.Close
Rs2.Close
Kraj:
Set Db = Nothing
End Sub
Pozdrav