码迷,mamicode.com
首页 > 其他好文 > 详细

用ABAP实现SM36的设置后台JOB

时间:2018-05-04 20:16:06      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:stat   UNC   bsp   函数   auth   immediate   step   report   ogr   

*&---------------------------------------------------------------------*
*& Report  Z_BARRY_SET_JOB                                             *
*&                                                                     *
*&---------------------------------------------------------------------*
*&  设置后台Job,更多功能请看函数组:BTCH                              *
*&---------------------------------------------------------------------*
REPORT  z_barry_set_job                         .
DATA: jobcount LIKE tbtcjob-jobcount.
DATA: abort TYPE c,
      finish TYPE c,
      prelim TYPE c,
      ready TYPE c,
      run TYPE c,
      sched TYPE c.
PARAMETERS: p_name LIKE tbtcjob-jobname OBLIGATORY DEFAULT Z_BARRY_TEST_JOB,
            p_date LIKE sy-datum OBLIGATORY,
            p_time LIKE sy-uzeit OBLIGATORY.
SELECT-OPTIONS s_rept FOR sy-repid NO INTERVALS OBLIGATORY .
START-OF-SELECTION.
  CALL FUNCTION JOB_OPEN "定义一个Job
    EXPORTING
      jobname          = p_name
    IMPORTING
      jobcount         = jobcount  "Job id
    EXCEPTIONS
      cant_create_job  = 1
      invalid_job_data = 2
      jobname_missing  = 3
      OTHERS           = 4.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
  LOOP AT s_rept .
    CALL FUNCTION JOB_SUBMIT  "Scheduled 这个Job
      EXPORTING
        authcknam               = sy-uname
        jobcount                = jobcount
        jobname                 = p_name
        report                  = s_rept-low
*        VARIANT                 = ‘TEST‘
      EXCEPTIONS
        bad_priparams           = 1
        bad_xpgflags            = 2
        invalid_jobdata         = 3
        jobname_missing         = 4
        job_notex               = 5
        job_submit_failed       = 6
        lock_failed             = 7
        program_missing         = 8
        prog_abap_and_extpg_set = 9
        OTHERS                  = 10.
    IF sy-subrc <> 0.
      MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
              WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
  ENDLOOP.
  CALL FUNCTION JOB_CLOSE  "Release 这个Job
    EXPORTING
      jobcount             = jobcount
      jobname              = p_name
      sdlstrtdt            = p_date
      sdlstrttm            = p_time
    EXCEPTIONS
      cant_start_immediate = 1
      invalid_startdate    = 2
      jobname_missing      = 3
      job_close_failed     = 4
      job_nosteps          = 5
      job_notex            = 6
      lock_failed          = 7
      OTHERS               = 8.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
  CALL FUNCTION SHOW_JOBSTATE
    EXPORTING
      jobcount         = jobcount
      jobname          = p_name
    IMPORTING
      aborted          = abort
      finished         = finish
      preliminary      = prelim
      ready            = ready
      running          = run
      scheduled        = sched
    EXCEPTIONS
      jobcount_missing = 1
      jobname_missing  = 2
      job_notex        = 3
      OTHERS           = 4.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
  WRITE : / Canceled              : , abort ,
          / Finished              : , finish,
          / Scheduled Temporarily : , prelim,
          / Ready for Execution   : , ready,
          / Active                : , run,
          / Scheduling Released   : , sched.
 

 

用ABAP实现SM36的设置后台JOB

标签:stat   UNC   bsp   函数   auth   immediate   step   report   ogr   

原文地址:https://www.cnblogs.com/wangxiaowen/p/8992223.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!