Sto se mora mora :-)
da je prosto -nije, ali se moze uraditi.
Prvo, treba nekako da numerises rekorde koji ce se stampati, 1 do N.
Drugo, treba da iams tabelu tblBrojevi sa recimo 200 brojeva, od 1 do 200. U tabeli brojevi imas dve kolone (Broj, Desetica) i izgledace otprilike ovako:
tblBorojevi
Code:
Broj Desetica
1 1
2 1
....
10 1
11 2
12 2
13 2
....
20 2
21 3
22 3
....
Tvoj kveri koji daje rekorde za report izgledao bi nekako ovako:
qryReportNumerisani:
Code:
Broj Desetica Kolona1 Kolona2 Kolona3
1 1 'Zika' '12 Oct 2007' 1250.00
2 1 'Laza' '15 Oct 2007' 384.27
.....
.....
12 2 'Laza' '15 Oct 2007' 856.27
13 2 'Mika' '15 Oct 2007' 123.27
14 2 'Pera' '15 Oct 2007' 456.27
Sad napravis LEFT JOIN query:
qryFinal:
Code:
SELECT
T.Broj
, T.Desetica
, P.Kol1, R.Kol2,...,R.KolN
FROM tblBrojevi AS T
LEFT JOIN qryReportNumerisani AS R
ON R.Broj = T.Broj
WHERE T.Desetica = (SELECT MAX Desetica) FROM qryReportNumerisani)
Ovaj poslednji kveri, qryFinal, sa LEFT JOIN ce ti biti data source za report.
Kolona Broj dolazi iz tabele tblBrojevi i zbog LEFT JOIN sadrzace celokupnu deseticu.
Oni brojevi koji ne postoje u qryReportNumerisani imace NULL vrednosti za sve ostale kolone i pokazace se kao prazni redovi na reportu.
Ako broj redova na reportu nije 10 nego neki drugi broj, promeni vrednosti u tabeli tblBrojevi i podesi kveri qryReportNumerisani tako da se vrednost u koloni Desetica menja kako treba.
Ako ti treba pomoc za dobijanje vrednosti Broj i Desetica u kveriju qryReportNumerisani, nesto cemo vec da uradimo po tom pitanju.
Kao sto rekoh, nije lako i iam posla, ali izgleda lepo na kraju.
:-)