problema al insertar varias filas con store procedure hola
tengo un lista de reportes q voy escoguiendo con un chekbox entonces al selecionarlos los guardo en una tabla historica, el asunto es q utilizo un store procedure para hacer el insert por q necesito q me retorne un valor
bueno el asunto es q si solo seleciono uno se quarda bien en la tabla y me retorna el valor pero si seleciono mas de uno solo se me guarda uno y no me retorna valor les muestro el codigo y el store procedure
<%
'*******Cambia Status de los Reportes a Procesados (5)
for i=0 to ubound(laReportes,2)
cmdSRG.CommandText = "{call SP_VTHistoryRep(?,?,?,?,?,?,?,?,?,?)}"
cmdSRG.parameters.append cmdSRG.createparameter("Num(i)",adInteger, adParamOutput,3)
cmdSRG.parameters.append cmdSRG.createparameter("PsNumReporte(i)",adVarChar ,adParamInput,13)
cmdSRG.parameters.append cmdSRG.createparameter("PsConsec(i)",adInteger,adP aramInput,4)
cmdSRG.parameters.append cmdSRG.createparameter("Psfecha(i)",adDBDate,adPar amInput,133)
cmdSRG.parameters.append cmdSRG.createparameter("PsTotalFavor(i)",adCurrenc y,adParamInput,10)
cmdSRG.parameters.append cmdSRG.createparameter("PsConcepto(i)",adVarChar,a dParamInput,250)
cmdSRG.parameters.append cmdSRG.createparameter("PsStatus(i)",adChar,adPara mInput,1)
cmdSRG.parameters.append cmdSRG.createparameter("PsTipoReporte(i)",adChar,a dParamInput,1)
cmdSRG.parameters.append cmdSRG.createparameter("PslsCompania(i)",adChar,ad ParamInput,7)
cmdSRG.parameters.append cmdSRG.createparameter("PsIdnumEmpleado(i)",adVarC har,adParamInput,10)
cmdSRG.parameters("PsNumReporte(i)") =laReportes(0,i)
cmdSRG.parameters("PsConsec(i)")=laReportes(1,i)
cmdSRG.parameters("Psfecha(i)")=FormateaFechaServe r(lsFechaCreacion)
cmdSRG.parameters("PsTotalFavor(i)")=Request.Form( "hdnTotalFavor")(i+1)
cmdSRG.parameters("PsConcepto(i)")=replace(Request .Form("hdnConcepto")(i+1) ,"'","´")
cmdSRG.parameters("PsStatus(i)")=5
cmdSRG.parameters("PsTipoReporte(i)")=Request.form ("hdnTipoReporte")(i+1)
cmdSRG.parameters("PslsCompania(i)")=laReportes(5, i)
cmdSRG.parameters("PsIdnumEmpleado(i)")=laReportes (3,i)
cmdSRG.Execute
'response.end
next
%>
el store pro
alter procedure SP_VTHistoryRep(@Num int=Null OUTPUT,@PsNumReporte Varchar(13)=Null, @PnNumRep Int=Null, @PfCreacionReporte DateTime =Null,
@PnTotalFavor Money=Null,@PSConcepto Varchar(250)=Null, @PsIdStatus Char(1)=Null,
@PsIdTipoReporte Char (1)=Null, @PsIdCompania Char (7)=Null, @PsIdnumEmpleado Varchar(10)=Null) as
--verifica
begin
declare @Encontrado int
Set @Encontrado= (Select count(*)from THISTORYREP where @PsNumReporte=sNumReporte)
if @Encontrado > 0
Select @Num =1
else
INSERT INTO THistoryRep
(sNumReporte,nNumRep,fCreacionReporte,nTotalFavor, sConcepto,sIdStatus,sIdTipoReporte,sIdCompania,sId NumEmpleado)
VALUES(@PsNumReporte,@PnNumRep,@PfCreacionReporte, @PnTotalFavor,@PSConcepto,@PsIdStatus,@PsIdTipoRep orte,@PsIdCompania,@PsIdnumEmpleado)
Select @Num=2
end
GO |