我可以将BAPI BAPI_GOODSMVT_CREATE与并行处理一起使用吗?

2020-08-31 10:47发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)当前,我想知道我是否可以通过并行...

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

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


当前,我想知道我是否可以通过并行处理来改善当前程序-

我必须使用BAPI制作70,000个GI/GR文档,这需要很多时间。.所以我想拆分成较小的程序包,并进行一些并行处理以拆分WP。

所以我制作了测试运行程序,该程序生成了50个文档,并分成了10个WP:

做50次。

等待g_progs LE pa_wpnum。

呼叫功能'Z_PARA_TEST'
在组'390'中开始新任务g_task目的地
在任务结束时执行return_z_para_test
异常
resource_failure = 3。

案例sy-subrc。
当3.
等待g_progs <3到'20'秒为止。
结束。

将1加至g_task。
将1加至g_progs。
将1加至g_sprog。

ENDDO。

FORM使用任务名称返回_z_pp_para_test。

从g_progs中减去1。

向g_eprog添加1。

gt_chk_message-message =10。
附加gt_chk_message。

ENDFORM。

* Z_PARA_TEST具有BAPI_GOODSMVT_CREATE-> BAPI_TRANSACTION COMMIT函数。

事实证明,我循环了50次(显示50行" 10"的文字)。 但是只能制作1个文档!

所以..我的问题是:

1。 BAPI_GOODSMVT_CREATE是否可以与并行处理一起使用? 还是我做错了?

2。 如果每个WP工作太快,我认为文档编号将相同。 可能有问题吗?


6条回答
奄奄一息的小鱼
2020-08-31 11:36

此外,在上载" 70,000"条记录时,您还需要考虑的另一件事是如何处理错误记录。 一次性上传这么多记录会很麻烦。 您还必须考虑70000条记录的上载时间。 相反,您可以将每个文件中的记录拆分为5000条记录,然后上传一次。

否则,您只能从同一文件和进程中读取5000条记录(该文件将为1,但一次只能读取5000条记录),并且可以在6个会话中同时运行该程序。 这样就很容易生产。 您可以计划在休假的一周在PRD中进行一整天的过渡,然后继续进行,这样将轻松且无错误。

从技术上讲,可以并行执行BAPI。 尽管从技术上讲是可行的,但单步跟踪任何错误都将很困难。

谢谢

Gourab

一周热门 更多>