|
Thanks Marco --- Barbara Morris <bmorris@xxxxxxxxxx> wrote: > Marco Facchinetti wrote: > > > > Barbara, what are the risks if the activation group ends and the files > are > > not yet closed? > > > > The only thing I can think of (a somewhat farfetched scenario) is that > you might have an incomplete block of records waiting to be written out > to a blocked output file. When the file gets closed automatically > because of the activation group ending, the block of records will be > written out. If the block contains a record with a data mapping error, > that record and all the records following it will not get written out to > the file. > > If you don't want to close your output files, you can still write out > any incomplete blocks by using FEOD on your blocked output files before > you return. (Use FEOD(N) for best performance.) If you use FEOD, > you'll get an exception in your program if there are any data mapping > errors, instead of possibly having to wait until RCLACTGRP time and > missing the errors. > > It's not that easy to get a data-mapping error on output. The only way > I know to do it using RPG is to have a file with a date, time or > timestamp field, and get RPG to write out the record without checking > the d/t/z. You can do this either a) by incorrectly program-describing > the file to have character fields, or b) by using a result DS for an > externally-described file, and not putting a valid value in the d/t/z > subfield. > > Example: > > * File JUNK > A R REC > A DATE L > > * RPG program JUNKPGM > H dftactgrp(*no) actgrp('JUNK') > FJUNK o f 10 disk > F#junkf o f 10 disk > D ds ds 10 > C eval ds = '2005-01-01' > C write junk ds > C eval ds = 'bad date' > C write junk ds > C eval ds = '2005-01-03' > C write junk ds > C return > > ===> CALL JUNKPGM > ===> RCLACTGRP JUNK > - check the joblog - it will say 2 records were lost > - check the file - it will only show 2005-01-01 > > -- > This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list > To post a message email: RPG400-L@xxxxxxxxxxxx > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/mailman/listinfo/rpg400-l > or email: RPG400-L-request@xxxxxxxxxxxx > Before posting, please take a moment to review the archives > at http://archive.midrange.com/rpg400-l. > > __________________________________ Yahoo! FareChase: Search multiple travel sites in one click. http://farechase.yahoo.com
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.