JCo中的BAPI事务提交

2020-08-16 21:21发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨, 我正在使用BAPI_A...

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

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


嗨,

我正在使用BAPI_ACC_DOCUMENT_POST通过JCo(Java程序)将GL文档发布到SAP中,然后调用BAPI_TRANSACTION_COMMIT提交事务,以便在SAP系统中对其进行更新。

我执行程序后,我收到了投递成功的消息,并且文件编号返回给我。 但是,当我在SAP系统中查找此文档时,找不到它。

任何帮助将不胜感激。

下面是一段代码,其中我在映射所需的数据后在Java中执行了BAPI。

function.execute(destination);

System.out.println("函数BAPI_ACC_DOCUMENT_POST已执行。");

commFunct.getImportParameterList()。setValue(" WAIT"," 10");

commFunct.execute(目的地);

System.out.println("执行函数BAPI_TRANSACTION_COMMIT。");

此致

Ganesh。

5条回答
Climb_Ma
2020-08-16 22:06

你好Ganesh,

默认情况下,使用JCo3时,连接不再是有状态的,因此每个RFC调用均在其自己的上下文中执行。 但是,就您的情况而言,您希望提交在发布文档的同一上下文中进行。 您可以通过添加以下静态方法调用来做到这一点:

 JCoContext.begin(destination);
//在这里执行两个RFC函数
 JCoContext.end(destination);
 

您还可以查看JCoContext的Java API帮助,其中对此进行了更详细的说明。 添加两行后(最好在 finally 块中结束上下文),您应该在SAP中看到该文档。

干杯,哈拉尔德

一周热门 更多>