You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CLP程序调试时如何自动执行后续CALL命令?

解决CLP中STRISDB执行后需手动返回的问题

核心问题是STRISDB默认会进入交互式调试界面(Request level:3),打断了CLP的自动执行流程。可以通过以下两种方法让程序自动执行后续的CALL命令:

方法一:给STRISDB添加*NOINTERACT参数

修改STRISDB命令,加入OPTION(*NOINTERACT)选项,让它仅完成调试环境初始化,不进入交互界面,CLP会自动继续执行后续命令:

PGM
/* 1st command */
CRTCBLPGM PGM(QTEMP/TESTPGM) +
          SRCFILE(MYSRC/QLBLSRC) +
          OPTION(*SRCDBG)
/* 2nd command - 加入*NOINTERACT避免进入交互调试 */
STRISDB PGM(QTEMP/TESTPGM) +
        INVPGM(*NO) +               
        SRCF(MYSRC/QLBLSRC) +
        OPTION(*NOINTERACT)
/* 3rd command to trigger the TESTPGM */
CALL PGM(BMANMTHRD) +                                
     PARM('TESTPGM' X'000000001F' 'P' X'001F')       
ENDPGM                                               

当BMANMTHRD触发TESTPGM时,调试器会自动激活并进入调试流程,全程无需手动干预。

方法二:用STRDBG替代STRISDB

如果STRISDB的参数调整不符合需求,也可以使用STRDBG命令来预设置调试环境,它默认不会进入交互界面:

PGM
/* 1st command */
CRTCBLPGM PGM(QTEMP/TESTPGM) +
          SRCFILE(MYSRC/QLBLSRC) +
          OPTION(*SRCDBG)
/* 2nd command - 使用STRDBG设置调试环境 */
STRDBG PGM(QTEMP/TESTPGM) +
       SRCFILE(MYSRC/QLBLSRC) +
       OPTION(*SRCDBG)
/* 3rd command to trigger the TESTPGM */
CALL PGM(BMANMTHRD) +                                
     PARM('TESTPGM' X'000000001F' 'P' X'001F')       
/* 可选:调试完成后关闭调试环境 */
ENDDBG
ENDPGM                                               

STRDBG会提前配置好TESTPGM的调试参数,当程序被触发时自动启动调试,CLP流程完全自动执行。

内容的提问来源于stack exchange,提问作者Asymptote

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 02:33:29