ALTER PROCEDURE [dbo].[SaveSale] -- Add the parameters for the stored procedure here @userguid uniqueidentifier = '6F9619FF-8B86-D011-B42D-00C04FC964FF', @uidshipvia integer = 0, @emailaddress varchar(200) = '', @shipfirstname varchar(200) = '', @shiplastname varchar(200) = '', @shipaddr1 varchar(200) = '', @shipaddr2 varchar(200) = '', @shipcity varchar(200) = '', @shippostalcode varchar(200) = '', @shipcountry varchar(200) = '', @shipphone varchar(200) = '', @billfirstname varchar(200) = '', @billlastname varchar(200) = '', @billaddr1 varchar(200) = '', @billaddr2 varchar(200) = '', @billcity varchar(200) = '', @billpostalcode varchar(200) = '', @phoneday varchar(200) = '', @phoneevening varchar(200) = '', @phonefax varchar(200) = '', @txtcardno varchar(150) , @cid varchar(20) = '', @expiredate varchar(4) = '0199' , @uidclient int = 0, @DetailString VarChar(max), @uid Int = -1 output>Hmmmm ... and you're sure that it's *that* parameter causing the problem? What *is* the length of the encryptedcc string? How is the parameter defined in the Stored Proc?
>> Dim encryptedcc As String = oCrypto.Cipher(ccno) >> Dim command As SqlCommand = _ >> New SqlCommand("SaveSale", conn) >> command.CommandType = CommandType.StoredProcedure >> command.Parameters.AddWithValue("UserGuid", UserGuid) >> command.Parameters.AddWithValue("uidShipvia", idShipvia) >> command.Parameters.AddWithValue("emailaddress", Me.emailaddress) >> command.Parameters.AddWithValue("shipfirstname", Me.shipfirstname) >> command.Parameters.AddWithValue("shiplastname", Me.shiplastname) >> command.Parameters.AddWithValue("shipaddr1", Me.shipaddr1) >> command.Parameters.AddWithValue("shipaddr2", Me.shipaddr2) >> command.Parameters.AddWithValue("shipcity", Me.shipcity) >> command.Parameters.AddWithValue("shippostalcode", Me.shippostalcode) >> command.Parameters.AddWithValue("shipcountry", Me.shipcountry) >> command.Parameters.AddWithValue("shipphone", Me.shipphone) >> command.Parameters.AddWithValue("billfirstname", Me.billfirstname) >> command.Parameters.AddWithValue("billlastname", Me.billlastname) >> command.Parameters.AddWithValue("billaddr1", Me.billaddr1) >> command.Parameters.AddWithValue("billaddr2", Me.billaddr2) >> command.Parameters.AddWithValue("billcity", Me.billcity) >> command.Parameters.AddWithValue("billpostalcode", Me.billpostalcode) >> command.Parameters.AddWithValue("phoneday", Me.phoneday) >> command.Parameters.AddWithValue("phoneevening", Me.phoneevening) >> command.Parameters.AddWithValue("phonefax", Me.phonefax) >> command.Parameters.AddWithValue("txtcardno", encryptedcc) >> command.Parameters.AddWithValue("cid", ccv) >> command.Parameters.AddWithValue("expiredate", expdate) >> command.Parameters.AddWithValue("uidclient", Current.Application("CLIENTID").ToString) >> command.Parameters.AddWithValue("detailstring", DetailString) >> command.Parameters.AddWithValue("uid", 0) >> >>*** POW! Error occurs on the next line >> lOk = command.ExecuteNonQuery() >= 0 >> >> conn.Close() >> >>>>
>>>>Invalid length parameter passed to the SUBSTRING function>>>>
>>>>>>CipheredValue = Convert.ToBase64String(desdencrypt.TransformFinalBlock(buff, 0, buff.Length)) >>>>>>Return CipheredValue >>>>>>>>>>>>
>>>>>>Command.Parameters.AddWithValue()