SD-SO 변경 item category

1988 단어 SAP-ABAP
업무 수요에 따라 SO의 강화에서 item category를 수정합니다. item category는 관련 업무 데이터가 많기 때문에 수정된 후에 표준subroutine 수정과 관련된 업무 데이터를 호출해야 합니다.
VBAP ITEM 개선 사항 및 SO 저장 확인 사항에 다음 코드를 추가하여 수정합니다.
4
      LOOP AT xvbap.
        gv_tabix = sy-tabix.
        CLEAR: ls_vbap_copy.
        READ TABLE lt_vbap_copy INTO ls_vbap_copy
          WITH KEY vbeln = xvbap-vbeln  posnr = xvbap-posnr BINARY SEARCH.
        IF sy-subrc = 0.
          IF ls_vbap_copy-pstyv NE xvbap-pstyv.
            svbap-tabix = gv_tabix.
            PERFORM vbap_bearbeiten_vorbereiten(sapfv45p).
            PERFORM vbap_fuellen(sapfv45p).
            vbap-pstyv = ls_vbap_copy-pstyv.

            PERFORM vbkd_fuellen_tvap(sapfv45k).
            PERFORM vbap_bearbeiten(sapfv45p).
            PERFORM vbap_bearbeiten_ende(sapfv45p).
          ENDIF.
        ENDIF.
      ENDLOOP.
표준 item category determine 논리는 다음과 같습니다.
            IF i_vbap-uepos = 0.
              CLEAR hvbap.
            ELSE.
              PERFORM hvbap_lesen(sapfv45p) USING i_vbap-uepos.
              ASSIGN ('(SAPFV45P)HVBAP') TO .
              IF  IS ASSIGNED AND  IS NOT INITIAL.
                CLEAR: hvbap.
                hvbap = .
              ENDIF.
            ENDIF.

            CALL FUNCTION 'RV_VBAP_PSTYV_DETERMINE'
              EXPORTING
                t184_auart          = i_vbak-auart
                t184_mtpos          = lv_mtpos
                t184_uepst          = hvbap-pstyv
                t184_vwpos          = space
                vbap_pstyv_i        = space
              IMPORTING
                vbap_pstyv          = i_vbap-pstyv
              EXCEPTIONS
                eintrag_nicht_da    = 1
                pstyv_nicht_erlaubt = 2
                OTHERS              = 3.
            IF sy-subrc <> 0.
* Implement suitable error handling here
            ENDIF.

좋은 웹페이지 즐겨찾기