Page 1 of 1

Symbol substitution problem

PostPosted: Wed Jan 05, 2011 3:26 pm
by stevexff
I've got a really simple statement that uses symbol substitution that won't seem to parse properly. Here are the sort control statements
 SORT FIELDS=COPY
 INCLUDE FORMAT=BI,COND=(IBMSNAP_INTENTSEQ,10,GE,
    X'0000C7212B7EBAAC0000',AND,
    IBMSNAP_INTENTSEQ,10,LE,
    X'0000C72138DBF3AA0000')
the output from SYMNOUT
------- ORIGINAL STATEMENTS FROM SYMNAMES -------
IBMSNAP_INTENTSEQ,310

------------------ SYMBOL TABLE -----------------
IBMSNAP_INTENTSEQ,310
and the SYSOUT
ICE270I 0 PROCESSING SYMNAMES STATEMENTS
ICE280I 1 ORIGINAL STATEMENTS FROM SYSIN    FOLLOW
           SORT FIELDS=COPY
           INCLUDE FORMAT=BI,COND=(IBMSNAP_INTENTSEQ,10,GE,
              X'0000C7212B7EBAAC0000',AND,
              IBMSNAP_INTENTSEQ,10,LE,
              X'0000C72138DBF3AA0000')
ICE282I 0 PERFORMING SYMBOL SUBSTITUTION AS NEEDED
           INCLUDE FORMAT=BI,COND=(IBMSNAP_INTENTSEQ,10,GE,
                                                        $
ICE283A 0 SYMBOL, SYNTAX OR DELIMITER ERROR
              X'0000C7212B7EBAAC0000',AND,
              IBMSNAP_INTENTSEQ,10,LE,
              X'0000C72138DBF3AA0000')
ICE287A 0 ONE OR MORE ERRORS ENCOUNTERED DURING SYMBOL SUBSTITUTION
ICE751I 0 C5-K90013 E7-K44563
ICE052I 3 END OF DFSORT
If I change the SYSIN to replace IBMSNAP_COMMITSEQ with 310, it works fine. But I already use this same symbol file in another sort job, where it works perfectly, so I'm at a bit of a loss to work out why it doesn't parse this properly. It's almost as if he doesn't realise that IBMSNAP_COMMITSEQ is a symbol in this context.

If anyone can offer any suggestions they would be most welcome, as I am out of ideas...

Re: Symbol substitution problem

PostPosted: Wed Jan 05, 2011 6:18 pm
by NicC
How about providing a line continuation character?

Re: Symbol substitution problem

PostPosted: Thu Jan 06, 2011 12:58 am
by Frank Yaeger
You can't use a Symbol for p in that context. You must use a Symbol for p,m

This would work:

IBMSNAP_INTENTSEQ,310,10

  INCLUDE FORMAT=BI,COND=(IBMSNAP_INTENTSEQ,GE,...

Re: Symbol substitution problem

PostPosted: Fri Jan 07, 2011 1:32 pm
by stevexff
Frank

Thanks for the info, I tried it and it works perfectly. Is this restriction documented anywhere?

Re: Symbol substitution problem

PostPosted: Tue Jan 11, 2011 1:56 am
by Frank Yaeger
Yes, here:

http://publibz.boulder.ibm.com/cgi-bin/ ... 0630155256

you can use fields (p1,m1,f1 and p1,m1 and p2,m2,f2 and p2,m2)