如何集成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条回答
暮风yp
2020-09-20 03:09

我会说,绝对使用从属事务管理器。 实际上,在所有增强/用户退出方案中都是如此。 在我最近的开发中,在某种增强的实现中,我首先准备了BOPF实例(即生成密钥)并将其发送到从属事务管理器。 接下来,我准备要在更新任务中创建的带有BOPF实例键的工作流事件,并结束我的增强。 当SAP流程决定触发COMMIT WORK时,将使用我准备的键来触发工作流程事件,(自定义)工作流程将启动并完成我想要的所有后处理任务。 有关一些详细信息,请参见功能模块BOPF_COMMIT。


但是,我不确定我是否理解您关于" "的陈述,唯一的问题可能是您在创建控制工作流执行的工作流事件之前,在后台活动中触发了COMMIT WORK。"

一周热门 更多>