Nedostaje ti GROUP BY. Probaj ovo
Code:
Set Rs = db.OpenRecordset("SELECT ProdajaID, BarKod, Naziv, sum(kolicina) as kolicina1, sum(prodajnacena * kolicina) as iznos FROM tblProdajeDetalji WHERE tblProdajeDetalji.ProdajaID = " & Forms![frmProdaje_master].[ProdajaID]
& " GOUP BY ProdajaID, BarKod, Naziv " )
Zasto se mucis sa rekordsetima? Da bi odstampao racun ne treba ti OpenRecordset. Moze, ali je bespotrebno komplikovano. Treba ti izvestaj koji se zove rptRacun. Za rptRacun imas record source ovako:
Code:
SELECT ProdajaID, BarKod, Naziv, sum(kolicina) as kolicina1, sum(prodajnacena * kolicina) as iznos
FROM tblProdajeDetalji
GOUP BY ProdajaID, BarKod, Naziv
Nema WHERE. Onda ti treba da pozoves taj izvestaj, ovako:
Code:
DoCmd.OpenReport reportName:= "rptRacun" _
,WHereCondition:= "ProdajaID = " & Forms![frmProdaje_master].[ProdajaID] _
, view:= acNormal
WHERE je prebaceno iz definicije rekordseta u poziv izvestaja.
Kod sa DoCmd stavis na neki dogadjaj i gotovo. Ako nista, ustedeo si trcanje kroz recordset u nekoj petlji, rekord po rekord.
Ako racun izbacujes u neki text fajl, da ga posaljes fiskalnoj kasi, imas izdvojenu temu (TOP) o tome, tu ti mozda trebaju rekordseti, ne znam, to nisam radio.
