免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3195 | 回复: 10
打印 上一主题 下一主题

有关schedule执行状况检查 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-10-13 15:43 |只看该作者 |倒序浏览
wrkjobscde+5我们可以看到
Last attempted submission:                                    
  Status . . . . . . . . . . . :   Job successfully submitted.
是否有什么办法很容易知道每个schedule job都有提交且正常执行呢?

论坛徽章:
0
2 [报告]
发表于 2006-10-13 16:20 |只看该作者
查看日志应该可以解决问题

论坛徽章:
0
3 [报告]
发表于 2006-10-13 23:43 |只看该作者
把schedule job指定到一个独立的子系统
定期看看job的状态,一般都是message waiting的出问题。

论坛徽章:
0
4 [报告]
发表于 2006-10-15 13:46 |只看该作者
有个比较麻烦的方法
你先用WRKJOBSCDE OUTPUT(*PRINT) PRTFMT(*BASIC) 产生一个SPOOL FILE
然后再用CPYSPLF命令把SPOOL FILE复制到DB中
再然后写个程序操作DB来判断。

呵呵。

论坛徽章:
0
5 [报告]
发表于 2006-10-20 08:39 |只看该作者
WRKJOBSCDE OUTPUT(*PRINT)  PRTFMT(*FULL) 看不到schedule执行状况,若用WRKJOBSCDE OUTPUT(*PRINT) PRTFMT(*FULL) ,能看到schedule执行状况,然后用cpysplf将report copy成file
这样可以基本上可以解决问题,但是一般schedule比较多,每天一个一个的看很麻烦。

论坛徽章:
0
6 [报告]
发表于 2006-10-20 08:54 |只看该作者
用WRKJOBSCDE OUTPUT(*PRINT) PRTFMT(*BASIC)  执行后的SPOOL FILE如下:


  1. 作业        编码   Sts    日期       时间     Frq        操作     队列        库          调度者      文本        
  2. I000096     000021  SCD   *ALL       07:50:00  *WEEKLY   *SBMRLS  *JOBD                   SCMS                     
  3. SCMSPHZ     000017  SCD   USER DEF   07:30:00  *WEEKLY   *SBMRLS  *JOBD                   SCMS                     
复制代码

其中STS就是你要的执行状况

论坛徽章:
0
7 [报告]
发表于 2006-10-23 10:07 |只看该作者
楼上说的那个sts不能看出上一次的执行状况,要判定schedule上否有提交并执行成功,必须用WRKJOBSCDE OUTPUT(*PRINT) PRTFMT(*FULL) . 或者用wrkjobscde+5看里面的状态.

论坛徽章:
0
8 [报告]
发表于 2006-10-23 11:16 |只看该作者
原帖由 ALCHU 于 2006-10-23 10:07 发表
楼上说的那个sts不能看出上一次的执行状况,要判定schedule上否有提交并执行成功,必须用WRKJOBSCDE OUTPUT(*PRINT) PRTFMT(*FULL) . 或者用wrkjobscde+5看里面的状态.


你可以用API来实现.
但我不知道怎么用.
信息如下.

[ 本帖最后由 pantierui 于 2006-10-24 13:35 编辑 ]

1.GIF (27.03 KB, 下载次数: 29)

1

1

论坛徽章:
0
9 [报告]
发表于 2006-10-23 11:18 |只看该作者
API的相关信息到
http://publib.boulder.ibm.com/in ... c=/apis/apiprnt.htm
可以看看

介绍List Job Schedule Entries (QWCLSCDE) API的在iSeriesWork Management APIs文件中

[ 本帖最后由 pantierui 于 2006-10-23 11:32 编辑 ]

