L_TO_CANCEL - 미확정 TO 취소 (예제 코드 포함)

2023. 3. 24. 11:02ABAP/BAPI

728x90
반응형

안녕하세요 파피킴입니다.

확정 처리 하지 않아야 하는 TO 가 있다면 취소 처리 해주어야겠죠~

아래 펑션을 이용하면 손쉽게 취소 처리 하실 수 있습니다.

DATA lt_ltap_cancl TYPE TABLE OF ltap_cancl WITH HEADER LINE.

lt_ltap_cancl-tanum = '2000815773'.  " TO 번호
lt_ltap_cancl-tapos = '1'.                     " TO 품목 번호
APPEND lt_ltap_cancl.

CALL FUNCTION 'L_TO_CANCEL'
    EXPORTING
        i_lgnum                                        = '160'               " 창고 번호
        i_tanum                                        = '2000815773'  " TO 번호
        i_cancl                                          = 'X'                   " 미처리 전체 품목 취소 지시자
    TABLES
        t_ltap_cancl                                  = lt_ltap_cancl
    EXCEPTIONS
        to_confirmed                                 = 1
        to_doesnt_exist                            = 2
        item_confirmed                             = 3
        item_doesnt_exist                         = 4
        foreign_lock                                   = 5
        double_lines                                  = 6
        nothing_to_do                               = 7
        xfeld_wrong                                   = 8
        su_movement_partly_confirmed = 9
        update_without_commit               = 10
        no_authority                                   = 11
        OTHERS                                          = 12.

IF sy-subrc IS INITIAL.
    MESSAGE s000 WITH 'SUCCESS'.
ELSE.
    MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno DISPLAY LIKE sy-msgty.
ENDIF.

 

미처리 전체 품목 지시자를 체크했기 때문에 lt_ltap_cancl 테이블을 빈 값으로 넣어주게 된다면 전체 품목이 취소가 됩니다.

또한 TO 취소는 확정 처리 하지 않은 것에 대해서만 취소가 가능하답니다!

이미 확정처리한 TO 는 취소할 수 없고, 역방향으로 다시 TO 를 생성하셔야 합니다.

질문 있으시다면 댓글 부탁드립니다~

이상 샙가능의 파피킴이었습니다.

728x90
반응형