Hej! Nu är det dags att lägga till en output-parameter till en av mina SP's.
Jag har lagt till en parameter, men jag har ett problem. När jag kör min SP så får jag felmeddelandet: "String[4]: egenskapen Size kan inte har storleken 0."
Hur ska jag veta vad som är string[4]?
Min SP:
ALTER PROCEDURE newinquiry
@companyID uniqueidentifier,
@responsibleuserID uniqueidentifier,
@printdate datetime,
@answerdate datetime,
@output varchar(70) output
AS
BEGIN
declare @notice int
set @notice = 1
declare @number int
SELECT @number = ISNULL(MAX(number), 0) FROM inquirydata WHERE companyID = @companyID
SET @number += 1
declare @inquiryID uniqueidentifier
SELECT @inquiryID = newid()
SET @output = @inquiryID
insert into inquirydata(ID,companyID,number,printdate,answerdate,responsibleID)Values(@inquiryID,@companyID,@number,@printdate,@answerdate,@responsibleuserID)
END
koden som anropar SP'n:
DateTime TenDaysLater = DateTime.Now.AddDays(10);
SqlConnection conn = new SqlConnection("Data Source=.\\SQLExpress;Integrated Security=true; AttachDbFilename=|DataDirectory|\\databas.mdf;User Instance=true;");
SqlCommand cmd = new SqlCommand("newinquiry", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@companyID", currentUser.CompanyID));
cmd.Parameters.Add(new SqlParameter("@responsibleuserID", currentUser.ID));
cmd.Parameters.Add(new SqlParameter("@printdate", DateTime.Now.ToShortDateString()));
cmd.Parameters.Add(new SqlParameter("@answerdate", TenDaysLater.ToShortDateString()));
SqlParameter retvalue = cmd.Parameters.Add("@output", SqlDbType.VarChar);
retvalue.Direction = ParameterDirection.Output;
conn.Open();
cmd.ExecuteReader();
string inqid = retvalue.Value.ToString();
conn.Close();
så vad är det som försöker ge något en storlek på 0?
Mvh Sanji