[ darkog @ 29.10.2006. 15:21 ] @
Napravio sam dve f-je. Jedna prima 2 parametra (kolicina,cena), a druga 1 parametar (proizvodID). Cilj je da se cena proizvoda izracunava na osnovu kolicine i cene potrosnog materija koji se koristi pri izradi istog. Prva f-ja CalcVrednost je OK isprobao sam je u Immediate prozoru. Problem je ova druga, kada hocu da je probam u Immediate prozoru pojavi se greska: "Too Few Parameters Expected 2" ... Funkciju CenaGP(cena gotovog proizvoda) postavim na After_Update obrasca Normativ koji se popunjava kolicinom i cenom repro materijala i vrednoscu ProizvodID (za koji proizvod se radi normativ). Code: Public Function CalcVrednost(intKolicina As Integer, curCena As Currency) As Currency Dim curvrednost As Currency CalcVrednost = 0 curvrednost = intKolicina * curCena CalcVrednost = curvrednost End Function Code: Public Function CenaGP(ProizvodID As Long) As Currency Dim dbs As Database Dim objStavkeNormativa As New ADODB.Recordset Dim SQLstmt As String Set dbs = CurrentDb CenaGP = 0 SQLstmt = "SELECT proizvodID,Sum(CalcVrednost(NZ(intKolicina,0),NZ(curCena,0))) " & _ " AS CenaProizvoda FROM tblReproMaterijal INNER JOIN tblNormativ ON tblReproMaterijal.RMID = tblNormativ.RMID " & _ "GROUP BY tblNormativ.ProizvodID HAVING (tblNormativ.ProizvodID) = " & ProizvodID Set objStavkeNormativa = dbs.OpenRecordset(SQLstmt) ' objStavkeNormativa.Open SQLstmt, CurrentProject.Connection, adOpenDynamic, adLockOptimistic (ako umesto gornjeg reda izvrsim ovaj, opet javi gresku: no value given for one or more required parameters) If Not objStavkeNormativa.EOF Then CenaGP = Nz(objStavkeNormativa!CenaProizvoda, 0) End If objStavkeNormativa.Close Set objStavkeNormativa = Nothing End Function Verovatno gresim u prosledjivanju parametara funkciji "CenaGP" jer SQL radi. |