如何集成SAP Business Workflow和BOPF?

2020-09-20 02:44发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我的问题很简单:您如何在S...

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

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


嗨,

我的问题很简单:您如何在SAP Business Workflow的后台活动中更改BOPF对象? 问题是工作流运行时执行COMMIT WORK,这与BOPF事务处理不一致。 您如何解决问题?

我认为有两种可能的解决方案:

  • 使用标准事务管理器
  • 使用从属事务管理器

使用标准事务管理器可能会出现问题,因为它会抛出自己的COMMIT WORK或ROLLBACK WORK 而不是工作流运行时的常规COMMIT WORK/ROLLBACK WORK-这些命令稍后会从工作流运行时发出。 我的问题是,这是否会导致麻烦。

第二种解决方案可能如下:

创建一个实现IF_WORKFLOW的对象,从工作流活动中调用它并跨越您的 自己的交易: https://archive.sap.com/documents/docs/DOC- 74901 。 在此解决方案中,您可以控制执行,然后创建一个通知工作流程的工作流程事件。 唯一的问题可能是您在创建控制工作流程执行的工作流程事件之前,在后台活动中触发了COMMIT WORK。 通常我不这样做,而是使用SAP Business Workflow运行时的COMMIT WORK,以便所有操作都在单个LUW中完成。 我的问题是这是否可行或是否会导致工作流问题。

我还考虑过通过执行更新和事务处理功能模块将所有内容移至并行上下文中 并将结果返回给创建可指导工作流程的事件,但我不知道这是否会使所有情况变得更糟,即使您使用PERFORM ON ... COMMIT在DESTINATION NONE中也触发了BOPF事务处理(这将导致其他问题) )。

我知道SAP似乎有解决此问题的方法(请参阅
http://help.sap.com/saphelp_ehsext30/ 07cb5f7c7c402a93744fda1bbad88d/content.htm?frameset =/de/03/57f5a9e2b3479b94a4b5c381984e20/frameset.htm¤t_toc=/de/89/8a926b052548beb 49841a2732700bb/plain.htm&node_id = 10 ),但在此处找不到实现细节。

您如何解决此挑战? 还是上述解决方案有效?

干杯,
Tobias

4条回答
SKY徐
2020-09-20 02:57 .采纳回答

今天,我听到了解决问题的开发人员的回答。 实际上,他们以以下方式使用了从属事务管理器:他们在更新任务中执行CALL FUNCTION'/BOBF/TRA_DUMMY_UPDATE_TASK',然后让工作流运行时执行COMMIT WORK。 当然,保存后阶段不能以这种方式执行。 如果无法保存,则它们将引发异常,并让工作流运行时执行ROLLBACK WORK。

一周热门 更多>