Bueno, el problema del * no era lo que pensaba... se enviava un
*LIBL/PROVES en lugar de un QTEMP/PROVES, ahora lo que me ocurre es:


                        Informaci�n Adicional de Mensaje
 ID de mensaje  . . . . :   SQL0030       Gravedad . . . . . . . :   00
 Tipo de mensaje  . . . :   Informaci�n
 Fecha env�o  . . . . . :   21/07/03      Hora env�o . . . . . . :
14:55:06
 Mensaje . . . . :   N�mero de variables del lenguaje principal menor que
el de
   valores de resultado.
 Causa . . . . . :   El n�mero de variables del lenguaje principal
especificado
   en la cl�usula INTO es menor que el n�mero de valores de resultado. Si
se
   ejecuta el programa, s�lo las variables especificadas tendr�n valores
   asignados a las mismas.
 Recuperaci�n  . :   Si deben recibirse todos los valores, especifique el
   n�mero adecuado de variables del lenguaje principal.  Precompile de
nuevo el
   programa.

clar, tiene razon, de todas maneras tenia entendido de que si la variable
es una estructura DS se envia todo el resultado de la select, y el valor
que contiene �s s�lo el del primer campo.

Necesito recoger en una variable RPG todo el contenido del registro, sin
formatear, aun si alguna parte de el es NULL.  Es decir si hay campos
packed, necesito los caracteres Hex que representan. Mi programa se encara
de recuperar los valores en funci�n de la posici�n que est�.

fins aviat...
�lex Corretg�




                                                                                       
                                   
                    Alex Corretge                                                      
                                   
                                         Para:   [EMAIL PROTECTED]                     
                            
                    21/07/2003           cc:                                           
                                   
                    14:09                Asunto:      RE: [RPG] Lectura de registros 
con campos NULL(Document link: mail  
                                         correal)                                      
                                   
                                                                                       
                                   



Hola, he probado de montar lo que comentas, y tengo algunos problemas, me
indica:

                        Informaci�n Adicional de Mensaje
 ID de mensaje  . . . . :   SQL0104       Gravedad . . . . . . . :   30
 Tipo de mensaje  . . . :   Diagn�stico
 Fecha env�o  . . . . . :   21/07/03      Hora env�o . . . . . . :
