如何在ABAP编程中取消后台作业处理?

2020-08-25 17:20发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我有一个要求,我需要根据某些限制取消工作。 我的代码是这样的:

从表中选择一些数据。

如果sy-subrc = 0。

什么都不做。

其他

  • 取消工作

调用函数" BP_JOB_ABORT"

导出

职位数=人数

职位名称=名称

例外情况

CHECKING_OF_JOB_HAS_FAILED = 1

JOB_ABORT_HAS_FAILED = 2

JOB_DOES_NOT_EXIST = 3

JOB_IS_NOT_ACTIVE = 4

NO_ABORT_PRIVILEGE_GIVEN = 5

其他= 6

上面的代码取消了作业,但是由于我不通过作业计数,因此抛出了一个名为CX_SY_DYN_CALL_PARAM_MISSING的异常。 我们如何找到将要运行的下一个作业的作业计数? 或如何处理它引发的异常。 即使我尝试处理这种异常,也是如此:

尝试

调用函数" BP_JOB_ABORT"

导出

职位数=人数

职位名称=名称

例外情况

CHECKING_OF_JOB_HAS_FAILED = 1

JOB_ABORT_HAS_FAILED = 2

JOB_DOES_NOT_EXIST = 3

JOB_IS_NOT_ACTIVE = 4

NO_ABORT_PRIVILEGE_GIVEN = 5

其他= 6

上升异常类型CX_SY_DYN_CALL_PARAM_MISSING。

观看

CX_SY_DYN_CALL_PARAM_MISSING。

ENDTRY。

它避免了异常,但是并没有取消作业。 我什至尝试使用JOB_OPEN之类的功能模块

JOB_SUBMIT,BP_JOB_SELECT,BP_JOB_ABORT,并尝试使用状态概览表(TBTCO)和TBTCP(Jobstep概览表)构建一些逻辑。

有人可以建议我编写该程序的正确方法吗?

谢谢。

Rashmi

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我有一个要求,我需要根据某些限制取消工作。 我的代码是这样的:

从表中选择一些数据。

如果sy-subrc = 0。

什么都不做。

其他

  • 取消工作

调用函数" BP_JOB_ABORT"

导出

职位数=人数

职位名称=名称

例外情况

CHECKING_OF_JOB_HAS_FAILED = 1

JOB_ABORT_HAS_FAILED = 2

JOB_DOES_NOT_EXIST = 3

JOB_IS_NOT_ACTIVE = 4

NO_ABORT_PRIVILEGE_GIVEN = 5

其他= 6

上面的代码取消了作业,但是由于我不通过作业计数,因此抛出了一个名为CX_SY_DYN_CALL_PARAM_MISSING的异常。 我们如何找到将要运行的下一个作业的作业计数? 或如何处理它引发的异常。 即使我尝试处理这种异常,也是如此:

尝试

调用函数" BP_JOB_ABORT"

导出

职位数=人数

职位名称=名称

例外情况

CHECKING_OF_JOB_HAS_FAILED = 1

JOB_ABORT_HAS_FAILED = 2

JOB_DOES_NOT_EXIST = 3

JOB_IS_NOT_ACTIVE = 4

NO_ABORT_PRIVILEGE_GIVEN = 5

其他= 6

上升异常类型CX_SY_DYN_CALL_PARAM_MISSING。

观看

CX_SY_DYN_CALL_PARAM_MISSING。

ENDTRY。

它避免了异常,但是并没有取消作业。 我什至尝试使用JOB_OPEN之类的功能模块

JOB_SUBMIT,BP_JOB_SELECT,BP_JOB_ABORT,并尝试使用状态概览表(TBTCO)和TBTCP(Jobstep概览表)构建一些逻辑。

有人可以建议我编写该程序的正确方法吗?

谢谢。

Rashmi

付费偷看设置
发送
9条回答
小熊yu生菜
1楼 · 2020-08-25 17:53.采纳回答

尝试FM RSPO_CANCEL_JOB

四川大学会员
2楼-- · 2020-08-25 18:04

亲爱的所有人,

如上所述,在执行(RSBTCDEL2)时,我看不到已执行的任何记录(RSBTCDEL),但作业仍在运行。

请帮助,我的问题有点不同。

我想停止/取消名为(SAP_CCMS_MONI_BATCH_DP)的后台作业,该作业在过去7天处于活动/运行状态。

我已经执行了(RSBTCDEL),仅选择了此作业名称,并在(强制模式删除)中键入了" X"。 但是执行后,我得到以下消息-

RSBTCDEL在选择的2个作业中,没有删除2个。

后台作业(SAP_CCMS_MONI_BATCH_DP)仍在运行。

谢谢

Kushal

nice_wp
3楼-- · 2020-08-25 18:02

你好,

请参阅注释666290。使用报告RSBTCDEL强制删除。

亚瑟·席尔瓦

一周热门 更多>