I'm trying to call a subroutine for each value of an I-Descriptor, but
without much luck.  The subroutine looks like:

SUBROUTINE D.CURRDELITEM (RetValue, passValue)
COMMON /CURRDELITEM_variables/ ARTLEDGER.FV
InvId    = TRIM(passValue)
RetValue = ''
IF NOT(ASSIGNED(ARTLEDGER.FV)) THEN
   OPEN '', 'ARTLEDGER' TO ARTLEDGER.FV ELSE RETURN
END
READ TrInvRec FROM ARTLEDGER.FV, InvId THEN
   RetValue = 1
END ELSE
*  RetValue = '0'
   RetValue = OCONV(InvId, 'MX')
END
RETURN
END

I have a file with multiple invoice#s in field# 35 (INVS):

   035 77]79]81]82]84]85]86]87]89

The key is "790*4/1".  An I-Descriptor named CURRDEL looks like:

   002 CATS(REUSE(@ID:'*'), @RECORD<35>)

gives me:

LIST ARTMASTER "790*4/1" INVS CURRDEL 06:03:34pm  12 Dec 2005  PAGE    1
ARTMASTER... INVOICES DEL............

790*4/1            77      790*4/1*77
                   79      790*4/1*79
                   81      790*4/1*81
                   82      790*4/1*82
                   84      790*4/1*84
                   85      790*4/1*85
                   86      790*4/1*86
                   87      790*4/1*87
                   89      790*4/1*89

1 records listed.

However, I want each key in the "DEL..." column to be passed to a program
named "D.CURRDELITEM", and all I get is:

   002 SUBR("D.CURRDELITEM", CATS(REUSE(@ID:'*'), @RECORD<35>))

LIST ARTMASTER "790*4/1" INVS CURRDEL 06:52:25pm  12 Dec 2005  PAGE    1
ARTMASTER... INVOICES DEL............

790*4/1            77 3739302A342F312
                      A3737FD3739302A
                      342F312A3739FD3
                      739302A342F312A
                      3831FD3739302A3
                      42F312A3832FD37
                      39302A342F312A3
                      834FD3739302A34
                      2F312A3835FD373
                      9302A342F312A38
                      36FD3739302A342
                      F312A3837FD3739
                      302A342F312A383
                      9
                   79
                   81
                   82
                   84
                   85
                   86
                   87
                   89

1 records listed.

It looks like the subroutine was only called once and the entire string of
invoice keys was passed in at one time.  So, I know I haven't handled the
complete multi-value properly.

Can anyone help.  Thanks in advance.

Bill
-------
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

Reply via email to