|
I've got a real head-scratcher here, folks. In my attempt to avoid using
TESTN for many numeric variables, I thought I'd be smart and just move an
entire record to a data structure and let the *PSSR catch the DDEs. Fat
chance, as it turns out.
I wrote a preprocessor program to read through a flat file coming from our
Oracle box, just one 256-byte field from the input file. I'm MOVEL'ing it
into a data structure that has several zoned decimal fields defined in it. In
debug, I can see the hex values that have decidedly invalid bytes:
Variable . . . . . . . . . . . . . . . : DTLHI#
Type . . . . . . . . . . . . . . . . : ZONED
Length . . . . . . . . . . . . . . . : 9 0
* . . . + . . . . 1 . . . . + .
F040F140F540F240F2
DTLHI# is defined in the data structure. Notice the embedded blanks.
Variable . . . . . . . . . . . . . . . : HDLITM
Type . . . . . . . . . . . . . . . . : PACKED
Length . . . . . . . . . . . . . . . : 9 0
* . . . + . . . . 1 . . . . + .
001050202F
The HDLITM shown above is the result of a Z-ADD DTLHI# HDLITM.
I also have examples of using other characters and getting no program
exceptions.
I've coded the following *PSSR in the hopes of catching these errors
gracefully:
C *PSSR BEGSR
C MOVEL@PSSRE #ERROR
C MOVE *ON *INLR
C DUMP
C RETRN
C ENDSR
Any clues about what I'm doing wrong or the assumptions I've made about *PSSR
& DDEs?
Dan Bale
IT - AS/400
Handleman Company
248-362-4400 Ext. 4952
+---
| 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-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.