Centar za edukaciju-BiH



#31 17.07.2013 10:38
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Re: Spajanje arhiviranih baza
U prvoj godini trebaju mi sve Å¡ifre,
u slijedećoj sve Å¡ifre kojima je IDdokumenta <>1, ali i oni kojima je IDdokumenta = 1 ali ali ih nije bilo na spisku u predhodnoj godini

Uf, zabolila me glava
Pozdrav
Ovaj post je ureden 3 puta. Posljednja izmjena 17.07.2013 11:11 od strane pmiroslav. ↑  ↓

#32 17.07.2013 12:23
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Spajanje arhiviranih baza
Pa cekaj to nam je lakse rijesiti Queryem poslije a prenijeti sve podatke.
Poslije napravis Query i igras se do mile volje.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#33 17.07.2013 12:29
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Spajanje arhiviranih baza
Moram dodati jos nesto a to je da mozda nisi naj sjajnije rijesio prenos i otvaranje nove godine.
Naime ako hoces prenijeti u novu godinu onda prvo u staroj napravis prenos kao izlaz robe te u novoj donos kao ulaz robe i poc. stanje.
U tom sluvaju ce ti stanje biti uredu a ovako cini mi se da stanje izmedju godina nije matematicki uredu ali eto.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#34 17.07.2013 12:48
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Re: Spajanje arhiviranih baza
Eto vidiÅ¡, to sa zatvaranjem godine nije loÅ¡a ideja. Ja nisam knjigovođa pa možda stvarno to nisam dobro rijeÅ¡io.
Znači po tome bi, prije arhivirana jedne godine, stanje svake kartice trebalo svesti na nulu?
Pozdrav
Ovaj post je ureden 1 puta. Posljednja izmjena 17.07.2013 12:50 od strane pmiroslav. ↑  ↓

#35 17.07.2013 17:08
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Spajanje arhiviranih baza
Da a i ovo drugo bi jqa rjesavao poslije Queryem lakse je.
Znaci prebacis sve podatke a u Query-u pravis uslov sta ti treba.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#36 18.07.2013 11:19
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Re: Spajanje arhiviranih baza
Vezano uz tvoju sugestiju o zatvaranju godine pokušavam napisati proceduru koja bi mi iz Q_Stanje prepisala podatke u tblUlazIzlaz.
Jedan dio sam napravio ali sam tu zapeo.
U tablicu 'tblVrstaTransakcije' dodao sam 'Završna inventura.
Napravio sam kod koji ću popuniti podatke u tblTransakcije za novu transakciju 'ZavrÅ¡na inventura' za svako skladiÅ¡te koje se pojavi u 'Q_Stanje'
Taj dio am napravio i to radi:
PreuzmiIzvorni kôd (vbnet):
  1. Private Sub CmdTransakcije_Click()
  2. Dim db As Database
  3. Dim rs1 As Recordset
  4. Dim rs2 As Recordset
  5. Dim rs3 As Recordset
  6. Dim rs4 As Recordset
  7.  
  8. Set db = CurrentDb()
  9. Set rs1 = db.OpenRecordset("SELECT Skladiste FROM Q_Stanje GROUP BY Skladiste", dbOpenDynaset)
  10. Set rs2 = db.OpenRecordset("tblTransakcije", dbOpenDynaset)
  11. Set rs3 = db.OpenRecordset("Q_Stanje", dbOpenDynaset)
  12. Set rs4 = db.OpenRecordset("tblUlazIzlaz", dbOpenDynaset)
  13.  
  14. Do While Not rs1.EOF
  15.     rs2.AddNew
  16.     rs2!Datum = Now()
  17.     rs2!Skladiste = rs1!Skladiste
  18.     rs2!IDdokumenta = 16
  19.     rs2!BrDokumenta = "n/a"
  20.     rs2!PartnerID = DLookup("PartnerID", "tblPartneri", "Firma ='" & "SkladiÅ¡te " & rs1!Skladiste & "'")
  21.     rs2!Radninalog = "n/a"
  22.     rs2!OperID = "Operater"
  23.     rs2!StatusTR = 2
  24. rs2.Update
  25.  
  26. rs1.MoveNext
  27. Loop
  28. rs1.Close
  29. rs2.Close
  30.    
  31. Kraj:
  32.     Set db = Nothing
  33.    
  34.     DoCmd.OpenTable "tblTransakcije", acViewNormal, acEdit
  35.  
  36. End Sub

Zapeo sam na upisu u tblUlazIzlaz, tu mi treba da se podaci o stanju za svako skladiše pridruže uz IDtransakcije iz predhodnog koda.
Kod za upis u tblUlazIzlaz bi trebao biti ovako nekako:
PreuzmiIzvorni kôd (vbnet):
  1. Dim db As Database
  2. Dim rs3 As Recordset
  3. Dim rs4 As Recordset
  4.  
  5. Set Baza = CurrentDb()
  6. Set rs3 = db.OpenRecordset("Q_Stanje", dbOpenDynaset)
  7. Set rs4 = db.OpenRecordset("tblUlazIzlaz", dbOpenDynaset)
  8.  
  9.    Do While Not rs3.EOF
  10.                  rs4.AddNew
  11.                
  12.                  rs4![IDtransakcije] = "IDtransakcije iz tblTransakcija
  13.                  rs4![Sifra] = rs3![Sifra]
  14.                  rs4![Ulaz] = 0
  15.                  rs4![Izlaz] = rs3![Stanje]
  16.                  rs4![Status] = 1
  17.                  rs4![DatumU] = Date
  18.                    
  19.                  rs4.Update
  20.                  rs4.MoveNext
  21.         Loop
  22. rs3.Close
  23. rs4.Close
  24.    
  25. Kraj:
  26.     Set Baza = Nothing


