Es posible manejar múltiples instancias de un mismo archivo en un CLP. El límite de instancias es cinco. Es decir, podemos declarar cinco veces el mismo archivo en un programa CLP indicando distintos OPNID en sus declaraciones respectivas.
En el código que muestro a continuación pueden ver el mismo archivo declarado dos veces con distinto OPNID.
Cuando se va a leer información de un archivo es necesario realizar un OPNDBF antes del comando de lectura RCVF. El OPNDBF debe tener especificado el OPNID que identifica la instancia del archivo que va a ser aperturado.
El código de ejemplo que les presento a continuación trata de un programa que maneja
Inicio: PGM
/*El mismo archivo declarado dos veces con distintos OPNID */
DCLF FILE(LIBRERIA/ABAPF004) RCDFMT(ABARC004) +
OPNID(ABAPF)
DCLF FILE/(LIBRERIA/ABAPF004) RCDFMT(ABARC004) +
OPNID(ABAnue)
OPNDBF FILE(LIBRERIA/ABAPF004) OPTION(*ALL) +
MBR(*FIRST) OPNID(ABAPF) ACCPTH(*FILE)
RCVF RCDFMT(ABARC004) OPNID(ABAPF)
CLOF OPNID(ABAPF)
ADDPFM FILE(LIBRERIA/ABAPF004) MBR(NUEVO) +
SHARE(*YES)
CPYF FROMFILE(LIBRERIA/ABAPF004) +
TOFILE(LIBRERIA/ABAPF004) TOMBR(NUEVO) +
MBROPT(*ADD) FROMRCD(1) TORCD(1)
OPNDBF FILE(LIBRERIA/ABAPF004) OPTION(*ALL) +
MBR(nuevo) OPNID(abanue) ACCPTH(*FILE)
OVRDBF FILE(ABAPF004) TOFILE(LIBRERIA/ABAPF004) +
MBR(NUEVO) POSITION(*START) SHARE(*YES)
RCVF RCDFMT(ABARC004) OPNID(ABANUE)
MONMSG MSGID(CPF0864) EXEC(GOTO FIN)
CLOF OPNID(ABAnue)
FIN: ENDPGM
Autor: Ing. Liliana Suárez.
Si te pareció interesante el artículo reenvíalo a un amigo, haciendo click en el sobrecito que está al final del artículo. El conocimiento es valioso, compártelo.
Si te pareció interesante el artículo reenvíalo a un amigo, haciendo click en el sobrecito que está al final del artículo. El conocimiento es valioso, compártelo.