如何从更新任务模式进行提交。

2020-09-27 13:13发布

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

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


大家好!

我有一个问题,在以更新任务模式调用的功能模块内部,我需要向Z表添加一条记录并进行提交,以便在同一过程的后续步骤中可以使用它。

如果我进行提交,则会得到转储,因为您不能这样做。 我尝试了另一件事,将另一个功能模块称为新任务,并在此FM中添加了插入和提交。 它什么也没做。

代码之所以有效,是因为如果我将SE37中的第一个FM作为普通FM执行,则记录将添加到表中。

那么,有没有一种方法可以向表中添加记录,并在更新任务模式下调用FM内进行相应的提交? 请记住,我正在做一个选择以在后面的步骤中检索此记录,这就是为什么我需要它,我正在向现有程序中添加功能,并尝试尽可能少地修改。

感谢您的帮助!

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

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


大家好!

我有一个问题,在以更新任务模式调用的功能模块内部,我需要向Z表添加一条记录并进行提交,以便在同一过程的后续步骤中可以使用它。

如果我进行提交,则会得到转储,因为您不能这样做。 我尝试了另一件事,将另一个功能模块称为新任务,并在此FM中添加了插入和提交。 它什么也没做。

代码之所以有效,是因为如果我将SE37中的第一个FM作为普通FM执行,则记录将添加到表中。

那么,有没有一种方法可以向表中添加记录,并在更新任务模式下调用FM内进行相应的提交? 请记住,我正在做一个选择以在后面的步骤中检索此记录,这就是为什么我需要它,我正在向现有程序中添加功能,并尝试尽可能少地修改。

感谢您的帮助!

付费偷看设置
发送
7条回答
callcenter油条
1楼 · 2020-09-27 13:52.采纳回答

嗨,

用于更新z表,将其放置在启用RFC的功能模块中并在此启用RFC的FM内编写commit语句的代码。

在主程序中将此RFC启用的FM称为DESTIANTION'NONE'。

EG:呼叫功能''目的地'无'。


通过这种方式,您可以避免转储,并且可以更新z表。

请参阅注释1895298,896173

SKY徐
2楼-- · 2020-09-27 13:40

那么,为什么要完全执行显式COMMIT?

如果更改数据库表,则该更改在"相同的过程,相同的功能模块,相同的(DB-)LUW"中可见。 还是我错过了什么?

d56caomao
3楼-- · 2020-09-27 13:49

后面的步骤究竟如何执行? 读取一致性意味着,如果选择的数据位于同一LUW中,则您的选择应该已经"看到"了新数据,所以我想知道是否存在某些缓存或某些内容,或者是否会将其放入另一个LUW中?

或者,是否可以将更新的信息传输到后续步骤? 也许使用静态类属性或类似的属性。

CPLASF-自律
4楼-- · 2020-09-27 13:47

如果您读了我的原始文章,则需要在FM内而不是之后进行一次提交。

Bunny_CDM
5楼-- · 2020-09-27 13:34

但是为什么要显式提交? 默认情况下,在更新FM内以及所谓的所有内容都在DB LUW内。

CPLASF-自律
6楼-- · 2020-09-27 13:35

嗨,

您可以在更新任务模式下调用FM之后执行"提交",因此将执行FM并添加记录,但实际上它与正常调用FM相同。

最好的问候。

DafaDDDa
7楼-- · 2020-09-27 13:32

尝试:

CALL FUNCTION'BAPI_TRANSACTION_COMMIT'
导出
wait ='X'。

一周热门 更多>