Huy, gracias Alex, le echare un ojo mas tarde, por ahora liado de tiempo…

 

La solucion por el momento… medio raro… desde el ILE/RPG invoco a un RPG
normalito que devuelve los cursores al cliente, y funciona… no se porque no
los devuelve el ILE… 

 

Me he dado de bruces contra el piso, y no he logrado entender porque no anda
en el ILE, seguramente tal vez se solucione con alguna PTF magica… pero
tampoco he encotrado referencia a ella… jeje.. 

 

Ya probare lo que me comentas y aviso!!!

 

Gracias por todo!

 

  _____  

De: [email protected]
[mailto:[email protected]] En nombre de Àlex Corretgé
Enviado el: Viernes, 19 de Marzo de 2010 15:11
Para: forum.help400
Asunto: Re: Ayuda, Store Procedure, ya no se para donde disparar.

 

Me suena que hay problemas en declarar StoredProcedures externas a
procedimientos o programas que sean SQLRPG o SQLRPGLE.

 

Cuando he necesitado tener una StoredProcedure de un procedidimiento RPGLE
que consuma SQL hago dos cosas:

 

la coletilla al CREATE PROCEDURE es similar a esta:

 

LANGUAGE RPGLE                                                 






SPECIFIC LIB/PROC


not deterministic                                              


no  sql                                                        


called on null input                                           






external name 'LIB/SRVPGM(PROC)'                   


parameter style general with nulls   

y el SRVPGM no es SQLRPGLE sinó RPGLE a secas y ejecuta el SQL via DB2CLI
(Call Level Interface)

 

más información de como hacerlo:

 

http://publib.boulder.ibm.com/iseries/v5r1/ic2924/index.htm?info/cli/rzadpms
t02.htm

 

 

es un coñazo programarlo, pero las aplicaciones vuelan.

 

Atentament / Kind Regards

Àlex Corretgé
Serveis Informàtics Corretgé.com SLU

Carrer de la Font, 2
17142 - Verges
Tel: +34 972 780 422
Cell: +34 669 86 92 64

http://corretge.cat/

skype: corretge_com

LinkedIn: http://www.linkedin.com/in/corretge

News: http://bloc.corretge.cat




2010/3/17 Dario Heinze <[email protected]>

Hola esti...@s

 

Estoy incursionando en el tema de los store procedure.

 

Creo el store..

 

CREATE PROCEDURE BIBLIO.STRPRC ( 

            IN P1 CHAR(2) , 

            IN P2 CHAR(1) , 

            IN P23 NUMERIC(14, 0) ) 

            DYNAMIC RESULT SETS 2 

            LANGUAGE RPGLE 

            NOT DETERMINISTIC 

            EXTERNAL NAME 'BIBLIO/PGMILERPG' 

            PARAMETER STYLE GENERAL ; 

El store tiene 23 parametros, el ILE RPG es asi

 

H DftActGrp(*No) ActGrp(*New)

 

C* Aca con los parámetros genero información para el procedimiento que
resuelve la lógica del negocio

C* Genero la cabecera cuya clave es el campo xt1ntr que luego utilizo para
filtrar lo que debo devolver

 

C/EXEC SQL DECLARE c1 CURSOR FOR

C+ SELECT * FROM xt03fre WHERE xt3ntr = :xt1ntr       

C+    FOR READ ONLY             

C/END-EXEC                      

*                                              

C/EXEC SQL DECLARE c2 CURSOR FOR                

C+ SELECT * FROM xt04frer WHERE xt4ntr = :xt1ntr

C+    FOR READ ONLY                             

C/END-EXEC                                      

*                                     

C/EXEC SQL                             

C+ OPEN c1                             

C/END-EXEC                             

 *                                     

C/EXEC SQL                             

C+ OPEN c2                             

C/END-EXEC                             

 *                                     

C/EXEC SQL                             

C+ SET RESULT SETS CURSOR c1, CURSOR c2

C/END-EXEC                             

*                                                                 

C     Fin           TAG                                            

C                   SETON                                        LR

C                   RETURN                                         

 

 

El store lo ejecuto desde STRSQL con 

CALL STRPRC(P1, P2, …, P23)

 

El mismo se ejecuta, arma las tablas del proceso (las graba en base a los
parametros) se ejecuta y termina sin error, PERO AQUI EL PROBLEMA, no me
devuelve los cursores que debería estar retornando…

 

 

 

 


____________________________________________________
© Publicaciones Help400, S.L. - Todos los
derechos reservados http://www.help400.es
----------------------------------------------------
Para darte de baja visita la siguente URL:
http://listas.combios.es/mailman/listinfo/forum.help400

 

----------------------------------------------------------------------------
--


Conocés Tan-Gram?


Sistema Integral para la administración de organizaciones
www.tan-gram.com.ar es Buena Gestión 

____________________________________________________
© Publicaciones Help400, S.L. - Todos los
derechos reservados http://www.help400.es
----------------------------------------------------
Para darte de baja visita la siguente URL:
http://listas.combios.es/mailman/listinfo/forum.help400

Responder a