Power Builder - Hice mi primer SP, pero no me resulta

   
Vista:

Hice mi primer SP, pero no me resulta

Publicado por Roberto (86 intervenciones) el 20/02/2012 21:33:47
Estimados, como todo no puede ser maravilla a la primera, no me resulto mi primer procedimiento almacenado, lo cree en Sybase versión 10.0

ALTER PROCEDURE "findelsa"."sp_uno"(@parametro1 Integer , Out parametro2 Decimal(18,2) ) AS

BEGIN
SET @parametro2=@parametro1 * 10
END

Realizo el llamado desde power builder

DECLARE sp_u PROCEDURE FOR sp_uno
@parametro1 = :Val_1;
@parametro2 = :Val_2 ;

EXECUTE sp_u; //Ejecutamos con el nombre del Alias

FETCH sp_u INTO :Val_2; //Recuperamos el resultado
CLOSE sp_u;

Pero no trae de regreso el valor,
Hay alguna manera de desplegar un mensaje dentro del procedimiento almacenado para saber si entro?

Muchas gracias por su ayuda

Roberto
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Hice mi primer SP, pero no me resulta

Publicado por Leopoldo Taylhardat (1 intervención) el 21/02/2012 16:07:52
Saludos....
al parametro2 le falta la "@"... Out @parametro2 ...
no puedes separar los parámetros en la llamada con ";" (punto y coma) ... debes usar "," (coma)...
:Val_1, :Val_2 ;
y solo asignas las variables...
no necesitas el FETCH.... te debe retornar el valor en la variable... Val_2

DECLARE sp_u PROCEDURE FOR sp_uno :Val_1, :Val_2 ;

EXECUTE sp_u; //Ejecutamos con el nombre del Alias
CLOSE sp_u;
Messagebox('...',string(Val_2))

Prueba y confirmas...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Hice mi primer SP, pero no me resulta

Publicado por Roberto (86 intervenciones) el 21/02/2012 17:44:56
Estimado, al parecer el problema esta en el procedimiento
ALTER PROCEDURE "findelsa"."sp_uno"(@parametro1 Integer , Out @parametro2 Decimal(18,2) ) AS

BEGIN
SET @parametro2 = @parametro1 * 10
END

Porque lo ejecuto desde el administador (Sybase Central), y no me despliega valor alguno
Al ejecutarlo desde Power B. tampoco me entrega valor, solo despliega el valor asignado a variable Resultado = 30, por ende no esta tomando el valor desde el SP

Integer Valor
Decimal Resultado
String calo

Valor=10
Resultado = 30

DECLARE sp_u PROCEDURE FOR sp_uno :Valor, :Resultado ;

EXECUTE sp_u; //Ejecutamos con el nombre del Alias
If SQLCA.sqlcode = 0 Then
FETCH sp_u INTO :Resultado;
Else
messagebox("Error","Error")
End If
CLOSE sp_u;
messagebox("",Resultado)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Hice mi primer SP, pero no me resulta

Publicado por lucas (4 intervenciones) el 26/03/2012 21:07:14
prueba con :

BEGIN
SET @parametro2 = @parametro1 * 10
select @parametro2
END
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar