I'm trying to open a recordset to loop through and apply payments. I'm getting the too few parameter error at the bold red line below. The query runs fine on its own. Thanks in advance.
Code:
Private Sub Command52_Click()
DoCmd.SetWarnings False
Dim strsql As String
Dim BD As Variant
Dim BL As Variant
Dim CR As Variant
Dim db As Variant
Dim tb As Variant
Dim P As Variant
Dim mbrid As Integer
Dim dp As Date
Dim cn As Variant
Dim dbs As Database
Dim rst As Recordset
Dim rssql As String
dp = DatePaid
mbrid = Me.MemberID
BD = Me.baldue
BL = Me.balleft
CR = Me.CRAmount
db = Me.DBAmount
tb = Me.totalbal
P = Me.payment
cn = Me.CheckNum
rssql = "SELECT [dbamount]-Nz([cramount],0) AS baldue, Accounts.DBAmount, Accounts.CRAmount, Accounts.AsmtType, Accounts.Details, Accounts.LotNumber, Accounts.EnteredBy, Accounts.DatePaid, Accounts.CheckNumber, Accounts.Note " & vbCrLf & _
"FROM Accounts " & vbCrLf & _
"WHERE (((Accounts.MemberID)=[Forms]![AccountsandPayments]![MemberID])) " & vbCrLf & _
"ORDER BY Accounts.DateAssessed;"
'Add to payments
strsql = "INSERT INTO AsmtPayments (PaymentAmount, MemberID, PaymentDate,checknum )"
strsql = strsql & " VALUES (" & P & ", " & mbrid & "," & cn & ", #" & dp & "#);"
CurrentDb.Execute strsql, dbFailOnError
DoCmd.SetWarnings True
Requery
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset(rssql, dbOpenDynaset)
etc...etc...