|
Kerwin Crawford wrote: > > I know this is a RPG list but I don't know of a CLP list. > I have a CLP that is basically the following. The main process is to > read all of the files in a library do some things with it and then > read all of the files from a related library and do some things. See > example: > DCLF FILE(QTEMP/FILE) > DSPOBJD OBJ(LIB1/*ALL) OBJTYPE(*FILE) + > OUTPUT(*OUTFILE) OUTFILE(QTEMP/FILE) + > OUTMBR(*FIRST *REPLACE) > LOOP1: RCVF DEV(*FILE) RCDFMT(*FILE) WAIT(*YES) > MONMSG MSGID(CPF0864) EXEC(GOTO CMDLBL(EOF1)) > /* Code... */ > GOTO CMDLBL(LOOP1) > EOF1: > DLTF FILE(QTEMP/FILE) > DSPOBJD OBJ(LIB2/*ALL) OBJTYPE(*FILE) + > OUTPUT(*OUTFILE) OUTFILE(QTEMP/FILE) + > OUTMBR(*FIRST *REPLACE) > LOOP2: RCVF DEV(*FILE) RCDFMT(*FILE) WAIT(*YES) > MONMSG MSGID(CPF0864) EXEC(GOTO CMDLBL(EOF2)) > /* Code... */ > GOTO CMDLBL(LOOP2) > EOF2: > DLTF FILE(QTEMP/FILE) > My problem is that when it gets to the second rcvf it acts as if it > has hit the EOF before processing the first record. I have tried > putting in ovrdbf in several ways, but never got it to work. There has > to be a way to reset the pointer or message to allow for the second > rcvf. You could use the TFRCTL command at the end of your pgm to transfer control to another iteration of the same program passing it parameters for which library you want to process and also remember you have to control when you want the program to end(i.e. bypass the TFRCTL command). This will allow creation of a new ODP for the file you are reading. Hope this helps!! Billy +--- | This is the RPG/400 Mailing List! | To submit a new message, send your mail to RPG400-L@midrange.com. | To subscribe to this list send email to RPG400-L-SUB@midrange.com. | To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.