MM/ETC

[MM] User-exit

clode 2024. 11. 27. 14:29
728x90
반응형

### MIGO에서 점검/저장시 수행하는 BADI
`MB_CHECK_LINE_BADI`
`CHECK_LINE`
저장일때로 한정지으려면 SY-UCOMM = 'OK_POST'.

### ME21N User-exit
`ME_PROCESS_PO_CUST`

```
DATA: ls_poheader  TYPE mepoheader,
          lt_poitem    TYPE purchase_order_items,
          ls_item_data TYPE mepoitem.

    BREAK-POINT.

*    ls_poheader = im_header->get_data( ).
    lt_poitem = im_header->get_items( ).

    LOOP AT lt_poitem INTO DATA(ls_poitem).

      "PO Item data in strucrue
      ls_item_data = ls_poitem-item->get_data( ).

      SELECT SINGLE menge FROM eban
        WHERE banfn EQ @ls_item_data-banfn
         AND bnfpo EQ @ls_item_data-bnfpo
        INTO @DATA(lv_prmenge).

      IF sy-subrc EQ 0.
        IF lv_prmenge NE ls_item_data-menge.
          CLEAR: ls_item_data-menge.
          CALL METHOD ls_poitem-item->set_data( EXPORTING im_data = ls_item_data ).
          MESSAGE e000(zmm) WITH '오더 수량이 요청 수량보다 많습니다.'.
        ENDIF.
      ENDIF.

    ENDLOOP.
  ```

728x90
반응형