Laut dieser Seite
, Parametertyp adVariant
(z. B. 12) wird von ADO nicht unterstützt.
Sie sollten Konstanten verwenden, um Ihren Code besser lesbar zu machen, z.
Const adUseClient = 3
Const adOpenStatic = 3
Const adCmdText = 1
Const adCmdStoredProc = 4
Const adVarChar = 200
Const adNumeric = 131
Const adChar = 129
Const adBigInt = 20
Const adInteger = 3
Const adParamInput = 1
Const adParamOutput = 2
Const adParamInputOutput = 3
Const adParamReturnValue = 4
cmd.Parameters.Append cmd.CreateParameter("theAccountId", adVarChar, adParamInput, , Request.Form ("aid"))
cmd.Parameters.Append cmd.CreateParameter("theAwardId", adNumeric, adParamInput, , award_id)
cmd.Parameters.Append cmd.CreateParameter("theDueDate", adVarChar, adParamInput, 100, theDueDt)
cmd.Parameters.Append cmd.CreateParameter("theSubmittedDate", adVarChar, adParamInput, 100, theSubmittedDt)
cmd.Parameters.Append cmd.CreateParameter("theReportDescription", adVarChar, adParamInput, 100, theReportDesc)
cmd.Parameters.Append cmd.CreateParameter("theFormId", adVarChar, adParamInput, 100, theFrmId)
cmd.Parameters.Append cmd.CreateParameter("theReturnCode", adNumeric, adParamOutput)
Versuchen Sie es vielleicht mal mit diesem hier:
cmd.CommandType = adCmdText
cmd.CommandText = "{CALL deadlines_summary.PR_SUMMARY_IN(?,?,?,?,?,?,?)}"
Numerische Parameter erfordern keinen Größenwert.
Sie sollten auch versuchen, den Parametertyp adDate
zu verwenden anstatt die Daten in Zeichenfolgenwerte umzuwandeln.
Sie müssen die Anführungszeichen entfernen, wenn Sie den Bind-Parameter verwenden, d. h. verwenden Sie einfach theSubmittedDt = submitted_date
statt theSubmittedDt = "'" & submitted_date & "'"
.