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]