BATCH JOB可以有屏幕吗?-- 答案分析

发布于 2022-08-20 18:13:20 字数 801 浏览 12 评论 9

其实DSPLAY FILE可不可以用,跟你那JOB是INTERACTIVE还是BATCH一点关系也没有。你想一想操作系统的作业全部都是BATCH的,它们不是照样可以把登录屏幕发到你的工作站?

那么为什么将显示程序SUBMIT TO BATCH会失败呢?原来DISPLAY FILE需要你给它指定一个工作站。不然它把屏幕发到哪里去呢?无处可发,当然作业就失败了。

你编译DISPLAY FILE的时候,缺省的工作站是*REQUESTER,就是你交互式作业的工作站。你运行交互式作业时,你的屏幕就显示在你自己的工作站上。BATCH JOB 没有缺省工作站,那就需要你指定一个,才能成功运行。

工作站指定的可以在CRTDSPF, CHGDSPF 时进行。不过我们通常还是觉得缺省值比较适用于多数情况,于是就不必改了。

有特殊要求的时候用OVRDSPF 便可以了。用了OVRDSPF, 你想把屏幕发去任何现有,又没有人在用的工作站都可以。

那别人的工作站如果已经有人登录,系统就锁上了该资源,你自然就不能用它了。

如果哪个工作站还没有人用,处于VERY ON  或SIGNON DISPLAY状态,你就可以将你的屏幕发过去。

查看那些工作站的状态可以用的CL命令是:

WRKCFGSTS CFGTYPE(*DEV) CFGD(*DSP)   

当然还需要有使用该工作站的使用权限。不过一般没有有人设置这种权限的限制。

[ 本帖最后由 franliu 于 2009-11-25 20:18 编辑 ]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

葬花如无物 2022-09-01 23:53:02

搞定了,原来是这样的啊,为什么用过的工作站就不能用了呢?我也没有进入自己的画面啊,还是输用户的界面哦

梦里寻她 2022-09-01 23:42:22

哦。你想发送去的那个工作站已经由人登录了,被操作系统锁住了所以不能用。

你一个配置一个新的工作站,当登陆屏幕出现时,你再发过去试试看?

沐歌 2022-09-01 21:25:19

就是DSPF的RECORD要不要建立?另外我按你的前一帖子做了,但是出来MSGW,我查看显示为CALL PGM(TTEST2)                                                        
Not able to allocate object CAEDPPOA.                                   
Not able to allocate objects needed for file Z#D004 in library POPGLIB  
  member or program device CAEDPPOA.                                    
请问哪个环节出了问题呢?我需要重新编译Z#D004(DSPF)么?

甜警司 2022-09-01 08:10:47

例子前面的贴子里面已经介绍过啦。我好像没有提到过RCD哦,你是指什么?

初见 2022-08-31 15:37:44

有时候操作系统替你触发出错处理程序,出错处理程序显示新的屏幕。而这个屏幕其实还是由你的JOB自己发出的。

又譬如有人用sndbrkmsg发信息给你,其实是你的作业的监听程序显示那个message的屏幕。你用shift-esc,3,11看program stack,比较收到breakmessage前后的program stack就明白啦。

逻辑上你可以认为那些屏幕是操作系统发给你的,但是在具体实现上则是由你自己的作业发出的。

如果你自己写一个程序想让别人可以发信息给你,唯一的办法就是在你的程序里监听别人的信息。

你再想想看你用qq或msn聊天的时候,别人发给你的信息到底是别人的电脑操控你的电脑发给你的,还是你自己的电脑程序写在屏幕上的呢?

你已经登录后你的工作站资源就被锁住了,操作系统也无法解锁,硬把一个屏幕发送给你的。

[ 本帖最后由 franliu 于 2009-11-26 09:56 编辑 ]

情绪失控 2022-08-31 11:31:39

不懂。是建立一个DSPF,需要RCD的么?给个例子吧

春庭雪 2022-08-29 01:40:49

你说“操作系统的作业全部都是BATCH的,它们不是照样可以把登录屏幕发到你的工作站?”
个人觉得有个问题:我的工作站是已经登录的,操作系统Batch job照样能发到我的屏幕,为什么在你的例子中的就不行呢?

还是有区别的

预谋 2022-08-22 16:36:15

没看哪本书。看batch job的job log, 就明白它说得的是缺什么(它说的是device *requester不可以用啦!)。然后想一想,试一试,就成功了, 写出来跟大家一起分享啦!

[ 本帖最后由 franliu 于 2009-11-26 01:58 编辑 ]

你曾走过我的故事 2022-08-21 20:13:57

说得有道理..我明天试试..请问你这那本书来的.......

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文