请问各位大虾,在qbatch里面提交的作业执行时,怎么不能de bug ,在程序中加dsplay也不会跳出的 xuguopeng 回复于:2005-06-22 14:33:20 既然是SUB MI T那就是在后台运行当然不能DSPLAY了 在命令行直接CALL下吧 sh-vagr ant 回复于:2005-06-22 14:36:00 因
请问各位大虾,在qbatch里面提交的作业执行时,怎么不能debug,在程序中加dsplay也不会跳出的
xuguopeng 回复于:2005-06-22 14:33:20既然是SUBMIT 那就是在后台运行 当然不能DSPLAY了
在命令行直接CALL下吧
sh-vagrant回复于:2005-06-22 14:36:00因为是批处理,而且程序是triger触发的,单独call,环境就不对了,所请各位大虾指点,
请问各位大虾,在qbatch里面提交的作业执行时,怎么不能debugWindows系统
。Eagle_wolf 回复于:2005-06-22 14:55:54可以这样做 在你要跟踪的程序的开始 加一个需要长时间执行的循环 或 dlyjob
之类的东西, 当它被调用的时候用wrkactjob 看一下它的jobname jobuser jobnum
然后 strsrvjob
strdbg
例如
[code:1:8864c68f6e] eval I = 1
do *hival
if I = 0
leave
endif
enddo
在debug里面的命令行上 eval i = 0 即可以跳出循环
另外 batch下的dsply 是显示在你默认的msgq里面 一般是qsysopr
也可以 dsply 'mesgqname' aaaa [/code:1:8864c68f6e]
sh-vagrant 回复于:2005-06-22 16:47:15谢谢,我去尝试一下
qingzhou 回复于:2005-06-23 20:57:55我说说如何在批处理作业进行DEBUG的详细操作步骤~~~
1,
电脑资料
《请问各位大虾,在qbatch里面提交的作业执行时,怎么不能debugWindows系统》(https://www.unjs.com)。以HOLD(*YES)参数提交JOB到QBATCH JOB中,让JOB暂时挂起;2。使用WRKSBMJOB查看所提交的JOB的以下3个参数值:
*Job id
*User Name
*Job Number
3。执行STRSRVJOB,填入第2步骤获得的3个参数进行QBATCH JOB服务过程;
4。执行STRDBG开始DEBUG;
5。利用F21键切换到命令行,在命令行执行WRKSBMJOB,使用6=Release释放挂起的第1步骤提交的JOB,然后系统允许你按F10输入DEBUG命令(注意:不要键入执行,否则在设立断点之前键入执行,程序就会运行,因而无法进行debug断点设置);
6。在OS/400命令行窗口;执行DSPMODSRC后,可通过F6设置断点;然后按F3退出,再按F12退出命令行;
7。键入执行释放挂起的JOB;程序将在断点中停留;可以使用交互式DEBUG使用DEBUG命令进行处理;
8。一旦程序或者JOB结束,使用ENDDBG和ENDSRVJOB结束操作。
<顺便提醒>
如果在批处理作业的RPGIV程序中出现交互语句,如:DSPLY;显示文件输入输出语句程序的调用,如:EXFMT,作业将会被挂起处于MESSAGE WAIT状态,这是因为批处理作业无法处理显示信息而引起的。
ibmas400 回复于:2005-06-24 12:04:31顶~~~
困惑了一段时间的问题终于找到答案、谢谢了。
qingzhou牛哥、好久不见、最近baby还好吧。:mrgreen:
zyzng 回复于:2005-06-24 12:45:48补冲一下,如果是RPG III的话,可以不用STRSRVJOB,STRISDB时有个参数 JOB 用*SELECT就会出现SELECT JOB画面
ibmas400 回复于:2005-06-26 13:24:09[quote:8f54d30ee7="zyzng"]补冲一下,如果是RPG III的话,可以不用STRSRVJOB,STRISDB时有个参数 JOB 用*SELECT就会出现SELECT JOB画面[/quote:8f54d30ee7]
支持、支持!
谁还有补充 ,继续。。。 :P
原文转自:http://www.ltesting.net