由于许多作业试图执行相同的更新命令,因此更新表在后台失败。

2020-09-01 10:15发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我有一个带有upda...

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

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


大家好,

我有一个带有update语句的功能模块,并且我试图通过在update语句中保持断点来从2个会话执行相同的FM。

在表中更新的第一会话记录中,对于第二会话sy-subrc = 4,因为表中有相同的记录。

对于第二个会话,还应将记录添加到表中,并增加计数(我们将表中的count字段作为键字段)

实际上我以两个会话为例,实时有N个会话...

任何人都可以提供有效的解决方案吗...。我不想错过任何记录。

Ex:

表格如下:

日期

时间

计数

插入XYZ值WA_XYZ

同时(12:00:00),不同的作业正在尝试在XYZ中插入记录。 在这种情况下,有时WA_XYZ会有相同的记录,因此将插入一个记录而将一个记录拒绝。。但是我不想丢失任何记录。 因此表中只有一个字段称为serial ..

有一个叫做count的字段,当同一条记录试图插入时,它将增加。当时间变化(12:00:01)count从零开始时。

非常感谢,

Praneeth Ch。

10条回答
悻福寶寶
2020-09-01 10:26

嗨普兰西斯,

数字范围 SAP使用对象为诸如财务凭证,采购订单,销售订单和许多其他类型的凭证之类的凭证生成编号。

根据数字范围间隔的定义方式,您可以提及起始数字,它将提供从起始点开始的数字(如果起始点为1,则将提供数字2,3,4。 .....)

根据您对计数重置的要求,有一些标准功能模块可用于重置数字范围间隔。 例如,函数NUMBER_RANGE_INTERVAL_INIT可以用于此目的。 因此,您可以将其包含在主程序中,或开发一个单独的程序以在12:00:01(后台作业)执行,该程序可以重置数字范围间隔。

一周热门 更多>