valor de retorno

22/12/2004 - 15:43 por Gustavo Arriola | Informe spam
Hola a tod@s!!
Tengo un procedimiento que recibe parametros y antes de realizar altas
valida que los mismos no existan en la db.


CREATE PROCEDURE spimportar_recarga_nucleo
(
@linea varchar(10),
@nro_ss varchar(25),
@cod_vendedor varchar(15),
@carga_tarjeta money,
@comision_adl money,
@nro_comision smallint,
@id_empresa int,
@fecha_importacion varchar(17)
)

AS

DECLARE @estado int

SET @estado = (SELECT COUNT(*) FROM importar_recargas_nucleo WHERE
nro_ss=@nro_ss AND nro_comision=@nro_comision)

if (@estado=0)
begin
Insert Into importar_recargas_nucleo(linea, nro_ss ,cod_vendedor
,carga_tarjeta, nro_comision, comision_adl, id_empresa, fecha_importacion)
Values(@linea, @nro_ss, @cod_vendedor, @carga_tarjeta, @nro_comision,
@comision_adl, @id_empresa, @fecha_importacion)
goto Finalizar
end
else
begin
goto ErrorGrave
end


ErrorGrave:
Return 1

Finalizar:
Return 0
GO


El problema que tengo es que simpre me retorna un 0 (cero) por mas que
existan datos en la DB

¿Qué estoy haciendo mal?
Desde ya muchas gracias!
Gustavo
 

Leer las respuestas

#1 MAbanto
23/12/2004 - 00:55 | Informe spam
No haz probado usando una variable output???

"Gustavo Arriola" wrote:

Hola a !!
Tengo un procedimiento que recibe parametros y antes de realizar altas
valida que los mismos no existan en la db.


CREATE PROCEDURE spimportar_recarga_nucleo
(
@linea varchar(10),
@nro_ss varchar(25),
@cod_vendedor varchar(15),
@carga_tarjeta money,
@comision_adl money,
@nro_comision smallint,
@id_empresa int,
@fecha_importacion varchar(17)
)

AS

DECLARE @estado int

SET @estado = (SELECT COUNT(*) FROM importar_recargas_nucleo WHERE
nro_ss=@nro_ss AND nro_comision=@nro_comision)

if (@estado=0)
begin
Insert Into importar_recargas_nucleo(linea, nro_ss ,cod_vendedor
,carga_tarjeta, nro_comision, comision_adl, id_empresa, fecha_importacion)
Values(@linea, @nro_ss, @cod_vendedor, @carga_tarjeta, @nro_comision,
@comision_adl, @id_empresa, @fecha_importacion)
goto Finalizar
end
else
begin
goto ErrorGrave
end


ErrorGrave:
Return 1

Finalizar:
Return 0
GO


El problema que tengo es que simpre me retorna un 0 (cero) por mas que
existan datos en la DB

¿Qué estoy haciendo mal?
Desde ya muchas gracias!
Gustavo



Preguntas similares