메뉴 건너뛰기

SAP 한국 커뮤니티

BAPI_GOODSMVT_CREATE 입고/출고/재고이동시에 사용하세요.

노름마치 2007.12.11 06:32 조회 수 : 15290 추천:2

*----------------------------------------------------------------
* goodsmvt_header-pstng_date:    전표전기일
* goodsmvt_header-doc_date:      전표 내 증빙일
*----------------------------------------------------------------
* 자재이동코드는 해당 비지니스플로우별로 다음과 같습니다.
* 01: Goods receipt for purchase order
* 02: Goods receipt for production order
* 03: Goods issue
* 04: Transfer posting
* 05: Other goods receipts
* 06: Reversal of goods movements
* Goodsmvt_code:                 자재이동코드
* ----------------------------------------------------------------
* Goodsmvt_item-material:        자재번호
* Goodsmvt_item-plant:           플랜트
* Goodsmvt_item-stge_loc:        저장위치
* Goodsmvt_item-move_type:       '311' 등...
* Goodsmvt_item-entry_Qnt:       이동수량
* Goodsmvt_item-move_stloc:      이동저장위치
----------------------------------------------------------------


 


DATA : st_goodsmvt_header   LIKE  bapi2017_gm_head_01,
       st_goodsmvt_code     LIKE  bapi2017_gm_code,
       st_goodsmvt_headret  LIKE  bapi2017_gm_head_ret,


       g_goodsmvt_doc       LIKE  bapi2017_gm_head_ret-mat_doc,
       g_materialdocument   TYPE  bapi2017_gm_head_ret-mat_doc,
       g_matdocumentyear    TYPE  bapi2017_gm_head_ret-doc_year,
       it_goodsmvt_item     LIKE  bapi2017_gm_item_create 
                                  OCCURS  0 WITH  HEADER  LINE,
       it_goodsmvt_serialnumber   LIKE bapi2017_gm_serialnumber
                                  OCCURS  0 WITH  HEADER  LINE,
       it_return            LIKE  bapiret2 OCCURS  0 WITH  HEADER  LINE.


*================================================================================
  DATA l_tabix LIKE sy-tabix.


  CLEAR    st_goodsmvt_header.
  REFRESH: it_goodsmvt_item, it_goodsmvt_serialnumber, it_return.
  CLEAR:   it_goodsmvt_item, it_goodsmvt_serialnumber, it_return.


  LOOP AT gt_display.
    l_tabix = sy-tabix.


    CLEAR st_goodsmvt_header.
    st_goodsmvt_header-pstng_date   = sy-datum. " 기표일자
    st_goodsmvt_header-doc_date     = sy-datum. " 증빙일자
    st_goodsmvt_code-gm_code        = '04'.     " 재고이동


    REFRESH: it_goodsmvt_item, it_goodsmvt_serialnumber, it_return.
    CLEAR:   it_goodsmvt_item, it_goodsmvt_serialnumber, it_return.


    it_goodsmvt_item-move_type  = '309'.


    it_goodsmvt_item-material   = gt_display-fr_matnr.
    it_goodsmvt_item-plant      = gt_display-fr_werks.
    it_goodsmvt_item-stge_loc   = gt_display-fr_lgort.
    it_goodsmvt_item-batch      = gt_display-fr_charg.


    it_goodsmvt_item-move_mat   = gt_display-to_matnr.
    it_goodsmvt_item-move_plant = gt_display-to_werks.
    it_goodsmvt_item-move_stloc = gt_display-to_lgort.
    it_goodsmvt_item-move_batch = gt_display-to_charg.


    it_goodsmvt_item-entry_qnt  = gt_display-fr_labst.
    it_goodsmvt_item-entry_uom  = gt_display-fr_meins.
    APPEND it_goodsmvt_item.


    CLEAR : g_materialdocument, g_matdocumentyear.
    CALL FUNCTION 'BAPI_GOODSMVT_CREATE'
      EXPORTING
        goodsmvt_header  = st_goodsmvt_header
        goodsmvt_code    = st_goodsmvt_code
      IMPORTING
        goodsmvt_headret = st_goodsmvt_headret
        materialdocument = g_materialdocument
        matdocumentyear  = g_matdocumentyear
      TABLES
        goodsmvt_item    = it_goodsmvt_item
        return           = it_return.


    CLEAR g_goodsmvt_doc.
    IF NOT st_goodsmvt_headret IS INITIAL.
      g_goodsmvt_doc = st_goodsmvt_headret-mat_doc.
      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
        EXPORTING
          wait = 'X'.
      gt_display-msgty  = 'S'.
      gt_display-msglin =  g_goodsmvt_doc.
      MODIFY gt_display INDEX l_tabix TRANSPORTING msgty msglin.
    ELSE.
      READ TABLE it_return  INDEX 1.
      gt_display-msgty  = 'E'.
      gt_display-msglin = it_return-message.
      MODIFY gt_display INDEX l_tabix TRANSPORTING msgty msglin.
    ENDIF.
  ENDLOOP.

번호 제목 글쓴이 날짜 조회 수
208 CLUSTER 테이블 찾는법~~ [4] 첼시 2008.02.28 3862
207 스마트 폼에서 워드를 기본에디터로 설정하는 방법. [8] 혀나미 2008.01.31 5505
206 ABAP_INTEGRATION_GUIDE_22 [1] file kk 2008.01.23 4004
205 ICC_INTEGRATION_GUIDE_22 [1] kk 2008.01.23 3961
204 jco_tutorial-ja_doo [2] file kk 2008.01.23 3204
203 ALV autorefresh 입니다. [13] eclipse 2008.01.15 4955
202 경고음 없애는 방법 [8] 도련님 2008.01.11 4434
201 화면에 드롭다운 리스트 박스 추가 하기. ABCD [8] 버즈즈 2008.01.05 5184
200 alv 메뉴만들기.. [9] 버즈즈 2008.01.05 4793
199 ABAP TIP 정리(영문 60페이지) [31] file sapjoy 2008.01.04 4487
198 BAPI_SALESDOCU_CREATEFROMDATA1 판매오더를 이렇게 생성해도 되는군요. [4] 노름마치 2007.12.11 5534
197 BAPI_RESERVATION_CREATE1 MB21의 예약생성시 사용하세요. [2] 노름마치 2007.12.11 7698
196 BAPI_PR_CREATE 구매요청 생성시에 사용하세요. 이렇게도 쓸 수 있군요. [1] 노름마치 2007.12.11 7835
195 BAPI_PR_CREATE 구매요청 생성시에 사용하세요 [2] 노름마치 2007.12.11 23767
194 BAPI_PO_CHANGE 구매오더 변경시에 사용하세요 [7] 노름마치 2007.12.11 5567
193 BAPI_MESSAGE_GETDETAIL 작업결과에 대한 메세지는 이렇게도 보여줄수 있겠군요 [1] 노름마치 2007.12.11 4895
192 BAPI_MATERIAL_SAVEDATA 자재마스터 생성시에 사용하세요. [1] 노름마치 2007.12.11 9437
191 BAPI_MATERIAL_AVAILABILITY 가용성체크시에 사용하세요. [1] 노름마치 2007.12.11 6363
190 BAPI_INCOMINGINVOICE_CREAE 송장처리시에 사용하세요. [1] 노름마치 2007.12.11 4576
» BAPI_GOODSMVT_CREATE 입고/출고/재고이동시에 사용하세요. [5] 노름마치 2007.12.11 15290