Dear experts
I am not getting my error please help me out
I have stored procedure having out parameter like this
@pa_error varchar(800) output
and from fromt end i am calling like this
cmd.Parameters.Add("@pa_error", SqlDbType.NVarChar, 100).Direction = ParameterDirection.Output
still it is giving error too many arguments specified
Loading

Mayur GujrathiPosted Apr 28, 2011, 3:26 AM
i had write twice
cmd.Parameters.AddWithValue("@pa_boname", "")
sorry once again your
omkar mhaiskarPosted Apr 28, 2011, 1:56 AM
your problem is getting solved or not?
Thanks And Regards
Omkar
Mayur GujrathiPosted Apr 27, 2011, 10:06 AM
sorry ankit
i was doing wrong
i had write twice
cmd.Parameters.AddWithValue("@pa_boname", "")
sorry once again your valuable time wasted
Mayur GujrathiPosted Apr 27, 2011, 8:36 AM
now it is giving error size is not mentioned then i changed to 800 from 0 then again it gives too many arguments
omkar mhaiskarPosted Apr 27, 2011, 8:25 AM
this is already present in your stored procedure.
DO same process as like i write.
@pa_error varchar(800) output
so just you need to do in your code behind file. or like this is in your codebehind file.
this is in your codebehind,
cmd.Parameters.Add("@pa_error", SqlDbType.VarChar,0,"Return");
cmd.Parameters("@pa_error").Direction = ParameterDirection.Output
check with following and let me know.
Thanks And Regards
Omkar.
Mayur GujrathiPosted Apr 27, 2011, 8:09 AM
what to do? is there any other way
omkar mhaiskarPosted Apr 27, 2011, 8:00 AM
do as like this.
this is in your codebehind,
_command.Parameters.Add("@Return", SqlDbType.BigInt, 0, "Return");
_command.Parameters["@Return"].Direction = ParameterDirection.Output;
in the stored procedure add this.
@Return int = null Output
Thanks and Regards
Omkar
Mayur GujrathiPosted Apr 27, 2011, 7:58 AM
my action is
if @pa_action ='SEARCHMAK'
begin
select * from Dis_req_Dtls_MAK
where deleted_ind IN (0,4,6)
AND CREATED_BY = @PA_LOGIN_NAME
end
at the end of stored procedure
omkar mhaiskarPosted Apr 27, 2011, 7:53 AM
Mayur GujrathiPosted Apr 27, 2011, 7:51 AM
Mayur GujrathiPosted Apr 27, 2011, 7:49 AM
cmd.Parameters.Add("@pa_error", SqlDbType.VarChar, 800).Direction = ParameterDirection.Output
cmd.Parameters("@pa_error").Direction = ParameterDirection.Output
but still same error
Ankit NandekarPosted Apr 27, 2011, 7:48 AM
Ankit NandekarPosted Apr 27, 2011, 7:48 AM
Mayur GujrathiPosted Apr 27, 2011, 7:46 AM
omkar mhaiskarPosted Apr 27, 2011, 7:44 AM
as per your last reply variable is nvarchar in stored procedure. so set length =4000
because NVarChar's maximum size is 4000 characters.
cmd.Parameters.size=4000
Thanks and Regards
Omkar.
Mayur GujrathiPosted Apr 27, 2011, 7:42 AM
, @pa_action varchar(50)
, @pa_req_slip_no varchar(100)
, @pa_req_date datetime
, @pa_boid varchar(16)
, @pa_boname varchar(150)
, @pa_sholder varchar(150)
, @pa_tholder varchar(150)
, @pa_login_name varchar(100)
, @pa_chk_yn smallint
, @pa_rmks varchar(200)
, @pa_error varchar(800) output
)
as
begin
if @pa_chk_yn = 0
begin
if @pa_action ='INS'
begin
insert into Dis_req_Dtls
select @pa_req_slip_no
,@pa_req_date
, @pa_boid
, @pa_boname
, @pa_sholder
, @pa_tholder
, getdate()
, @pa_login_name
, getdate()
, @pa_login_name
,1
,NULL
,@pa_rmks
end
if @pa_action ='EDT'
begin
update Dis_req_Dtls
set req_slip_no=@pa_req_slip_no
,req_date=@pa_req_date
,Boid=@pa_boid
,Boname=@pa_boname
,sholder=@pa_sholder
,tholder = @pa_tholder
,remarks = @pa_rmks
,lst_upd_dt = getdate()
,lst_upd_by =@pa_login_name
where id = @pa_id
and deleted_ind = 1
end
if @pa_action ='DEL'
begin
update Dis_req_Dtls
set deleted_ind = 0
,lst_upd_dt = getdate()
,lst_upd_by =@pa_login_name
where id = @pa_id
and deleted_ind = 1
end
if @pa_action ='VALIDATESELECT'
begin
select SLIIM_DPAM_ACCT_NO
, dpam_sba_no , isnull(DPHD_SH_FNAME,'') + ' ' + isnull(DPHD_SH_MNAME,'') +' ' + isnull(DPHD_SH_LNAME,'') sh_holder
, isnull(DPHD_TH_FNAME,'') + ' ' + isnull(DPHD_TH_MNAME,'') +' ' + isnull(DPHD_TH_LNAME,'') th_holder
from slip_issue_mstr , dp_acct_mstr left outer join dp_holder_dtls on dphd_dpam_id = dpam_id
where SLIIM_SLIP_NO_TO = replace(@pa_req_slip_no ,SLIIM_SERIES_TYPE,'')
and sliim_deleted_ind =1
end
if @pa_action ='SEARCH'
begin
select * from Dis_req_Dtls
where req_slip_no = @pa_req_slip_no
and deleted_ind =1
end
end
else if @pa_chk_yn = 1
begin
if @pa_action ='INS'
begin
if not exists(select req_slip_no from Dis_req_Dtls where id = @pa_id)
insert into Dis_req_Dtls_mak
select @pa_req_slip_no
,@pa_req_date
, @pa_boid
, @pa_boname
, @pa_sholder
, @pa_tholder
, getdate()
, @pa_login_name
, getdate()
, @pa_login_name
,0
, @pa_rmks
end
if @pa_action ='EDT'
begin
if not exists(select req_slip_no from Dis_req_Dtls where id = @pa_id and deleted_ind = 1)
begin
update Dis_req_Dtls_mak
set req_slip_no=@pa_req_slip_no
,req_date=@pa_req_date
,Boid=@pa_boid
,Boname=@pa_boname
,sholder=@pa_sholder
,tholder = @pa_tholder
,remarks = @pa_rmks
,lst_upd_dt = getdate()
,lst_upd_by =@pa_login_name
where id = @pa_id
and deleted_ind = 0
END
ELSE
BEGIN
insert into Dis_req_Dtls_mak
select @pa_req_slip_no
,@pa_req_date
, @pa_boid
, @pa_boname
, @pa_sholder
, @pa_tholder
, getdate()
, @pa_login_name
, getdate()
, @pa_login_name
,6
,@pa_rmks
END
end
if @pa_action ='DEL'
begin
if not exists(select req_slip_no from Dis_req_Dtls where id = @pa_id and deleted_ind = 1)
BEGIN
delete from Dis_req_Dtls_mak
where id = @pa_id
and deleted_ind = 0
END
ELSE
BEGIN
insert into Dis_req_Dtls_mak
select @pa_req_slip_no
,@pa_req_date
, @pa_boid
, @pa_boname
, @pa_sholder
, @pa_tholder
, getdate()
, @pa_login_name
, getdate()
, @pa_login_name
,4
,@pa_rmks
END
end
if @pa_action ='APP'
begin
insert into Dis_req_Dtls
select req_slip_no
,req_date
,boid
,boname
,sholder
,tholder
,created_dt
,created_by
,lst_upd_dt
,lst_upd_by
,1
,NULL
,remarks
from Dis_req_Dtls_mak
where id = @pa_id
and deleted_ind = 0
update TBLMASTER
set TBLMASTER.req_slip_no=TBLMAK.req_slip_no
,TBLMASTER.req_date=TBLMAK.req_date
,TBLMASTER.Boid=TBLMAK.Boid
,TBLMASTER.Boname=TBLMAK.Boname
,TBLMASTER.sholder=TBLMAK.sholder
,TBLMASTER.tholder = TBLMAK.tholder
,TBLMASTER.lst_upd_dt = getdate()
,TBLMASTER.lst_upd_by = @pa_login_name
from Dis_req_Dtls TBLMASTER ,Dis_req_Dtls_mak TBLMAK
where TBLMASTER.REQ_SLIP_NO = TBLMAK.REQ_SLIP_NO AND TBLMAK.id = @pa_id
and TBLMAK.deleted_ind = 6
DELETE TBLMASTER
from Dis_req_Dtls TBLMASTER ,Dis_req_Dtls_mak TBLMAK
where TBLMASTER.REQ_SLIP_NO = TBLMAK.REQ_SLIP_NO AND TBLMAK.id = @pa_id
and TBLMAK.deleted_ind = 4
end
if @pa_action ='VALIDATESELECT'
begin
select SLIIM_DPAM_ACCT_NO
, dpam_sba_no , isnull(DPHD_SH_FNAME,'') + ' ' + isnull(DPHD_SH_MNAME,'') +' ' + isnull(DPHD_SH_LNAME,'') sh_holder
, isnull(DPHD_TH_FNAME,'') + ' ' + isnull(DPHD_TH_MNAME,'') +' ' + isnull(DPHD_TH_LNAME,'') th_holder
from slip_issue_mstr , dp_acct_mstr left outer join dp_holder_dtls on dphd_dpam_id = dpam_id
where SLIIM_SLIP_NO_TO = replace(@pa_req_slip_no ,SLIIM_SERIES_TYPE,'')
and sliim_deleted_ind =1
end
if @pa_action ='SEARCHCHK'
begin
IF @pa_tholder = 'P'
BEGIN
select * from Dis_req_Dtls_MAK
where deleted_ind IN (0,4,6)
AND CREATED_BY <> @PA_LOGIN_NAME
AND req_slip_no LIKE CASE WHEN @pa_req_slip_no = '' THEN '%' ELSE @pa_req_slip_no END
AND Boid LIKE CASE WHEN @pa_boid = '' THEN '%' ELSE @pa_boid END
AND case when @pa_req_date = '' then '0' else req_date end = case when @pa_req_date = '' then '0' else @pa_req_date end
END
IF @pa_tholder = 'R'
BEGIN
select * from Dis_req_Dtls_MAK
where deleted_ind = 3
AND req_slip_no LIKE CASE WHEN @pa_req_slip_no = '' THEN '%' ELSE @pa_req_slip_no END
AND Boid LIKE CASE WHEN @pa_boid = '' THEN '%' ELSE @pa_boid END
AND case when @pa_req_date = '' then '0' else req_date end = case when @pa_req_date = '' then '0' else @pa_req_date end
END
IF @pa_tholder = 'A'
BEGIN
select * from Dis_req_Dtls
where deleted_ind = 1
AND req_slip_no LIKE CASE WHEN @pa_req_slip_no = '' THEN '%' ELSE @pa_req_slip_no END
AND Boid LIKE CASE WHEN @pa_boid = '' THEN '%' ELSE @pa_boid END
AND case when @pa_req_date = '' then '0' else req_date end = case when @pa_req_date = '' then '0' else @pa_req_date end
END
end
if @pa_action ='SEARCHMAK'
begin
select * from Dis_req_Dtls_MAK
where deleted_ind IN (0,4,6)
AND CREATED_BY = @PA_LOGIN_NAME
end
end
end
Mayur GujrathiPosted Apr 27, 2011, 7:40 AM
Ankit NandekarPosted Apr 27, 2011, 7:39 AM
Mayur GujrathiPosted Apr 27, 2011, 7:37 AM
System.Data.SqlClient.SqlException: Procedure or function pr_ins_upd_reqdtls has too many arguments specified.
Ankit NandekarPosted Apr 27, 2011, 7:37 AM
cmd.Parameters.Add("@pa_error", SqlDbType.VarChar,200)
Mayur GujrathiPosted Apr 27, 2011, 7:33 AM
ankit what you told i did not get please describe
Ankit NandekarPosted Apr 27, 2011, 7:30 AM
cmd.Parameters.Add("@pa_error", SqlDbType.VarChar)
Mayur GujrathiPosted Apr 27, 2011, 7:24 AM
the Size property has an invalid size of 0.
omkar mhaiskarPosted Apr 27, 2011, 7:18 AM
Ok i got your problem,
make following changes in your code.
cmd.Parameters.Add("@pa_error", SqlDbType.VarChar)
cmd.Parameters("@pa_error").Direction = ParameterDirection.Output
other wise @store procedure use text as datatype.
and same it is in the codebehind.
Thanks And Regards
Omkar.