用ABAP实现SM36的设置后台JOB

原创 2016年08月29日 17:16:16

设置后台Job,更多功能请看函数组:BTCH                             

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.

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

sap 后台作业状态都是什么含义

Sched: 后台作业的步骤(Step)已经定义,但是作业的开始条件(Start condition)没有定义。 Released: 后台作业的步骤(Step)和开始条件(Start conditio...

ABAP 在程序中启动后台JOB

DATA: lv_job_name         LIKE tbtco-jobname,     "作业名  ...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

在HANA里设置后台Job

文字版(CSDN的图片上传太不方便了,实在没辙,最后就用为知笔记另存为了一张超大图片。。): HANA Schedule Background Job 序 最近在做BW&HANA的项目...

[Linux] Job管理

当我们在Linux Bash下执行命令(如tar),默认都是在前台进行的,即我们必须得等到命令结束之后才能执行后续的命令。事实上,我们是可以控制命令在后台执行,这就是Linux的Job管理。 & ...

Hadoop实现AbstractJob简化Job设置

在 hadoop 中编写一个job一般都是采用下面的方式: Job job=new Job(); job.setXxx(); ... 这样感觉代码很多,而且参数还不好控制。比如,我想对...

ORACLE JOB 设置

ORACLE JOB 设置 Job的参数:      一:时间间隔执行(每分钟,每天,每周,:每月,每季度,每半年,每年)    interval是指上一次执行结束到下一次开始执行的时间间隔,当int...
  • zftang
  • zftang
  • 2011-06-24 22:51
  • 2322

Oracle JOB 设置

Job的参数: 一:时间间隔执行(每分钟,每天,每周,:每月,每季度,每半年,每年) interval是指上一次执行结束到下一次开始执行的时间间隔,...

yii2通用后台实现

利用yii2实现通用后台功能: 先说下功能,由于懒得去写后台,干脆做个后台通用系统,界面要ok,可以轻松实现各种扩展;包含基本的用户管理模块,用户登录实现,用户权限(RBAC)实现,基本功能已经做好...

后台作业触发事件定义以及事件在程序中的调用

使用到的Function和T-code Function:BP_EVENT_RAISE T-code:SM62、SM36 1.定义EventID a.执行SM62 EventID的定义没有严...

TemplateField.ItemTemplate 后台实现

前台代码格式: ...>             .../>     例子: Page Language="C#" AutoEventWireup="true&q...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)