Predmet:Re: Kumulativni zbir u Access 2007
@Gjoreski ti je dobro rekao polje saldo ti netreba jer to polje je rezultat polja duguje i potrazuje i to mozes rijesiti sa sql-om kao i minus odnosno negativno u polju potrazuje.
Dovoljno je samo u sql-u polje potrazuje pomnoziti sa -1 ali u ovom slucaju ni to netreba.
Evo rjesenje sa SQL-om
Samo ovaj SQL kopiraj u neki Query.
Ovo ti moze stojati i u bazi
PreuzmiIzvorni kôd (SQL):SELECT T.ID, T.Datum, nz([duguje],0)-nz([Potrazuje],0) AS SaldoQ, (SELECT SUM( nz(Bingo.duguje,0) -nz(Bingo.potrazuje,0)) AS Saldo
FROM Bingo
WHERE Bingo.ID<=T.ID) AS Total
FROM Bingo AS T;
Ako ti ovo bude sporo radilo onda ces morati raditi sve na strani Vb6 jer ima kod.
Znaci ne u bazi i morat ces prepraviti db konekciju odnosno setovanje u ovom kodu.
SQL:
PreuzmiIzvorni kôd (SQL):SELECT Bingo.ID, Bingo.Datum, nz([Potrazuje],0) AS PotrazujeQ, nz([duguje],0) AS DugujeQ, Format([dugujeq]-[potrazujeq],"0.00") AS SaldoQ, TotalX([ID]) AS Kumulativno
FROM Bingo;
a ovaj kod ide u neki modul:
PreuzmiIzvorni kôd (Visual Basic):Function TotalX(ID As Long)
Dim Db As Database
Dim Rs As Recordset
Dim SQl As String
Dim Nalog As Integer
On Error Resume Next
Set Db = CurrentDb
SQl = "SELECT Sum(SaldoQ) AS T " _
& "FROM Q_Kumulativno " _
& "WHERE ID<=" & ID
'identifikaciono polje ID
Set Rs = Db.OpenRecordset(SQl)
TotalX = Format(Rs!T, "0.00")
Rs.Close
End Function
Ako budes moraom raditi na ovaj drugi nacin najvjerovatnije ces morati opet doci po pomoc ali tada postavi pitanje u vb6.
Mozes ovo sve staviti i u tvoju bazu i ono ce raditi na racunarima gdje ima access ali ako ga nema nece.
Zato bi sve trebalo da ide u vb6.
Baza je onda samo baza.
Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.