Si el programa tiene definido un archivo como primario, es el ciclo lógico
del RPG quien está manejando el fin de archivo. Para incluir una rutina en
FREE, que se ejecute cuando se haya leído el último registro del archivo,
sin cambiar la programación original, habría que incluir al final del módulo
principal del programa una sentencia como esta:

C LR                EXSR  SR_LR

En la rutina se puede abrir el formato free y ya no hace falta detectar el
EOF



El 4 de agosto de 2009 15:02, Nelson Brizuela <[email protected]
> escribió:

> [email protected] escribió:
>
>> Hola Foro
>> Tengo un archivo secuencial abierto con primario(P) en la hoja F, lo
>> que necesito es saber en FREE el fin de archivo (%eof).
>> Es Algo similar como esto
>>
>> C               IF      *INLR
>> C               EXSR   SR_LR
>> C               ENDIF
>>
> --
> Hola José;
>
> En FREE para lograr lo que estas buscando, reemplazar modo de acceso a tu
> archivo primario (P) por (F), leer tu archivo secuencialmente y luego
> preguntar por EOF, sería como esto;
>
>  /FREE
>        SetLl *start tu-archivo;
>        Read tu-archivo;
>        If %EOF;
>             ExSr SR_LR;
>        EndIf;
>  /END-FREE
>
> Otra forma podría ser dentro de un ciclo;
>
>        SetLl *start tu-archivo;
>        Read tu-archivo;
>        DoW Not %EOF;
>           hacer cosas;
>        Read tu-archivo;
>        EndDo;
>
>        ExSr SR_LR;
>
> Salu2,
> --
> Nelson Brizuela Garcete
>
>
> ____________________________________________________
> © Publicaciones Help400, S.L. - Todos los
> derechos reservados http://www.help400.es
> ----------------------------------------------------
> Para darte de baja visita la siguente URL:
> http://listas.combios.es/mailman/listinfo/forum.help400
>
____________________________________________________
© Publicaciones Help400, S.L. - Todos los
derechos reservados http://www.help400.es
----------------------------------------------------
Para darte de baja visita la siguente URL:
http://listas.combios.es/mailman/listinfo/forum.help400

Responder a