Prilozi:
Informacije o tipu datoteke za:rar  Prodaja_2011_be.rar
Preuzimanja:228
Velicina datoteke:158.81 KB


Pozdrav
↑  ↓

#37 18.07.2013 13:34
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Spajanje arhiviranih baza
PreuzmiIzvorni kôd (Visual Basic):
  1. Function Transakcije()
  2. Dim Db As Database
  3. Dim Rs1 As Recordset, Rs2 As Recordset, Rs3 As Recordset
  4. Dim IdTransakcije As Integer
  5. Dim SQL1 As String, SQL2 As String, Skladiste As String
  6.  
  7.  
  8. SQL1 = "SELECT * FROM tblTransakcije WHERE False<>false"
  9. SQL2 = "SELECT * FROM tblUlazIzlaz WHERE False<>false"
  10. Set Db = CurrentDb()
  11. Set Rs1 = Db.OpenRecordset("Q_Stanje")
  12. Set Rs2 = Db.OpenRecordset(SQL1)
  13. Set Rs3 = Db.OpenRecordset(SQL2)
  14.  
  15. Do While Not Rs1.EOF
  16.  
  17. If Skladiste <> Rs1!Skladiste Then
  18. Skladiste = Rs1!Skladiste
  19. Rs2.AddNew
  20. Rs2!Datum = Now()
  21. Rs2!Skladiste = Rs1!Skladiste
  22. Rs2!IDdokumenta = 16
  23. Rs2!BrDokumenta = "n/a"
  24. Rs2!PartnerID = DLookup("PartnerID", "tblPartneri", "Firma ='" & "Skladište " & Rs1!Skladiste & "'")
  25. Rs2!Radninalog = "n/a"
  26. Rs2!OperID = "Operater"
  27. Rs2!StatusTR = 2
  28. IdTransakcije = Rs2!IdTransakcije
  29. Rs2.Update
  30. End If
  31. Rs3.AddNew
  32. Rs3![IdTransakcije] = IdTransakcije
  33. Rs3![Sifra] = Rs1![Sifra]
  34. Rs3![Ulaz] = 0
  35. Rs3![Izlaz] = Rs1![Stanje]
  36. Rs3![Status] = 1
  37. Rs3![DatumU] = Date
  38. Rs3.Update
  39. Rs1.MoveNext
  40. Loop
  41. Rs1.Close
  42. Rs2.Close
  43. Rs3.Close
  44. Set Db = Nothing
  45. End Function

Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#38 18.07.2013 14:19
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


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):
  1. Private Sub CmdTransakcije_Click()
  2. Dim Db As Database
  3. Dim Rs1 As Recordset
  4. Dim Rs2 As Recordset
  5. Dim Rs3 As Recordset
  6. Dim rs4 As Recordset
  7. Dim tempIdT As Integer
  8. Dim tempSkl As String
  9.  
  10. Set Db = CurrentDb()
  11. Set Rs1 = Db.OpenRecordset("SELECT Skladiste FROM Q_Stanje GROUP BY Skladiste", dbOpenDynaset)
  12. Set Rs2 = Db.OpenRecordset("tblTransakcije", dbOpenDynaset)
  13.  
  14. Do While Not Rs1.EOF
  15.     Rs2.AddNew
  16.     Rs2!Datum = Date
  17.     Rs2!Skladiste = Rs1!Skladiste
  18.     Rs2!IDdokumenta = 16
  19.     Rs2!BrDokumenta = "n/a"
  20.     Rs2!PartnerID = DLookup("PartnerID", "tblPartneri", "Firma ='" & "SkladiÅ¡te " & Rs1!Skladiste & "'")
  21.     Rs2!Radninalog = "n/a"
  22.     Rs2!OperID = "Operater"
  23.     Rs2!StatusTR = 2
  24.     Rs2.Update
  25.     Rs2.MoveLast
  26. tempIdT = Rs2!IdTransakcije
  27. Set Rs3 = Db.OpenRecordset("SELECT * FROM Q_Stanje WHERE Skladiste = '" & Rs1!Skladiste & "'", dbOpenDynaset)
  28. Set rs4 = Db.OpenRecordset("tblUlazIzlaz", dbOpenDynaset)
  29.  
  30. Do While Not Rs3.EOF
  31.    
  32.     rs4.AddNew
  33.     rs4![IdTransakcije] = tempIdT
  34.     rs4![Sifra] = Rs3![Sifra]
  35.     rs4![Ulaz] = 0
  36.     rs4![Izlaz] = Rs3![Stanje]
  37.     rs4![Status] = 1
  38.     rs4![DatumU] = Now
  39.     rs4.Update
  40.     Rs3.MoveNext
  41.     Loop
  42.     Rs3.Close
  43.     rs4.Close
  44.     Rs1.MoveNext
  45.     Loop
  46.     Rs1.Close
  47.     Rs2.Close
  48.    
  49. Kraj:
  50.     Set Db = Nothing
  51.    
  52. End Sub

Pozdrav
↑  ↓

#39 18.07.2013 14:24
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,612


Predmet:Re: Spajanje arhiviranih baza
Nije ti to do koda ne go na stanju u Q_stanje stavi razlicito od nule i onda nece prenositi prazne.
Podrška samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#40 18.07.2013 14:51
pmiroslav Van mreze
Clan
Registrovan od:02.02.2009
Postovi:1,458


Predmet:Re: Spajanje arhiviranih baza
Tako je! Zahvaljujem još jednom.
Pozdrav
↑  ↓

Stranice (9):1,2,3,4,5,6,7,8,9


Sva vremena su GMT +02:00. Trenutno vrijeme: 5: 09 pm.