SAPMM采购订单的OutputTypeNEU要等其它Output完成后才能成功输出

城市中迷途小书童 2023-04-19 15:19:31

SAP MM  采购订单的Output Type NEU要等其它Output完成后才能成功输出

笔者所在的项目里,某个流程里的采购订单的打印输出使用标准output type NEU.不过它需要在另外一个output输出之后,才能正常输出。

实现方式如下:

在PO output procedure里,NEU这个output  type的配置里,维护一个requirement 901.

检查901这个requirement的源代码,

这个requirement的部分源代码如下:

FORM kobed_901.

* Need to Hold NEU output ….    IF komt1-kschl = lc_neu.      ASSIGN (lc_ekko) TO <lfs_ekko>.      IF <lfs_ekko> IS ASSIGNED AND <lfs_ekko>-submi IS INITIAL.        ASSIGN (lc_part) TO <lfs_part>.        IF <lfs_part> IS ASSIGNED.          lt_part = <lfs_part>.        ENDIF.        TRY.            IF line_exists( lt_part[ parvw = lc_zy ] ) AND <lfs_ekko>-ekorg = lc_1100.

SELECT SINGLE lifnr, ktokk FROM lfa1 INTO @DATA(ls_lfa1)                WHERE lifnr = @<lfs_ekko>-lifnr                  AND ktokk = @lc_regi.              IF sy-subrc EQ 0.                sy-subrc = 4.              ENDIF.            ENDIF.          CATCH cx_sy_itab_line_not_found.        ENDTRY.      ENDIF.    ENDIF.  ENDIF.*}   INSERTENDFORM.

FORM kobev_901.  CONSTANTS: lc_vstat(1) TYPE c VALUE '0'.  LOOP AT xnast WHERE kschl EQ komt1-kschl AND                        aktiv EQ space       AND                        vstat EQ lc_vstat.    EXIT.  ENDLOOP.  CHECK sy-subrc NE 0.  sy-subrc = 4.  CHECK ( komkbea-druvo EQ neu OR komkbea-druvo EQ aend ).  CLEAR sy-subrc.ENDFORM.

实现的效果是,采购订单创建好之后保存,NEU这个Output并不立即产生。而是等其它ouput完成后,系统才会产生NEU这个output type的输出记录。

-完-

写于2023-4-19.

0 阅读:2