|
-----Original Message-----
From: RPG400-L [mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of
CRPence
Sent: Monday, May 05, 2014 3:19 PM
To: rpg400-l@xxxxxxxxxxxx
Subject: Re: Varying length subfield contains blanks instead of length
0 ?
On 05-May-2014 13:41 -0500, Koester, Michael wrote:
In this particular case, I'm working with an array DS. I'm findingshort
that even when I initialize the DS, the "empty" subfields contain all
x'4040'. And when I test for *blanks, or for %len(...) = 0, I get
blown out by the index exceeding the range (its dim(32) is a bit
of 4040).
Perhaps sharing the declarative might clarify. The previously
recommended initialization using INZ, AFaIK, should establish a zero-
length "varying" value for each element of the DS array. That has
always functioned well for me; again, AFaIK.
Looks like a MONITOR block is my only [albeit not especially elegant]
way out. Gotta love it.
If there is difficulty with the RPG default initialization phase,
IMO a much better resolution than monitoring for the 115 error [RNX0115
"Length of varying length variable is out of range"], would be to
effect an explicit user-coded initialization phase; at least with such
a small DIM().
Another option would be to test the length, without the error and
thus without a monitor, having defined an OVERLAY() to the length
portion of the "varying" data; i.e. comparing that variable to the
decimal value 16448 [0x4040].
--
Regards, Chuck
--
This is the RPG programming on the IBM i (AS/400 and 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.
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.