Power Builder - stored procedure sin parametros

 
Vista:

stored procedure sin parametros

Publicado por alejandro (1 intervención) el 12/03/2004 17:20:22
Estoy trabajando con PB-8.0.3 y Oracle-9i. Tengo creado un stored procedure sin parametros que actualiza una tabla y luego hace el commit correspondiente. El problema que tengo es que cuando lo declaro en PB8.
DECLARE MI_STORED PROCEDURE SP_ACTUALIZA USING SQLCA;
EXECUTE MI_STORED;

y quiero grabar o compilar el boton que ejecuta el stored procedure la aplicacion de PB8 se cae, se tilda, se muere.
La primera solucion que encontre es agregando cualquier parametro de Entrada o Salida al stored procedure en Oracle, y PB8 si me deja grabar o compilar.

Alguien me puede decir porque se cae la aplicacion, y si existe alguna solucion para los stored procedures que no tienen parametros.
Gracias !!!!!!

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

RE:stored procedure sin parametros

Publicado por Carlos Gil (1 intervención) el 12/03/2004 18:46:24
Segun entendi tu procedimiento almacenado no recibe parametros y tampoco envia resultados. Esto mas se parece a la definicion de un Trigger que de un SP. En todo caso si insiste realizarlo con SP, que este te devuelva el codigo de error. Si el error es cero entonces todo esta OK.

Suerte
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

RE:stored procedure sin parametros

Publicado por Oscar (1178 intervenciones) el 12/03/2004 20:40:38
En realidad existen cuatro tipo de Procedimientos (por lo menos para SQL Server):
* SP que no recibe ni devuelve parámetros.
* SP que recibe parámetros.
* SP que recibe y entrega parámetros.
* SP que retorna un resultado.

Además, se puede crear un Procedimiento con parametros COMODIN. Esto significa, que si no se le pasa ningún parámetro, el SP debe tomar obligatoriamente un valor asignado por defecto.

No sé cómo se hace eso en Oracle; pero en SQL Server más o menos es así:

Ejemplo:
Se desea listar los artículos que empiecen con una determinada letra; si no se hace eso, debe mostrar los artículos que empiecen con la letra C.

.....
CREATE PROCEDURE sp_ListaArticulos
@Nombre VarChar(35)='C%'
AS
SELECT L.DesLinea,A.IdArticulo,A.PreCosto
FROM Linea L
INNER JOIN Articulo A
ON L.IdLinea=A.IdLinea
WHERE A.DesArticulo Like @Nombre
...

El SP almacenado llamado sp_ListaArticulos, se puede ejecutar de dos maneras:

EXEC sp_ListaArticulos

ó

EXEC sp_ListaArticulos 'G%'

En resumen, me parece que deberías poner un valor por default para que no se te caiga tu aplicación. No estoy seguro; pero podría deberse a esa situación.
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