Prikazi cijelu temu 26.05.2015 16:05
kenan Van mreze
Clan
Registrovan od:10.02.2011
Lokacija:sarajevo


Predmet:Re: Petlja problem
HVALA
ovo radi perfektno ono što sam zamislio, e sad i ide novo komplikovanje
moja finalna zamisio oko ove funkcije je da operater sam izabira polja koja će mu ići u šemu tj. da sa njima sam upravlja, uglavnom spaja određena polja ili čak da sam formuliše IIF funkciju koja će se odraditi u kodu. E sad ja sam se tu malo igrao i ranije i imao fiksne šeme u kojima operater buklalno nije mogao ništa uvjek je morao tražiti izmjenu i onda se svi zajedno pogubimo u u uslovima.
ovo bi trebala biti procedura koja bi to sve objedinjavala i davala slobodu operateru da se igra sa podatcima ili ćak sebi komplikuje na prikazima

na prvi recorsdet netreba obraćati pažnju on je nebitan ali neka komplet kod
opet je isti bitan SDUpis i sve se vrti oko njega

ovaj kod nekom može biti od koristi i radi

If zxzBox("Da li želite prebaciti podatke u finansisko knjigovodstvo prema zadanim modelima knjiženja?", vbYesNo, "eFinPos") = vbYes Then
'provjera ima li sta za prenos
Dim sql As String
uslov = "PrebFin = 0"
sql = "SELECT * " & _
"FROM OPIzvorSredstava WHERE " & uslov & " ;"
Set rbizv = CurrentDb().OpenRecordset(sql)
If rbizv.RecordCount = 0 Then
zxzBox "Neme ništa za PRENOS." & vbCrLf & "Svi dokumenti su več prebačeni!", vbInformation, "eFinPro"
rbizv.Close
Else
ng = "SELECT OpIzvorSredstava.IDVrstaNaloga, AKTIV.IDOrgJed, OpIzvorSredstava.IDFirma, OpIzvorSredstava.IDPeriod, [BrNalogaZadnji]+1 AS BrNaloga, Now() AS datum, 0 AS Prok, Last([IDNalog]+1) AS nalog " & _
"FROM FinGKG INNER JOIN ((AKTIV INNER JOIN OpIzvorSredstava ON AKTIV.firma = OpIzvorSredstava.IDFirma) INNER JOIN ZFVrstaNaloga ON OpIzvorSredstava.IDVrstaNaloga = ZFVrstaNaloga.IDVrNaloga) ON FinGKG.IDFirma = AKTIV.firma " & _
"GROUP BY OpIzvorSredstava.IDVrstaNaloga, AKTIV.IDOrgJed, OpIzvorSredstava.IDFirma, OpIzvorSredstava.IDPeriod, [BrNalogaZadnji]+1, Now(), 0;"
Set ngu = CurrentDb().OpenRecordset(ng)
Set NGUpis = CurrentDb().OpenRecordset("FinGKG")
With NGUpis
.AddNew
!IDNalog = ngu!nalog
!IDVrstaNaloga = ngu!IDVrstaNaloga
!IDOrg = ngu!IDOrgJed
!IDFirma = ngu!IDFirma
!IDPeriod = ngu!IDPeriod
!BrNaloga = ngu!BrNaloga
!Datum = ngu!Datum
DoCmd.RunSQL "UPDATE ZFVrstaNaloga SET ZFVrstaNaloga.BrNalogaZadnji = " & ngu!BrNaloga & " WHERE ZFVrstaNaloga.IDFirma=" & ngu!IDFirma & " AND ZFVrstaNaloga.IDVrNaloga=" & ngu!IDVrstaNaloga & " AND ZFVrstaNaloga.IDPeriod=" & ngu!IDPeriod & ";"
.Update
.Close
End With
'KOLIKO CE REDOVA BITI UPISANO PRILIKOM KNJIZENJA
RBC = "SELECT Count(ZFSemaD.ID) AS BROJ FROM OpIzvorSredstava INNER JOIN ZFSemaD ON OpIzvorSredstava.sema = ZFSemaD.IDSema;"
Set RbCount = CurrentDb().OpenRecordset(RBC)
'Nazive polja treba ovdje uzimati i upisiviti u SD
'ZAMJENA POLJA U QUERIJU
Polja = "SELECT ZFSemaD.ID, ZFSemaD.IDKonto, OpIzvorSredstava.IDVrstaNaloga, OpIzvorSredstava.IDIzvoraSredstava, ZFSemaD.Polje FROM OpIzvorSredstava INNER JOIN ZFSemaD ON OpIzvorSredstava.sema = ZFSemaD.IDSema GROUP BY ZFSemaD.ID, ZFSemaD.IDKonto, OpIzvorSredstava.IDVrstaNaloga, OpIzvorSredstava.IDIzvoraSredstava, ZFSemaD.Polje;"
Set PUPIS = CurrentDb().OpenRecordset(Polja)
'SD1 JE DIO CODA KOJI CE SE KORISTITI U PETLJI UPISA I VEZE SE SA SD MA POCETKU
sd = "SELECT OpIzvorSredstava.IDOrgJedIzvor, ZFSemaD.IDKonto, OpIzvorSredstava.IDValuta, OpIzvorSredstava.kurs, IIf([ZFSemaD]![PrenosSubAnal]=True,[OpIzvorSredstava]![IDkom]) AS Komit, OpIzvorSredstava.Datum, IIf([ZFSemaD]![DP]='D'," & PUPIS!Polja & ",0) AS Dug, IIf([ZFSemaD]![DP]='P'," & PUPIS!Polja & ",0) AS Pot, OpIzvorSredstava.Opis, OpIzvorSredstava.IDIzvoraSredstava "
sd1 = "FROM OpIzvorSredstava INNER JOIN ZFSemaD ON OpIzvorSredstava.sema = ZFSemaD.IDSema "
sd1 = sd1 & "GROUP BY OpIzvorSredstava.IDOrgJedIzvor, ZFSemaD.IDKonto, OpIzvorSredstava.IDValuta, OpIzvorSredstava.kurs, IIf([ZFSemaD]![PrenosSubAnal]=True,[OpIzvorSredstava]![IDkom]), OpIzvorSredstava.Datum, IIf([ZFSemaD]![DP]='D'," & PUPIS!Polja & ",0), IIf([ZFSemaD]![DP]='P'," & PUPIS!Polja & ",0), OpIzvorSredstava.Opis, OpIzvorSredstava.IDIzvoraSredstava;"
sd = sd & sd1
i = 0
Set SDUpis = CurrentDb().OpenRecordset(sd)
Set rs = CurrentDb().OpenRecordset("FINGKS", dbOpenDynaset, dbSeeChanges)
With rs
SDUpis.MoveFirst
Do While Not SDUpis.EOF
.AddNew
i = i + 1
Forms!f!T = SDUpis
!Knjizenje = i
!IDNalog = ngu!nalog
!IDVrstaNaloga = ngu!IDVrstaNaloga
!IDOrg = SDUpis!IDOrgJedIzvor
!IDKonto = SDUpis!IDKonto
!IDValuta = SDUpis!IDValuta
!IDKom = SDUpis!KOMit
!IDFirma = ngu!IDFirma
!Datum = SDUpis!Datum
!IDPeriod = ngu!IDPeriod
!Dug = SDUpis!Dug
!Pot = SDUpis!Pot
.Update
SDUpis.MoveNext
Loop
End With
End If
End If