Gracias a todos por su respuesta lo que hice fue utilizar lo que me recomendaron cuando grabo el ultimo registro al archivo le doy el CLOF Muchisimas gracias por su ayuda les quedo muy agradecidos Benito Hernandez --- On Thu, 1/27/11, [email protected] <[email protected]> wrote:
From: [email protected] <[email protected]> Subject: Re: caso raro (duda) To: "forum.help400" <[email protected]> Cc: "forum.help400" <[email protected]>, [email protected] Date: Thursday, January 27, 2011, 9:50 PM Utiliza USROPN, abre el fichero, graba los registros, cierra el fichero y ejecuta el CL que copia el resultado. Saludos ^^^ Ing. Armando Luengas Mendoza Jafra Cosmetics International IT México ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ From: Benito Hernandez <[email protected]> To: "forum.help400" <[email protected]> Date: 27/01/2011 01:47 p.m. Subject: caso raro (duda) Sent by: [email protected] Tengo un programa que recibe parametros empieza hacer una serie de instrucciones y va grabando en un archivo XXX registro por registro . despues de haber grabado ciertos registros entra una subrutina y en esa subrutina vuelve a grabar mas registros al archivo XXX al termniar la subrutina le doy un CALL a un CL Este CL hace un CPYF que selecciona solo los registros que se fueron grabando en el programa al archivo XXX para dejarlos en un archivo con otro nombre YYYYYYYYYY (YYYYYYYYYY va cambiando de nombre de acuerdo a los parametros y solo se graba un campo del archivo XXX a YYYYYYYYY con *MAP y *DROP), despues del CALL al CL prendo el *INLR para finalizar el programa. EL problema que tengo es que cuando hace el copy no esta pasando los 3 ultimos registros al Archivo YYYYYYYYYY que se graban en el archivo XXX no entiendo por que no los copia, si cuando finaliza el programa y despliego el archivo XXX ahi estan los registros hagan de cuenta que esos registros se quedaron en memoria y no los muestra en el archivo XXX hasta que finaliza el programa con el *INLR aunque ya se hizo el write al archivo Espero me puedan dar una idea de lo que pudiera estar pasando les mando instrucciones de como esta definido el archivo y unas lineas que dan idea de lo que hace el programa: -- - - - - - - - - - - - - - - - - - - - - -- - - - - - -- - - - - -- - DEFINICION DE ARCHIVO PARA GRABAR FXXX O A E DISK se mueven a los campos diferentes valores y se graba el registro WRITE RXXX CLEAR RXXX esto de mover valores a campos y hacer el write y el clear se hace como 50 veces despues de grabar los 50 registros entra un IF como sigue IF tipimp = 'I' EXSR DETALLE ENDIF se ejecutan algunas instrucciones y despues de estas se hace un CALL CALL CLCPYF (Este CL hace el CPYF ) esta es la parte de la rutina que se ejecuta en el IF DETALLE BEGSR se mueven a los campos diferentes valores y se graba el registro WRITE RXXX CLEAR RXXX igual a qui se graban otros 50 registros en la rutina del detalle y termina la rutina ENDSR como les comento los ultimos 3 registros que se graban en la rutina de detalle no se van con el CPYF que se hace en el CL aunque esos 3 registros si cumplen las condiciones para que pasen Mucho Agradecere su ayuda y espero no haberlos enredado con mi readccion Saludos Benito Hernandez Rivera ____________________________________________________ Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L. -----Inline Attachment Follows----- ____________________________________________________ Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.
____________________________________________________ Únete a Recursos AS400, nuestra Comunidad ( http://bit.ly/db68dd ) Forum.Help400 © Publicaciones Help400, S.L.