论坛徽章:
0
10 [报告]
发表于 2006-10-24 09:45 |只看该作者
用API的例子
他能取出一个SCHEDULE ENTRIES的相关信息
&LASTSTS好象就是你想要的.

  1.    /************************************************************************/
  2.    /*                                                                      */
  3.    /*     PROGRAM: CHGSCDEUSR                                              */
  4.    /*    LANGUAGE: CL                                                      */
  5.    /* DESCRIPTION: LIST JOB SCHEDULE ENTRIES                               */
  6.    /*      AUTHOR: PANTIERUI                                               */
  7.    /*        DATE: 2006/10/23                                              */
  8.    /*   APIS USED: QUSCRTUS, QWCLSCDE, QUSRTVUS                            */
  9.    /*                                                                      */
  10.    /************************************************************************/
  11.    PGM PARM(&JOBNAME)

  12.    /*                                                                   */
  13.    /* INPUT PARAMETERS ARE AS FOLLOWS:                                  */
  14.    /*                                                                   */
  15.     DCL        VAR(&JOBNAME) TYPE(*CHAR) LEN(10)
  16.    /* INPUT JOB NAME                                                    */
  17.    /*                                                                   */
  18.    /* LOCAL VARIABLES ARE AS FOLLOWS:                                   */
  19.    /*                                                                   */
  20.     DCL        VAR(&USRSPC) TYPE(*CHAR) LEN(20) VALUE('LISTSCDE  QTEMP     ')
  21.                /* USER SPACE NAME FOR APIS                              */
  22.     DCL        VAR(&CNTHDL) TYPE(*CHAR) LEN(16) VALUE('   ')
  23.                /* CONTINUATION HANDLE                                   */
  24.     DCL        VAR(&GENHDR) TYPE(*CHAR) LEN(140)
  25.                /* GENERIC HEADER INFORMATION FROM THE USER SPACE        */
  26.     DCL        VAR(&LSTSTS) TYPE(*CHAR) LEN(1)
  27.                /* STATUS OF THE LIST IN THE USER SPACE                  */
  28.     DCL        VAR(&OFFSETB) TYPE(*CHAR) LEN(4)
  29.                /* OFFSET TO THE LIST PORTION OF THE USER SPACE IN +
  30.                                          BINARY FORM                    */
  31.     DCL        VAR(&STRPOSB) TYPE(*CHAR) LEN(4)
  32.                /* STARTING POSITION IN THE USER SPACE IN BINARY FORM    */
  33.     DCL        VAR(&ELENB) TYPE(*CHAR) LEN(4)
  34.                /* LIST JOB ENTRY LENGTH IN BINARY 4 FORM                */
  35.     DCL        VAR(&LENTRY) TYPE(*CHAR) LEN(1156)
  36.                /* RETRIEVE AREA FOR LIST JOB SCHEDULE ENTRY             */
  37.     DCL        VAR(&INFOSTS) TYPE(*CHAR) LEN(1)
  38.                /* RETRIEVE AREA FOR INFORMATION STATUS                  */
  39.     DCL        VAR(&JOBNAM) TYPE(*CHAR) LEN(10)
  40.                /* RETRIEVE AREA FOR JOB NAME                            */
  41.     DCL        VAR(&ENTRY#) TYPE(*CHAR) LEN(6)
  42.                /* RETRIEVE AREA FOR ENTRY NUMBER                        */
  43.     DCL        VAR(&USERNM) TYPE(*CHAR) LEN(10)
  44.                /* RETRIEVE AREA FOR USER NAME                           */
  45.     DCL        VAR(&LASTSTS) TYPE(*CHAR) LEN(10)
  46.                /* Status of last attempted submission                   */

  47.    /*                                                                   */
  48.    /* THIS CREATES THE USER SPACE. THE USER SPACE WILL BE 256 BYTES     */
  49.    /* AND WILL BE INITIALIZED TO BLANKS.                                */
  50.    /*                                                                   */
  51.              CALL       PGM(QUSCRTUS) PARM(&USRSPC 'LISTSCDE  ' +
  52.                           X'00000100' ' ' '*ALL' 'LIST JOB SCHEDULE +
  53.                           ENTRIES')

  54.              MONMSG     MSGID(CPF3C00) EXEC(GOTO CMDLBL(ERROR))
  55.    /*                                                                   */
  56.    /* THIS LISTS JOB SCHEDULE ENTRIES OF THE NAME SPECIFIED.            */
  57.    /*                                                                   */
  58.              CALL       PGM(QWCLSCDE) PARM(&USRSPC 'SCDL0200' +
  59.                           &JOBNAME &CNTHDL 0)
  60.    /*                                                                   */
  61.    /* RETRIEVE THE GENERIC HEADER FROM THE USER SPACE.                  */
  62.    /*                                                                   */
  63.              CALL       PGM(QUSRTVUS) PARM(&USRSPC X'00000001' +
  64.                           X'0000008C' &GENHDR)

  65.              MONMSG     MSGID(CPF3C00) EXEC(GOTO CMDLBL(ERROR))
  66.    /*                                                                   */
  67.    /* GET THE INFORMATION STATUS FOR THE LIST FROM THE GENERIC HEADER.  */
  68.    /* IF IT IS INCOMPLETE, GO TO BADLIST LABEL AND SEND OUT 'BAD LIST'  */
  69.    /* MESSAGE.                                                          */
  70.    /*                                                                   */
  71.              CHGVAR     VAR(&LSTSTS) VALUE(%SST(&GENHDR 104 1))
  72.              IF         COND(&LSTSTS = 'I') THEN(GOTO CMDLBL(BADLIST))

  73.    /*                                                                   */
  74.    /* GET THE LIST ENTRY LENGTH AND THE LIST ENTRY OFFSET.              */
  75.    /* THESE VALUES ARE USED TO SET UP THE STARTING POSITION.            */
  76.    /*                                                                   */
  77.              CHGVAR     VAR(&ELENB) VALUE(%SST(&GENHDR 137 4))
  78.              CHGVAR     VAR(&OFFSETB) VALUE(%SST(&GENHDR 125 4))
  79.              CHGVAR     VAR(%BIN(&STRPOSB)) VALUE(%BIN(&OFFSETB) + 1)
  80.    /*                                                                    */
  81.    /* THIS RETRIEVES THE LIST ENTRY.                                     */
  82.    /*                                                                    */
  83.              CALL       PGM(QUSRTVUS) PARM(&USRSPC &STRPOSB &ELENB +
  84.                           &LENTRY)

  85.              MONMSG     MSGID(CPF3C00) EXEC(GOTO CMDLBL(ERROR))
  86.    /*                                                                    */
  87.    /* THIS COPIES THE INFORMATION STATUS, JOB NAME, ENTRY NUMBER, AND    */
  88.    /* USER NAME.                                                         */
  89.    /*                                                                    */
  90.              CHGVAR     VAR(&INFOSTS) VALUE(%SST(&LENTRY 1 1))
  91.              CHGVAR     VAR(&JOBNAM) VALUE(%SST(&LENTRY 2 10))
  92.              CHGVAR     VAR(&ENTRY#) VALUE(%SST(&LENTRY 12 10))
  93.              CHGVAR     VAR(&USERNM) VALUE(%SST(&LENTRY 547 10))
  94.              CHGVAR     VAR(&LASTSTS) VALUE(%SST(&LENTRY 629 10))
  95.   /*                                                                     */
  96.   /* THIS SENDS A MESSAGE THAT THE LIST WAS INCOMPLETE.                  */
  97.   /*                                                                     */
  98.   BADLIST:
  99.              SNDPGMMSG  MSG('INCOMPLETE LIST IN THE USER SPACE. SEE +
  100.                           JOBLOG FOR DETAILS.')
  101.              GOTO       CMDLBL(ALLDONE)
  102.   /*                                                                     */
  103.   /* THIS SENDS A MESSAGE THAT AN UNEXPECTED ERROR OCCURRED.             */
  104.   /*                                                                     */
  105.   ERROR:
  106.              SNDPGMMSG  MSG('UNEXPECTED ERROR.SEE JOBLOG FOR DETAILS.')
  107.   /*                                                                     */
  108.   /* ALL DONE. NOW THE TEMPORARY USER SPACE IS DELETED.                  */
  109.   /*                                                                     */
  110.   ALLDONE:
  111.              DLTUSRSPC  USRSPC(QTEMP/%SST(&USRSPC 1 10))
  112.              MONMSG     MSGID(CPF0000)

  113.    ENDPGM

复制代码

[ 本帖最后由 pantierui 于 2006-10-24 12:42 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP