Francisco Tapia
my.lists at verizon.net
Tue Mar 4 01:40:30 CST 2003
Think sprocs, David.... So your Function would be more along the lines of.. Public Function cbfAmtDue() as Currency Dim rst ADODB.Recordset Set rst = New ADODB.Recordset Currentproject.Connection.stp_AmountDue CustIDNo, InvNumber - 1, rst if rst.eof = true then cbfAmtDue = Null 'Or 0 else cbfAmtDue = rst!CurrentMth end if '--------END Now in a sproc on your SQL Server you'd add the following sproc... ---------- Create Procedure stp_AmountDue (@CustIDno as int, @InvNumber as Int) AS SELECT CurrentMth From tblCustStatement Where CustNoId = @CustNoId AND InvNumber = @InvNumber ---------END this is all OTOMH, so please check your syntax... -Francisco http://rcm.netfirms.com/ ----- Original Message ----- From: "David Emerson" <davide at dalyn.co.nz> To: <dba-SQLServer at databaseadvisors.com> Sent: Monday, March 03, 2003 8:14 PM Subject: [dba-SQLServer]Replacement for DLookup with 2 parameters : What I am looking for here is some confirmation I am doing the right thing. : : In A97 I had a simple statement to return a single value if the : corresponding record existed (this was in the Control Source of a field - : : =IIf(Not : IsNull([CustIDNo]),nz(DLookUp("Current","tblCustStatement","CustIDNo = " & : [CustIDNo] & " and StatementNumber = " & [InvNumber]-1),0)) : : Now in my ADP I am using the following (and setting the field control : source to '=cbfAmtDue()') - : : Public Function cbfAmtDue() As Currency : : Dim cnn As ADODB.Connection, rst As ADODB.Recordset : : Set cnn = CurrentProject.Connection : Set rst = New ADODB.Recordset : rst.Open "tblCustStatement", cnn, adOpenDynamic, adLockOptimistic : : cbfAmtDue = 0 : If Not IsNull([CustIDNo]) Then : rst.Filter = "CustIDNo = " & Me!CustIDNo & " and StatementNumber = : " & DLookup("InvNumber", "tblCustomers", "CustomerID = " & Me!txtCustID) - 1 : If rst.EOF <> True Then 'Statement record exists : cbfAmtDue = rst!CurrentMth : End If : End If : : rst.Close : Set rst = Nothing : cnn.Close : Set cnn = Nothing : : It seems a long way about it but is there any simpler way? : : : Regards : : David Emerson : DALYN Software Ltd : 25b Cunliffe St, Johnsonville : Wellington, New Zealand : Ph/Fax (877) 456-1205 : : _______________________________________________ : dba-SQLServer mailing list : dba-SQLServer at databaseadvisors.com : http://databaseadvisors.com/mailman/listinfo/dba-sqlserver : http://www.databaseadvisors.com :