메뉴 건너뛰기

SAP 한국 커뮤니티

BAPI_MATERIAL_AVAILABILITY 가용성체크시에 사용하세요.

노름마치 2007.12.10 21:36 조회 수 : 6317 추천:3

 FUNCTION zle_pda_available_qty.
*"----------------------------------------------------------------------
*"*"Local interface:
*"  IMPORTING
*"     REFERENCE(I_WERKS) TYPE  WERKS_D
*"     REFERENCE(I_MATNR) TYPE  MATNR
*"  TABLES
*"      O_TAB STRUCTURE  ZLES0060 OPTIONAL
*"----------------------------------------------------------------------


  CHECK i_werks >< '' AND i_matnr >< ''.


*" 가용재고 추출용......................
  DATA: l_atp     LIKE bapicm61v-wkbst.
  DATA: it_wmdvex TYPE bapiwmdve OCCURS 0 WITH HEADER LINE,
        it_wmdvsx TYPE bapiwmdvs OCCURS 0 WITH HEADER LINE.


  DATA: l_tabix   LIKE sy-tabix.
  DATA: g_qty1    TYPE cdseq.
  DATA: g_qty2    TYPE cdseq.


  CLEAR   it_zles0060.
  REFRESH it_zles0060.


*" 현재재고 추출.......................
  SELECT mard~matnr AS matnr
         mard~labst AS stock_qty
         makt~maktx AS maktx
         mara~meins AS meins
         APPENDING CORRESPONDING FIELDS OF TABLE it_zles0060
         FROM mard INNER JOIN mara
           ON mard~mandt = mara~mandt
          AND mard~matnr = mara~matnr
        INNER JOIN makt
           ON mard~mandt = makt~mandt
          AND mard~matnr = makt~matnr
          AND makt~spras = sy-langu
        WHERE mard~werks = i_werks
          AND mard~lgort = '2000'
          AND mard~matnr = i_matnr
          AND mard~labst > 0.


  CHECK NOT it_zles0060[] IS INITIAL.


*" 가용재고 추출.......................
  CLEAR   : it_wmdvsx, it_wmdvex, l_atp.
  REFRESH : it_wmdvsx, it_wmdvex.


  LOOP AT it_zles0060.
    l_tabix = sy-tabix.


    CLEAR l_atp.
    CALL FUNCTION 'BAPI_MATERIAL_AVAILABILITY'
      EXPORTING
        plant      = i_werks             " 플랜트
        material   = it_zles0060-matnr   " 자재코드
        unit       = it_zles0060-meins   " 단위
        check_rule = 'RP'
        stge_loc   = '2000'              " 저장위치
      IMPORTING
        av_qty_plt = l_atp
      TABLES
        wmdvsx     = it_wmdvsx
        wmdvex     = it_wmdvex.


    IF sy-subrc IS INITIAL.
      READ TABLE it_wmdvex  INDEX 1.
      IF sy-subrc IS INITIAL.
        it_zles0060-avail_qty = it_wmdvex-com_qty. " 가용재고
      ENDIF.
    ENDIF.


    MODIFY it_zles0060 INDEX l_tabix.
  ENDLOOP.


*" 최종 테이블로 MOVE......................
  LOOP AT it_zles0060.
    MOVE-CORRESPONDING it_zles0060 TO o_tab.
    CLEAR : g_qty1, g_qty2.
    o_tab-avail_qty = g_qty1 = it_zles0060-avail_qty.
    o_tab-stock_qty = g_qty2 = it_zles0060-stock_qty.
    APPEND o_tab.
    CLEAR: o_tab, it_zles0060.
  ENDLOOP.


  FREE it_zles0060.


ENDFUNCTION.

번호 제목 글쓴이 날짜 조회 수
367 표준편차구하는 로직 윤사모 2011.03.23 9371
366 BAPI자료입니다. [14] file neopaper 2011.03.23 10293
365 IE 9.0 설치 시 se80 다운되는 문제 해결 [5] Jey 2011.03.16 6996
364 <img src=d.gif>Source Activation 시 [READ_REPORT_LINE_TOO_LONG] dump 발생하면?[추천:e-abap] [5] JYG 2011.02.11 9426
363 [For Power User] Dynamic Transient Program [3] file 양키 2011.01.21 6020
362 <img src=d.gif>[For Power User] Dynamic Creation of Data Objects[추천:e-abap] [3] 양키 2011.01.20 5005
361 [For Power User]Dynamic Casting Symbol Variable [3] 양키 2011.01.19 5755
360 <img src=d.gif>테이블 Lock & UnLock function[추천:e-abap] [1] 양키 2011.01.18 8269
359 <img src=b.gif>계속 남아있는 Debugger창 없에기(New Debugger)[추천:e-abap][추천:보나][추천:버미!] [14] 해처리 2011.01.07 8169
358 SAP GUI WINDOW TITLE BAR 정보 표시 설정 방법 / 색상 설정 [15] file 미소 2010.12.26 13453
357 Internal Table 알아보기 [15] file 양키 2010.12.20 8000
356 ASP.NET과 wsdl로 연동시 광돈 2010.12.17 7339
355 풍선도움말 Quickinfo [16] file 양키 2010.12.17 7213
354 Breakpoints 알아보기 [4] 양키 2010.12.14 8176
353 Number Range Object 변경/삭제 [4] file MadMax 2010.12.07 8172
352 새 창에서 트랜잭션 실행하기... 'Navigation_execute_object' 입니다.. [8] 밥~~ 2010.12.02 6132
351 <img src=c.gif>Regular Expression Processing in ABAP[추천:e-abap][추천:유리선율] [5] file magicsy69 2010.11.24 5539
350 AT SELECTION-SCREEN ON BLOCK b01. 육억 2010.11.17 6067
349 윈도우7에서 sapgui가 꺼지는 현상에 관한 팁 [14] 고양이야옹 2010.10.21 9576
348 [Function]달력 팝업창을 뛰워보자 [14] file 양키 2010.10.07 7844