增加CL中的文本字段

Kev*_*vin 2 control-language ibm-midrange

我必须在iSeries计算机上更改CL程序.原始CL有一个名为&SEQ的变量.它是一个值为"001"的文本字段.是否有可能在CL中添加一个值使其成为'002'?我不熟悉CL编程,所以我不知道你是否可以在字符变量上做数学函数.谢谢你的帮助!

小智 6

要做到这一点,你必须使用*DEC CL变量,然后将其移动到文本字段.在程序的顶部添加以下行:

DCL &SEQNBR *DEC 3 VALUE(1)
Run Code Online (Sandbox Code Playgroud)

然后在程序中你要增加序列号的位置执行以下操作:

CHGVAR &SEQNBR VALUE(&SEQNBR + 1)
CHGVAR &SEQ VALUE(&SEQNBR)
Run Code Online (Sandbox Code Playgroud)

这里发生了什么?声明数值变量&SEQNBR的初始值为1.然后使用CHGVAR命令将其递增.这使其值为2.然后将其移动到文本字段&SEQ,它将接收值为'002'.