[ goranmoment @ 30.08.2011. 14:02 ] @
Ovaj kod stampa rekorde iz tabele [Sto1] gde im je polje [tura] vrednosti "5". To je ok! Problem je sto ce recordi biti odstampani samo ako su sortirani na pocetak tabele, odnosno Datasheet-a, ako je ispred zeljenog rekorda rekord sa vrednosti (Tura = "neki drugi broj") izbacuje obavestenje da >>Ovaj gost nema porudzbina!<<..

Da li iko moze pomoci????

------------------------------------------------------------------------------------------
Private Sub Command16_Click()
On Error GoTo ErrorHandler
Dim sFileText As Integer
Dim iFileNo As String
Dim rs As DAO.Recordset

Set db = CurrentDb
Set rs = db.OpenRecordset("Sto1", dbOpenTable)

If rs!Tura = 5 Then

iFileNo = FreeFile()

Open "C:\Com\Test.txt" For Output As #iFileNo

Print #iFileNo, "#FISKAL"

Do While Not rs.EOF
Print #iFileNo, rs!SifraArtikla & Chr(9) & rs!ImeArtikla & Chr(9) & rs!Mera & Chr(9) & rs!Prodato & Chr(9) & rs!Cena & Chr(9) & rs!Porez
rs.MoveNext
Loop

Print #iFileNo, "#PLACANJE"
Print #iFileNo, Forms!IzborPlacanja.Text22 & Chr(9) & Forms!Form1.Text237

Close #iFileNo


DoCmd.RunSQL " DELETE * FROM Sto1 WHERE ((Sto1!Tura)=2) And ((Sto1!Prodato)>0);"

DoCmd.Close
Else
MsgBox "Ovaj gost nema porudzbina!", vbOKOnly, "Obavestenje"
End If
Exit Sub
ErrorHandler:
If Err.Number = 3021 Then
MsgBox "Ovaj sto nema izdatih artikala!", vbOKOnly, "Obavestenje"
DoCmd.Close
End If
End Sub

------------------------------------------------------------------------------------------

Hvala na pomoci..

[ Zoran.Eremija @ 30.08.2011. 14:18 ] @
Okacite primer lakse i brze ce Vam se pomoci.
[ Zidar @ 30.08.2011. 14:41 ] @
Kod je potpuno ispravan. Poruku izabcuje jer je tako napisano:

Code:

If rs!Tura = 5 Then

'ovde ides kroz rekordset i FileOpen() i FileClose() i ostalo

Else
   MsgBox "Ovaj gost nema porudzbina!", vbOKOnly, "Obavestenje"
End If


U kodu jasno pise :'ako tura nije '5' napisi poruku "Ovaj gost nema porudzbina!". Access radi tacno ono sto mu kazes, sto nije uvek bas ono sto zelis. Mozda jetakav slucaj u pitanju?


[ goranmoment @ 30.08.2011. 15:30 ] @
Hvala na odgovoru ali sve mi ovo lici na jos jednu neprespavanu noc... Zar >>Do While Not rs.EOF<< & >>MoveNext<< nisu ti koji bi trebali da obezbede kretanje kroz otvorenu tabelu [Sto1] do zadnjeg rekorda... ?
[ Trtko @ 31.08.2011. 12:06 ] @
Pa i obezbedjuju, i krecu se kroz cijelu tabelu jel si tako rekao

Set rs = db.OpenRecordset("Sto1", dbOpenTable)

ali da si mu stavio ovako

Set rs = db.OpenRecordset("select * from Sto1 where tura=5")

onda bi ti prikazivao i odvojio sve podatke iz Sto1 gdje je tura jednaka 5

Pozdrav