lo mismo tenia entendido yo respecto al SETLL/READE vs CHAIN
si bien en el ejemplo planteado se ve como inutil la utilizacion de la
variable EOF, queda mejor representado el proceso, y ya nos hemos
acostumbrados a trabajar asi, y ayuda en procesos en los que uno realiza un
corte manual... para totalizar...
bueno no viene al caso...
en lo que seria ... OPERACIONES MATEMATICAS ... no existe ningun EXSR, CALL
que pueda llegar a estar realizando algun reposicionamiento o cambio en los
valores de la clave... es mas la clave no esta definida con campos del
archivo que estoy procesando sino con los campos de la cabecera del archivo
que estoy procesando, los cuales igualmente verifique con un debug no se
estuvieran cambiando...
la variable eof, se esta utilizando solamente antes de iniciar el ciclo en
su inicializacion, y antes del ENDDO...
Caspitas, que se me han quemado las pesta�as tratando de encontrar el
problema y no lo logro...
Gracias igualmente...
----- Original Message -----
From: "Jesus Busquets" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, November 29, 2004 10:18 AM
Subject: Re: rpg/400, chain/reade ... no entiendo...
Una cosa, ya hace mucho tiempo le� que era mucho m�s eficiente hacer un
chain que un SETLL, y el programa deber�a funcionar con la l�gica
indicada.
De todos modos, y si no se usa el EOF para otra cosa, no tiene mucho
sentido en el c�digo...y, desde luego, es menos propenso a error a la
hora de su uso el hacer el ciclo as� (�para qu� duplicar la
funcionalidad del indicador?)
KLIST1 CHAINFILE1 89
*IN89 DOWEQ *OFF
... OPERACIONES MATEMATICAS....
KLIST1 READEFILE1 89
ENDDO
Por aqu� tengo toneladas de programas con este c�digo, y nunca he
encontrado un error como el que comentas.
Por otro lado, supongo que en las operaciones...
* no se llamar� a ninguna funci�n de lectura sobre este archivo
(por otro programa, o subrutina, incluso), que podr�an compartir la ODP
* no se modificar�n los campos clave..
* no se tocar� el EOF, aunque esto no deber�a afectar...
Diego Garulo escribi�:
Buenos d�as Gabriel,
porque no pruebas con un SETLL en lugar de un CHAIN.
El c�digo ser�a mas o menos as�:
KLIST1 SETLL FILE1
KLIST1 READE FILE1 89
*IN89 DOWNE *OFF
OPERACIONES MATEMATICAS
KLIST1 READE FILE1 89
ENDDO
-----Mensaje original-----
De: [EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> [
mailto:[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> ]En nombre de Dario Gabriel
Ivan Heinze
Enviado el: lunes, 29 de noviembre de 2004 13:42
Para: Forum400
Asunto: rpg/400, chain/reade ... no entiendo...
Gente, buenos dias/tardes.
Tengo un problemilla, y no se como resolverlo y encontrar su causa.
Tengo un archivo cuya clave es : campo1, campo2, campo3
en el programa RPG/400 tengo una clave de lectura, definida para los dos
primeros campos, o sea KLIST1 = campo1, campo2
en el RPG tengo un ciclo de estas caracteristicas.
MOVE 0 EOF
KLIST1 CHAINFILE1 89
89 MOVE 1 EOF
EOF DOWNE1
... OPERACIONES MATEMATICAS....
KLIST1 READEFILE1 89
89 MOVE 1 EOF
ENDDO
No se si se se alcanza a entender, el tema es que tengo un caso en que
tengo un solo registro para campo1, campo2 y el RPG me esta realizando
nuevamente lectura exitosa sobre el FILE1 en la operacion READE, tengo
otros valores de campo1, campo2 que solo tienen un registro para esa
clave, el ciclo funciona correctamente, pero hay un solo (de momento)
caso que me esta haciendo esto...
ya probe regenerando el archivo por si el AS se habia chupado en la
generacion del indice y eso me estaba ocasionando algun problema pero
nada...
francamente se me acabaron los conocimientos, ideas, todo... no se que
puede ser,
Si alquien tiene una idea, o se le ocurre algo, sera bien recibido...
Saludos,
Dario G. I. Heinze
Dpto AS/400 - C.P.C. S.A.
San Martin 3071 - Santa Fe - Argentina
Tel. 54 342 4558558 int. 232
E-Mail: [EMAIL PROTECTED] <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]