在主表FKKVK,DPSOB_BP_ACC和BCONT中批量更新"自定义字段"的最佳方法是什么?

2020-09-27 05:45发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) SAP PSCD模块具有用于合...

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

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


SAP PSCD模块具有用于合同帐户的主表FKKVK,

DPSOB_BP_ACC用于合同对象,BCONT用于业务联系。

我们已经使用每个表中的"自定义包含"在这些表中创建了Z字段。

我们要运行一个程序,每天更新表中的这些z字段。

处理的记录数可以在10,000到500,000之间

我试图寻找BAPI一起处理多个记录(以最大化性能),但是找不到任何记录。

所以我写了一个Projection视图并更新了表。

但是质量小组坚持使用BAPI,因为我们正在更新标准表。

我试图解释说我们只是在更改这些表中的Z字段。

我的问题:

(A)

我的方法正确吗?因为我可以调用FM进行锁定和授权。

使其像bapi一样工作。 (在这里,我还将需要知道如何称呼"更改文档"的大规模更改)。 我错过了什么吗?

OR

(B)

我是否应该循环调用BAPI 500,000次。

(C)

您有更好的方法吗?

6条回答
小灯塔
2020-09-27 06:11 .采纳回答

我认为质量团队需要更多地了解情况。 再次告诉他们这些是标准表中的自定义列,因此您可以直接更新它们,我完全同意您的观点A(也可以是工作流程,更改指针等等)

使用投影视图是一种确保标准列不更新的好方法。 如果您运行单个更新,则还可以指定要更新的确切列,即UPDATE表SET zzcolumn = ... WHERE ...

为避免与同时运行的其他进程发生冲突,如果其他作业仅读取这些表(如果数据库确实提交了读操作,例如Oracle,则可能存在"快照太旧"转储),则可能最终要小心。 这与BAPI的预防措施相同。

一周热门 更多>