12:50:17
 Mensaje . . . . :   Signo * no v�lido. Signos v�lidos: ( <IDENTIFIER>.
 Causa . . . . . :   Se ha detectado un error de sintaxis en el signo *. El
   signo * no es un signo v�lido. Una lista parcial de signos v�lidos es (
   <IDENTIFIER>. Esta lista asume que la sentencia es correcta hasta el
signo.
   El error puede estar anteriormente en la sentencia, pero la sintaxis de
la
   sentencia aparece como v�lida hasta este punto.
 Recuperaci�n  . :   Efect�e una o m�s de las siguientes acciones y vuelva
a
   intentar la petici�n:
     -- Verifique la sentencia SQL en el �rea del signo *. Corrija la
   sentencia. El error podr�a ser la omisi�n de una coma o comillas; podr�a
   tratarse de una palabra con errores ortogr�ficos, o podr�a estar
relacionado
   con el orden de las cl�usulas.
    -- Si el signo de error es <FIN DE SENTENCIA>, corrija la sentencia SQL
  porque no finaliza con una cl�usula v�lida.
jc_SqlStm tiene este valor:  Select * from qtemp/proves

c*
C/EXEC SQL
C+ prepare stmt from :jc_SqlStm
C/END-EXEC

C/EXEC SQL
C+ Declare C1 cursor for stmt
C/END-EXEC

C/EXEC SQL
C+ Open C1
C/END-EXEC

C/EXEC SQL
C+ Fetch C1 into :j_Record
C/END-EXEC

c                   DoW       SQLCOD = 0


c*
C/EXEC SQL
C+ Fetch C1 into :j_Record
C/END-EXEC
c*
c                   EndDo





                                                                                       
                                           
                    Fernando P�rez                                                     
                                           
                    <[EMAIL PROTECTED]>          Para:   "'[EMAIL PROTECTED]'" <[EMAIL 
PROTECTED]>                  
                    Enviado por:                 cc:                                   
                                           
                    [EMAIL PROTECTED]      Asunto:      RE: [RPG] Lectura de registros 
con campos NULL                      
                    COMBIOS.ES                                                         
                                           
                                                                                       
                                           
                                                                                       
                                           
                    18/07/2003 17:52                                                   
                                           
                    Por favor, responda a                                              
                                           
                    forum.help400                                                      
                                           
                                                                                       
                                           
                                                                                       
                                           




Creo que Victor ha dado en el clavo, pero el programa ha despertado mi
curiosidad de viernes tarde:

=BFLo de fichero por hoja F es porque has de tratar N ficheros =
diferentes? Si
es esa la causa, yo recomendar=EDa usar sql din=E1mico, montando la =
sentencia
del cursor en tiempo de ejecuci=F3n para acceder a la tabla =
correspondiente.

Saludos.

Fernando P=E9rez.
Cer=E1mica Saloni. Dpto. Sistemas
<mailto:[EMAIL PROTECTED]>


-----Mensaje original-----
De: Victor Velardez BT [mailto:[EMAIL PROTECTED]
Enviado el: viernes, 18 de julio de 2003 17:12
Para: [EMAIL PROTECTED]
Asunto: RE: [RPG] Lectura de registros con campos NULL



En la Hoja H el parametro seria ALWNULL(*YES)=20
-----Mensaje original-----
De: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]
Enviado el: Viernes, 18 de Julio de 2003 12:00 p.m.
Para: [EMAIL PROTECTED]
Asunto: [RPG] Lectura de registros con campos NULL


Ave iSauris, programituri te salutant ;-)  (necesito vacaciones YA)

Tengo un problema a la hora de leer un archivo que contiene campos con
valores NULL, resultado de una SELECT con LEFT JOIN cuando algunos =
registros
no tienen correspondencia en el segundo archivo, y no se ha =
especificado la
palabra clave COALESCE.

Previo OVRDBF del archivo a procesar mi RPG lo abre de la siguiente =
manera:

h alwnull(*USRCTL)
d j_Record        ds         32766
fInputDBF  IF   F32766        DISK
f                                     INFDS(INFO)

Y lo que leo lo coloco en una DS que procesar=E9 m=E1s tarde:

c                   Read(E)   InputDBF      j_Record

El problema que tengo es que cuando leo un registro con algun campo a =
NULL,
se enciende %ERROR y no cambia el valor de j_Record, que contiene los =
datos
del ultimo registro leido sin problemas.

Lo que necesito es que la DS contenga los datos del registro que son
v=E0lidos, y a x'00' los que sean nulos, despu=E9s ya lo gestionaria mi
programa.

Probando de hacer la lectura sin el control de error para que pete, en =
el
dump he visto que el Almacenamiento Intermedio de Entrada: contiene la
informaci=F3n que necesito!!!! pero no se como recuperarla, ni el =
nombre que
recibe en ingl=E9s para poder hacer una b=FAsqueda por el google y los =
manuales
de API's... por Input Storage he encontrado alguna cosa... per no me ha
servido '-(

Si defino el archivo en la hoja I tengo el mismo problema.

Alguien conoce alguna API para poder recuperar el Almacenamiento =
Intermedio
de Entrada? Alguien conoce algun m=E9todo alternativo?

desde ya, muchas gr=E1cias.


fins aviat...
=C0lex Corretg=E9





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

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

La informacion contenida en este correo es para uso exclusivo de los
destinatarios del mismo. Esta prohibido a las personas o entidades que =
no
sean los destinatarios de este correo realizar cualquier tipo de
modificacion, copia o distribucion del mismo. Si Usted recibe este =
correo
por error tenga bien notificar al emisor y eliminarlo.

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

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

_____________________________________________________
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]









_____________________________________________________
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]

Responder a