Hi William,
You could have the program read in the old file and write out to the new file while monitoring for any issues. If you encounter an issue, write to a bad file (which should have the same layout as the 'old' file).
D ds_Bad DS LikeRec( BadFileFmt: *output )
D ds_Old DS LikeRec( OldFileFmt )
D ds_New DS LikeRec( NewFileFmt: *output )
Read OldFile ds_Old;
If not %eof( OldFile );
evalR ds_New = ds_Old;
// Handle any change in field name/definitions
Monitor;
ds_New.SizeN = %int( ds_Old.SizeA );
Write NewFileFmt ds_New;
On-Error;
ds_Bad = ds_Old;
Write BadFile ds_Bad;
EndMon;
EndIf;
Kurt Anderson
Sr. Programmer/Analyst
CustomCall Data Systems
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Willie J. Moore
Sent: Monday, February 20, 2012 12:47 PM
To: rpg400-l@xxxxxxxxxxxx
Subject: Print Data Decimal Error in RPGLE
I have to convert a size field which is currently defined as alph in to a decimal field. I have been able to convert a large portion of the file to the new size field.
What I would like to do is get a printout of the records that have a data decimal error.
This way I would not have to step though (DBG) the whole file (2M
records) looking for an decimal error to appear.
I was hoping someone could give me some ideas on how to do this inside the RPGLE program or suggestions on a better way.
Thanks,
William Moore
California Fine Wire, Co.
805-489-5144
--
This is the RPG programming on the IBM i / System i (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.
As an Amazon Associate we earn from qualifying purchases.