首页 > 解决方案 > 在外向交货处理时捕获过帐发货事件

问题描述

我正在使用用户出口USEREXIT_SAVE_DOCUMENT_PREPARE来检查交付中的某些位置是否符合某些特定标准。

我只想在触发 PGI时执行此操作。为此,我在用户出口中使用此条件:

IF ( sy-tcode EQ 'VL01N'    OR
     sy-tcode EQ 'VL02N' )  AND
     sy-ucomm EQ 'WABU_T'.

但是现在恐怕这对于以下情况还不够:

是否有其他选项可以检查以确保有预订?

我如何才能完全确定是否确实触发了商品发布?

标签: abap

解决方案


您可以尝试利用 Workflow 来涵盖所有可能的情况。

创建将在交付创建/更改时触发的工作流事件,并在那里检查发布货物问题。交付 BO 是 LIKP,所以转到 tcode SWU_EWCD 并输入这样的数据

在此处输入图像描述

工作流事件基于更改文档,因此每次将 smth 写入表时都会被触发。检查您的事件是否在 SWEC 事务中正确创建。

您还可以根据NACE 条件创建事件。之后,使用您的事件生成您自己的工作流程。

您也可能对 BAdI LE_SHP_DELIVERY_PROC感兴趣,它具有 SAVE_AND_PUBLISH_BEFORE_OUTPUT 方法,该方法在保存交付之前执行。


推荐阅读