domingo, 1 de noviembre de 2015

Ejecutar Stored Procedure Firebird en PowerBuilder

En este post ya habiamos visto como usar un Stored Procedure de Firebird en un DataWindow:
 
http://desarrolladorpowerbuilder.blogspot.pe/2015/10/usando-stored-procedure-firebird-en.HTML

Ahora veremos como ejecutar un Stored Procedure de Firebird desde PowerScript.

Primer Ejemplo:

En Firebird tenemos un Stored Procedure que nos devuelve el ultimo numero de un documento sumándole uno.


Vamos a PowerBuilder y debemos ejecutar el Stored Procedure con el siguiente PowerScript:

SELECT  NRO_SER,
                 NRO_ACT
    INTO :ls_Serie, :li_Numero
  FROM USP_SEL_DOCUMENTO_NUMERACION(gs_Empresa, gs_Sucursal, gs_Terminal, ls_Documento);


Segundo Ejemplo:

En Firebird tenemos un Stored Procedure que actualiza el ultimo numero de un documento sumándole uno.


Vamos a PowerBuilder

Para ejecutar este Stored Procedure Firebird tenemos que declararlo como una función externa en un Standard Class de tipo Transaction, siguiendo estos pasos:

1. New, clic en Standard Class, OK:

 
2. Seleccionar Transaction, clic en OK.

 
3. Guardamos el objeto.
 
4. En propiedades del objeto Application dar clic en el botón Additional Properties
 
 
5. Ubicamos la pestaña Variable Types y en la caja SQLCA, digitamos el nombre del objeto Transaction, luego clic en OK.
 
 
 
6. Abrimos el objeto de tipo Transaction y ubicar Local External Functions.
 
 
 7. Declaramos el Stored Procedure Firebird
 
 

8. Por ultimo las siguientes líneas deben estar dentro del evento o función donde se va ejecutar el Stored Procedure Firebird:
 
SQLCA.USP_UPD_DOCUMENTO_NUMERACION(gs_Empresa, gs_Sucursal, gs_Terminal, ls_Documento);