문제

I have to change a CL program on an iSeries computer. The original CL has a variable called &SEQ. It is a text field with a value of '001'. Is there a way possible in CL to add one to the value to make it '002'? I'm not familiar with CL programming, so I don't know if you can do mathematic functions on a character variable. Thanks for any help!

도움이 되었습니까?

해결책

Do to that you have to use a *DEC CL variable and then move it into the text field. At the top of the program add the following line:

DCL &SEQNBR *DEC 3 VALUE(1)

Then in the program at the point where you want to increment the sequence number do this:

CHGVAR &SEQNBR VALUE(&SEQNBR + 1)
CHGVAR &SEQ VALUE(&SEQNBR)

What is going on here? You declare the numeric variable &SEQNBR with an initial value of 1. Then increment it using the CHGVAR command. This makes its value 2. Then you move it to the text field &SEQ and it will receive the value as '002'.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top