SAP ABAP 程序调用设置成后台作业模式

简介: ABAP 程序调用设置成后台作业模式

DATA: lt_rspar TYPE TABLE OF rsparams,
ls_rspar TYPE rsparams,
lv_jobname TYPE btcjob VALUE ‘Z_BACKJOG’, "设置作业名称
lv_jobcount TYPE btcjobcnt.

"设置宏,批量写入执行条件
CLEAR lt_rspar[].
DEFINE add_rspars.
CLEAR ls_rspar.
ls_rspar-selname = &1.
ls_rspar-kind = ‘S’.
ls_rspar-SIGN = ‘I’.
ls_rspar-option = ‘EQ’.
ls_rspar-low = &2.
APPEND ls_rspar TO lt_rspar.
END-OF-DEFINITION.

add_rspars ‘执行条件字段1’ ‘值1’ .
add_rspars ‘执行条件字段’2 ‘值’2 .

CALL FUNCTION ‘JOB_OPEN’
EXPORTING
jobname = lv_jobname "作业名称
IMPORTING
jobcount = lv_jobcount “作业ID
EXCEPTIONS
cant_create_job = 1
invalid_job_data = 2
jobname_missing = 3
OTHERS = 4.

IF sy-subrc NE 0.
MESSAGE ‘计划后台作业时出错;程序已取消’ TYPE ‘S’ display LIKE ‘E’.
RETURN.
ENDIF.
SUBMIT 后台程序名
WITH selection-TABLE lt_rspar
via job lv_jobname
NUMBER lv_jobcount
AND RETURN.

CALL FUNCTION ‘JOB_CLOSE’
EXPORTING
jobcount = lv_jobcount
jobname = lv_jobname
sdlstrtdt = sy-datum
sdlstrttm = sy-uzeit
EXCEPTIONS
cant_start_immediate = 1
invalid_startdate = 2
jobname_missing = 3
job_close_failed = 4
job_nosteps = 5
job_notex = 6
lock_failed = 7
invalid_target = 8
OTHERS = 9.

IF sy-subrc NE 0.
MESSAGE ‘计划后台作业时出错;程序已取消’ TYPE ‘S’ display LIKE ‘E’.
RETURN.
ENDIF.
MESSAGE ‘已计划后台作业,请稍后查询下达状态’ TYPE ‘S’ .

温馨提示:设置后台作业时,需要对执行单据做状态判断 避免重复点击时重复作业

目录
相关文章
|
8月前
如何在用户登录时sap时触发一特定程序执行
如何在用户登录时sap时触发一特定程序执行
124 0
|
数据处理
SAP 程序DEBUG内存分析
DEBUG:程序调试内存分析(如下)
102 0
SAP ALV 程序执行中返回选择界面
ALV 程序执行中返回选择界面
211 0
|
BI
SAP 报表设置动态ALV标题栏
关于ALV报表多个事务代码下显示不同标题处理
447 0
SAP WM中阶明明设置了TO自动产生为啥冻结物料后没有TO单据产生?
SAP WM中阶明明设置了TO自动产生为啥冻结物料后没有TO单据产生?
SAP WM中阶明明设置了TO自动产生为啥冻结物料后没有TO单据产生?
SAP WM初阶之移动类型设置里的Additional Data?
SAP WM初阶之移动类型设置里的Additional Data?
SAP WM初阶之移动类型设置里的Additional Data?
SAP WM中阶之存储类型设置界面里的’Return Stock To Same Storage Bin’
SAP WM中阶之存储类型设置界面里的’Return Stock To Same Storage Bin’
SAP WM中阶之存储类型设置界面里的’Return Stock To Same Storage Bin’
|
Java Linux Maven
Java程序使用Jco连接SAP系统配置
Java程序使用Jco连接SAP配置,包含Windows和Linux
688 0