SAVE Sequence BAPI提交问题,ABAP RESTful本地编程

2020-08-15 18:13发布

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

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


专家们,

我正在尝试为创建操作实现非托管方案。 我正在使用'BAPI_EPM_SO_CREATE'通过create方法创建销售订单。

此BAPI具有参数" persist_to_db",默认情况下为true。 当我调用BAPI时,因为BAPI包含" COMMIT WORK"而得到转储。 众所周知,我们无法在跨国阶段使用提交工作。

因此,然后将'abap_false'传递给persist_to_db,并将提交工作放入保存方法(保存序列的一部分)中。 但是我仍然因为使用提交而转储。

由于这个原因,即使成功执行了BAPI,我也无法保留数据。 如何在保存序列中提交数据。 请帮助。

此致

ABAPer。

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

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


专家们,

我正在尝试为创建操作实现非托管方案。 我正在使用'BAPI_EPM_SO_CREATE'通过create方法创建销售订单。

此BAPI具有参数" persist_to_db",默认情况下为true。 当我调用BAPI时,因为BAPI包含" COMMIT WORK"而得到转储。 众所周知,我们无法在跨国阶段使用提交工作。

因此,然后将'abap_false'传递给persist_to_db,并将提交工作放入保存方法(保存序列的一部分)中。 但是我仍然因为使用提交而转储。

由于这个原因,即使成功执行了BAPI,我也无法保留数据。 如何在保存序列中提交数据。 请帮助。

此致

ABAPer。

付费偷看设置
发送
4条回答
huskylover
1楼-- · 2020-08-15 18:40

据我所知,提交将由框架处理。

即使在"保存"方法中,您也会遇到消息"在BEHAVIOR类中不允许使用COMMIT命令。"

在类" CL_RAP_TRANSACTION_MANAGER"的方法" _PROCESS_SAVE_SEQUENCE"的上下文中调用"保存"类。 该方法将处理提交。 当然,如果没有"失败"的实体,所有这些都将得到解决。

我遇到了类似的问题,我不得不打电话给FI文档过帐。 由于标准工具会更新任务使用情况,因此我不得不在后台单元中调用FM。

梦想连接
2楼-- · 2020-08-15 18:55

COMMIT WORK在内部调用时会导致运行时错误(请提供有关运行时错误的详细信息)。 更新任务(您的情况?)。 触发更新任务的唯一方法是使用COMMIT WORK,因此,当您调用BAPI时,您已经在COMMIT WORK中。

实际上,这是要避免的情况:不要调用BAPI 在更新任务中。 解决方案取决于您的实际情况。 最终,一种可能性是在多带带的SAP LUW中调用BAPI,例如通过tRFC(背景任务中的目的地"无")。

3楼-- · 2020-08-15 18:35

我也遇到了同样的问题。 BAPI在内部调用提交工作,而框架又进行了第二次提交。

我在这里更新了评论-

https://blogs.sap.com/2019/05/23/sap-cloud-platform-abap-restful-programming-model-rap-for-beginners/comment-page -1/#comment-516256

这是我们得到的运行时错误-

发生了什么事?

ABAP应用程序中的错误。

当前ABAP程序" SAPMV45A"必须终止,因为它发现了无法执行的
语句。

错误分析

程序中可能存在错误
" SAPMV45A"。
XYZ的行为实现处于活动状态。在这种情况下,
以下ABAP语句是非法的:

– COMMIT
– ROLLBACK
– SUBMIT
– CALL TRANSACTION
– LEAVE
所有与DYNPRO相关的语句,例如MESSAGE,CALL DIALOG和CALL
SCREEN

仅在"保存"阶段允许以下语句:– CALL
更新任务中的功能

haha101010
4楼-- · 2020-08-15 18:38

您好,这是错误"无法在跨国阶段使用提交工作。 ' 我得到了。 仅供参考,我是在ABAP RESTful编程的背景下问这个问题。

根据我的理解,我们不能在交互阶段使用"提交工作",因此我决定将提交工作按保存顺序进行。(保存方法)仍然会出现相同的错误。 在这种情况下,我如何提交数据。 也许安德烈·费舍尔可以帮助我:)

一周热门 更多>