即使用户在前台运行程序,如何使程序在后台运行。

2020-09-09 09:36发布

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

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


我有一个批量上传程序。 即使用户尝试在前台运行该程序,我也想在后台运行该程序。

我的基本要求是,我不希望该程序在任何 way.It中的前台运行。仅应在后台作业中触发。 我尝试修改代码,并添加了职位空缺和职位空缺FM,但是它不起作用。

此外,我不希望两者之间存在任何对话过程,该程序应按其工作方式运行,但始终在后台运行。

有人可以帮忙吗?

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

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


我有一个批量上传程序。 即使用户尝试在前台运行该程序,我也想在后台运行该程序。

我的基本要求是,我不希望该程序在任何 way.It中的前台运行。仅应在后台作业中触发。 我尝试修改代码,并添加了职位空缺和职位空缺FM,但是它不起作用。

此外,我不希望两者之间存在任何对话过程,该程序应按其工作方式运行,但始终在后台运行。

有人可以帮忙吗?

10条回答
软件心理学工程师
1楼 · 2020-09-09 09:59.采纳回答

您可以使用SUBMIT (带有批处理选项)来调用自己的程序。 程序在后台运行时,您可以使用sy-batch系统变量来处理语句。 就是这样:

 IF sy-batch =''。
   通话功能'JOB_OPEN'
     出口
       职位名称=职位名称
     输入
       职位数=职位数。

   用 = 提交 = 
                         .. 等等 ..
   威盛职位名称
   USER <用户名>
   AND返回。

 *安排和关闭工作。
   通话功能" JOB_CLOSE"
     出口
       职位数=职位数
       职位名称=职位名称
       sdlstrtdt = sy-datum
       sdlstrttm = sy-uzeit。

 ELSEIF sy-batch ='X'。
 *将程序逻辑放在这里...
 万一 。
 

检查SM37的作业结果。 结果本身存储在假脱机中。

KR,
亚瑟·席尔瓦(Arthur Silva)

Violet凡
2楼-- · 2020-09-09 10:10

我会尽力做到这一点。如有查询,请回来给您:)

野沐沐
3楼-- · 2020-09-09 10:10
如果sy- 批处理均衡器abap_false。
   消息"不。 仅在后台'TYPE'E'中运行该程序。
 ENDIF。
Bunny_CDM
4楼-- · 2020-09-09 10:10

糟糕。 现在已解决。

clasier
5楼-- · 2020-09-09 10:03

好的,然后使用SUBMIT选项。 (使用批处理选项)。

使用功能-

调用功能...在后台任务中尝试您的后台代码| 更新任务| 并开始执行新任务。

哎,真难
6楼-- · 2020-09-09 10:17

对于提交或FM,我需要创建具有所有逻辑的其他程序或FM,但我想使用相同的程序。是否可以使用同一程序?

Cikesha
7楼-- · 2020-09-09 10:01

是的,我相信您必须有两个代码。

如果yu可以清楚地解释我的意思,为什么还要同时执行Forground和Background两次相同的prgram,那么我们可以有一个更好的解决方案。

一周热门 更多>