asp_databases thread: Formal parameter was defined as OUTPUT but the actual parameter not declared OUTPUT
Hi,
I'm trying to call a StoredProcedure within ASP, but I'm getting a
stange error. I've written dozens of similar Stored Procedures, but none
with as many parameters as this one. I tested this stored procedure in
SQL 7 and it works fine, but when I attempt to call it from ASP code it
gives me an error. When I remove ANY 4 parameters (i.e. @Description,
@CallResolution, @CallReq, @Verified) leaving only 20 parameters including
the "output" parameter, it works just fine. Also, if I remove just the
@verified parameter then it will give the same error to the prior
parameter @CallReq.
Is there a maximum number of parameters you are allowed to use when making
a call to a StoredProcedure from ASP?
-----------------------------------
ASP ERROR MESSAGE
-----------------------------------
Error Number = -2147217900
Native Error = 8162
SQLState = 37000
Error Source = Microsoft OLE DB Provider for ODBC Drivers
Description = [Microsoft][ODBC SQL Server Driver][SQL Server]Formal
parameter '@v...' was defined as OUTPUT but the actual parameter not
declared OUTPUT.
-----------------------------------
ASP CODE
-----------------------------------
Dim CustIdx
Dim AssignedTo
.............. 'I DECLARED ALL VARIABLES AS DIM
Dim CallReq
Dim Verified
Dim TrackingNum
............ 'Blah Blah code
objConn.Open strConn
with objCmdSave
.CommandText = "spNewTechSupport"
.CommandType = adCmdStoredProc
.ActiveConnection = objConn
.Parameters.Append .CreateParameter("RETURN_VALUE", adInteger,
adParamReturnValue)
.Parameters.Append .CreateParameter("@CustIdx", adVarChar, adParamInput,
10, strCustIdx)
.Parameters.Append .CreateParameter("@AssignedTo", adVarChar,
adParamInput, 10, strAssignedTo)
.Parameters.Append .CreateParameter("@DeptAssigned", adVarChar,
adParamInput, 10, strDeptAssigned)
.Parameters.Append .CreateParameter("@OriginID", adVarChar,
adParamInput, 10, strOriginID)
.Parameters.Append .CreateParameter("@UserId", adVarChar, adParamInput,
10, strUserId)
.Parameters.Append .CreateParameter("@StepNotes", adVarChar,
adParamInput, 2000, strNotes)
.Parameters.Append .CreateParameter("@AcctUserID", adVarChar,
adParamInput, 30, strAcctUserID)
.Parameters.Append .CreateParameter("@AcctUserPin", adVarChar,
adParamInput, 30, strAcctUserPin)
.Parameters.Append .CreateParameter("@FName", adVarChar, adParamInput,
30, strFName)
.Parameters.Append .CreateParameter("@LName", adVarChar, adParamInput,
30, strLName)
.Parameters.Append .CreateParameter("@ProductID", adVarChar,
adParamInput, 10, strProductID)
.Parameters.Append .CreateParameter("@CaseTypeID", adVarChar,
adParamInput, 10, strCaseTypeID)
.Parameters.Append .CreateParameter("@CallMinutes", adVarChar,
adParamInput, 10, strCallMinutes)
.Parameters.Append .CreateParameter("@NumberOfTrades", adVarChar,
adParamInput, 10, strNumberOfTrades)
.Parameters.Append .CreateParameter("@TradesTaken", adVarChar,
adParamInput, 1, strTradesTaken)
.Parameters.Append .CreateParameter("@TradesExecuted", adVarChar,
adParamInput, 1, strTradesExecuted)
.Parameters.Append .CreateParameter("@ForwardedToSitel", adVarChar,
adParamInput, 1, strForwardedToSitel)
.Parameters.Append .CreateParameter("@SitelRep", adVarChar,
adParamInput, 30, strSitelRep)
.Parameters.Append .CreateParameter("@DeptID", adVarChar, adParamInput,
10, strDeptID)
.Parameters.Append .CreateParameter("@Description", adVarChar,
adParamInput, 500, strDescription)
.Parameters.Append .CreateParameter("@CallResolution", adVarChar,
adParamInput, 500, strCallResolution)
.Parameters.Append .CreateParameter("@CallReq", adVarChar, adParamInput,
1, strCallReq)
.Parameters.Append .CreateParameter("@Verified", adVarChar,
adParamInput, 1, strVerified)
.Parameters.Append .CreateParameter("@TrackingNum", adVarChar,
adParamOutput, 10)
.Execute,,adExecuteNoRecords 'THIS IS WHERE THE ERROR OCCURS
end with
--------------------------------------------
-------------------------------------------
SQL STORED PROCEDURE
-------------------------------------------
CREATE PROCEDURE spNewTechSupport
@CustIdx varchar(10) = NULL,
@AssignedTo varchar(10) = NULL,
@DeptAssigned varchar(10) = NULL,
@OriginId varchar(10) = NULL,
@UserId varchar(10) = NULL,
@StepNotes varchar (2000) = NULL,
@acctuserid varchar (30) = NULL ,
@acctuserpin varchar (30) = NULL ,
@fname varchar (30) = NULL ,
@lname varchar (30) = NULL ,
@productid varchar (10) = NULL ,
@casetypeid varchar (10) = NULL ,
@callminutes varchar (10) = NULL ,
@numberoftrades varchar (10) = NULL ,
@tradestaken varchar (1) = NULL ,
@tradesexecuted varchar (1) = NULL ,
@forwardedtositel varchar (1) = NULL ,
@sitelrep varchar (30) = NULL ,
@deptid varchar (10) = NULL ,
@description varchar (500) = NULL ,
@callresolution varchar (500) = NULL ,
@callreq varchar (1) = NULL ,
@verified varchar (1) = NULL ,
@trackingnum varchar (10) output
AS
.........An insert statement and Select statement 'MAKING AN
INSERT & SELECT CALL
COMMIT TRAN
RETURN
GO
---------------------------------------------
Thanks,
Edward.