Syntax confusion

rbinder

rbinder
Local time
Tomorrow, 10:25
Joined
Aug 13, 2005
Messages
25
Greetings all,

I am trying to run the query below to tell me how much stock a company has available by deducting the amount dispatched from its allocation. I am getting an error message;

Run Time error '3061'
Too few parameters expect 2

The code is;

Dim db As DAO.Database, qr1 As DAO.QueryDefs
Dim rs1 As DAO.Recordset, rs2 As DAO.Recordset
Dim varVal0 As Variant, varVal1 As Variant, varVal2 As Variant
Dim strSQL As String
Set db = DBEngine(0)(0)

VarVal0 = Me.WINENUMBER

strSQL = "SELECT Sum(tbl_Data_DispatchLineitems.Amount) AS Amount "
strSQL = strSQL & "FROM tbl_data_DispatchDetails INNER JOIN tbl_Data_DispatchLineitems ON tbl_data_DispatchDetails.DispatchID = tbl_Data_DispatchLineitems.DispatchID "
strSQL = strSQL & "GROUP BY tbl_data_DispatchDetails.TradingName, tbl_Data_DispatchLineitems.WineNumber "
strSQL = strSQL & "HAVING ((tbl_data_DispatchDetails.TradingName)=[Forms]![frm_data_Orders]![TradingName]) AND (tbl_Data_DispatchLineitems.WineNumber = VarVal0)"

Set rs2 = db.OpenRecordset(strSQL)
rs2.Edit
varVal1 = rs2![Amount]
rs2.Close


I assume the error lies in the final line of the query code. Any help to find the error would be appreciated.

Thanks in advance.

~rbinder
 
After a cusory glance, this line:

strSQL = strSQL & "HAVING ((tbl_data_DispatchDetails.TradingName)=[Forms]![frm_data_Orders]![TradingName]) AND (tbl_Data_DispatchLineitems.WineNumber = VarVal0)"

Needs to be changed as follows:

strSQL = strSQL & "HAVING ((tbl_data_DispatchDetails.TradingName)=[Forms]![frm_data_Orders]![TradingName]) AND (tbl_Data_DispatchLineitems.WineNumber = " & VarVal0 & ")"

Also, if you add "& _" at the end of the line, you can continue the line down below. For example:

StrSQL = "First Line" & _
" Second Line" & _
"Third Line"
 

Users who are viewing this thread

Back
Top Bottom