os mando el ejemplo del recordset dentro de un SQLRPGLE. Si lo quereis independizar del fuente, insertar la declaracion del cursor en un /copy.

Saludos.

Jorge escribi�:

Saludos:

        Mi pregunta es:  �Se pueden recuperar Result Set's generados por
procedimientos SQL desde un programa RPG?

Gracias.


_____________________________________________________ Forum.HELP400 es un servicio m�s de NEWS/400. � Publicaciones Help400, S.L. - Todos los derechos reservados http://www.help400.es _____________________________________________________

Para darte de baja, env�a el mensaje resultante de pulsar
mailto:[EMAIL PROTECTED]





/TITLE
H DEBUG(*YES) DATFMT(*ISO) DECEDIT('0,')
 * variable que nos indicar� entre otras cosas el final del cursor
D I_SQL_ERR       S              1N
 * estructura de datos de vuelco del recordset
D SQ_RECDAT       DS
D  campoa                        9S 0
D  campob                        1A
D  campoc                       30A
D  campod                       30A
 * declaracion del cursor llamado rs1
C/EXEC SQL
C+ DECLARE rs1 CURSOR FOR
C+         SELECT CMcampoa, CMcampob, CMcampoc, CMcampod
C+         FROM mastercli
C+         WHERE CMcampob ='1' AND
C+               CMcampoc='Y'
C/END-EXEC
 * apertura del cursor
C/EXEC SQL OPEN rs1
C/END-EXEC
C                   EVAL      I_SQL_ERR=*OFF
 *
C                   DOW       NOT I_SQL_ERR

 * recorrido del cursor
C/EXEC SQL
C+ FETCH rs1
C+       INTO :SQ_RECDAT
C/END-EXEC
 * AQLSTT es una de las variables que forman parte de la DS SQLDA
C                   EVAL      I_SQL_ERR=%SUBST(SQLSTT:1:2)<>'00'
C                   IF        NOT I_SQL_ERR
C* aqui, haceis lo que querais con los campos de la estructura de datos
C* SQ_RECDAT, la cual contiene los valores de las columnas 
C* definidas para la tabla mastercli (rs1)
C                   ENDIF
 *
C                   ENDDO
 * cierre del cursor
C/EXEC SQL CLOSE rs1
C/END-EXEC
*

     �**************   Fin de Subrutinas C�lculo ***************************

Responder a