I assume it is the pointer that SQL cannot handle very well.
What happens if you define your overlaid array as follows:
DCL-DS NamedIndDS Inz;
ImLfCmpTID like(NULL_VALUE);
CiCompPTID like(NULL_VALUE);
ImLfSeqTID like(NULL_VALUE);
BoyExtTtl like(NULL_VALUE);
YtdExtTtl like(NULL_VALUE);
ExtIdx like(NULL_VALUE);
AbsRto like(NULL_VALUE);
TmsLstExt like(NULL_VALUE);
TmsLstLRl like(NULL_VALUE);
TmsLclCmp like(NULL_VALUE);
TmsCrpAct like(NULL_VALUE);
AddByUsr like(NULL_VALUE);
AddByPgm like(NULL_VALUE);
AddTs like(NULL_VALUE);
ChgByUsr like(NULL_VALUE);
ChgByPgm like(NULL_VALUE);
ChgTs like(NULL_VALUE);
CiCompTID2 like(NULL_VALUE);
CIORGKY like(NULL_VALUE);
CIORGNM like(NULL_VALUE);
CITYPID like(NULL_VALUE);
CIIKEY like(NULL_VALUE);
CIAKEY like(NULL_VALUE);
CISTAT like(NULL_VALUE);
CICRPTYP like(NULL_VALUE);
CISKEY like(NULL_VALUE);
CITIER like(NULL_VALUE);
ExtSeqCde like(NULL_VALUE);
ExtSeqDsc like(NULL_VALUE);
ExtSeqOrd like(NULL_VALUE);
IMLFCMP_Ary like(NULL_VALUE) dim(IMLFCMP_VCol2) Pos(1);
end-ds;
Mit freundlichen Grüßen / Best regards
Birgitta Hauser
"Shoot for the moon, even if you miss, you'll land among the stars." (Les
Brown)
"If you think education is expensive, try ignorance." (Derek Bok)
"What is worse than training your staff and losing them? Not training them
and keeping them!"
?Train people well enough so they can leave, treat them well enough so they
don't want to.? (Richard Branson)
-----Ursprüngliche Nachricht-----
Von: MIDRANGE-L [mailto:midrange-l-bounces@xxxxxxxxxxxx] Im Auftrag von
dlclark@xxxxxxxxxxxxxxxx
Gesendet: Thursday, 17.11 2016 17:40
An: Midrange Systems Technical Discussion
Betreff: Re: AW: SQL Indicator Arrays
"MIDRANGE-L" <midrange-l-bounces@xxxxxxxxxxxx> wrote on 11/17/2016
11:22:30 AM:
Please post the syntax of the overlaid Indicator array!
There are multiple ways to define it.
Thanks, Birgitta. I posted it yesterday but here it is again. The
following works fine but, as I mentioned, I can't use just the array in all
situations and I can't use just the data structure in all situations.
I find that I have to mix and match in order to satisfy the SQL precompiler.
But what I would really like is if I could get RPG to generate the parallel
data structure as named indicators. A supported syntax such as
LIKEDS(IMLFCMP_VIEW2: 'LIKE(NULL_VALUE)') would work great to generate the
same subfield list but with the specified data definition as an override.
// number of columns in SQL row
dcl-c IMLFCMP_VCol1 17;
dcl-c IMLFCMP_VCol2 30;
// data structures for SQL column data
dcl-ds IMLFCMP_View1 extname('IMLFCMPV01') qualified inz end-ds; dcl-ds
IMLFCMP_View2 extname('IMLFCMPV02') qualified inz end-ds;
// SQL indicator array with overlay of named indicators
dcl-s IMLFCMP_Ary like(NULL_VALUE) dim(IMLFCMP_VCol2) inz;
dcl-s IMLFCMP_Ptr like(pointer_t) inz(%addr(IMLFCMP_Ary));
dcl-ds IMLFCMP_Ind based(IMLFCMP_Ptr) qualified;
ImLfCmpTID like(NULL_VALUE);
CiCompPTID like(NULL_VALUE);
ImLfSeqTID like(NULL_VALUE);
BoyExtTtl like(NULL_VALUE);
YtdExtTtl like(NULL_VALUE);
ExtIdx like(NULL_VALUE);
AbsRto like(NULL_VALUE);
TmsLstExt like(NULL_VALUE);
TmsLstLRl like(NULL_VALUE);
TmsLclCmp like(NULL_VALUE);
TmsCrpAct like(NULL_VALUE);
AddByUsr like(NULL_VALUE);
AddByPgm like(NULL_VALUE);
AddTs like(NULL_VALUE);
ChgByUsr like(NULL_VALUE);
ChgByPgm like(NULL_VALUE);
ChgTs like(NULL_VALUE);
CiCompTID2 like(NULL_VALUE);
CIORGKY like(NULL_VALUE);
CIORGNM like(NULL_VALUE);
CITYPID like(NULL_VALUE);
CIIKEY like(NULL_VALUE);
CIAKEY like(NULL_VALUE);
CISTAT like(NULL_VALUE);
CICRPTYP like(NULL_VALUE);
CISKEY like(NULL_VALUE);
CITIER like(NULL_VALUE);
ExtSeqCde like(NULL_VALUE);
ExtSeqDsc like(NULL_VALUE);
ExtSeqOrd like(NULL_VALUE);
end-ds;
Sincerely,
Dave Clark
--
int.ext: 91078
direct: (937) 531-6378
home: (937) 751-3300
Winsupply Group Services
3110 Kettering Boulevard
Dayton, Ohio 45439 USA
(937) 294-5331
****************************************************************************
*****************
This email message and any attachments is for use only by the named
addressee(s) and may contain confidential, privileged and/or proprietary
information. If you have received this message in error, please immediately
notify the sender and delete and destroy the message and all copies. All
unauthorized direct or indirect use or disclosure of this message is
strictly prohibited. No right to confidentiality or privilege is waived or
lost by any error in transmission.
****************************************************************************
*****************
--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe,
or change list options,
visit:
http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at
http://archive.midrange.com/midrange-l.
Please contact support@xxxxxxxxxxxx for any subscription related questions.
As an Amazon Associate we earn from qualifying purchases.