메뉴 건너뛰기

SAP 한국 커뮤니티

activeman님께서 알려주신 테이블을 이용해 아래처럼 수정을 하니 STLAL의 값은 가져올 수 있었습니다.


그런데 STLAL = '02', '03' 일때는 'CS_BOM_EXPLOSION'을 돌아도 결과값은 나오지 않습니다.


분명히 BOM은 존재하는데... 제가 무엇을 빼먹은 부분이 있는가요?


 


*---------------------------------------------------------------------*
*      Form  BOM_EXP
*---------------------------------------------------------------------*
FORM BOM_EXP.
  REFRESH : IT_01, IT_05.
  CLEAR : IT_01, IT_05.


  SELECT *
  INTO CORRESPONDING FIELDS OF TABLE IT_05 " 추가
  FROM MAST " 추가
    WHERE MAST~MATNR IN S_MATNR " 추가
      AND MAST~WERKS IN S_WERKS. " 추가


  LOOP AT IT2_01. " 추가
    LOOP AT IT_05 WHERE MATNR = IT2_01-MATNR. " 추가
      IT2_01-STLAL = IT_05-STLAL. " 추가
      MODIFY IT2_01. " 추가
    ENDLOOP. " 추가
  ENDLOOP. " 추가


  LOOP AT IT2_01.
    CLEAR : TEMP_STBP.
    READ TABLE IT2_01 INDEX SY-TABIX.
    WRITE IT2_01-WERKS TO PA_WERKS.
    WRITE IT2_01-MATNR TO PA_MATNR.
    WRITE IT2_01-STLAL TO PA_STLAL.


    IT_01-MATNR      = IT2_01-MATNR.
    IT_01-MAKTX      = IT2_01-MAKTX.
    IT_01-MTART      = IT2_01-MTART.
    IT_01-WERKS      = IT2_01-WERKS.
    IT_01-GI_03_QTY  = IT2_01-GI_03_QTY.
    IT_01-MEINS      = IT2_01-MEINS.
    IT_01-GI_03_FACT = IT2_01-GI_03_FACT.
    IT_01-WAERS      = IT2_01-WAERS.
    IT_01-STUFE      = '0'.
    IT_01-STLAL      = IT2_01-STLAL.
    IT_01-MATNR_C    = IT2_01-MATNR.
    APPEND IT_01.


    PERFORM BOM_EXP1 TABLES IT_01
            USING PA_MATNR PA_WERKS PA_STLAL SY-DATUM CHANGING LAST.
  ENDLOOP.


ENDFORM.


*---------------------------------------------------------------------*
*      Form  BOM_EXP
*---------------------------------------------------------------------*
FORM BOM_EXP1 TABLES P_BOM_EXPLODED STRUCTURE IT_01
     USING P_IDNRK P_WERKS P_STLAL P_DATUV CHANGING P_LAST.


  CALL FUNCTION 'CS_BOM_EXPLOSION'
    EXPORTING
      CAPID = 'PP01'
      DATUV = P_DATUV
      MTNRV = P_IDNRK
      WERKS = P_WERKS
      STLAL = P_STLAL
      MEHRS = 'X'
    TABLES
      STBP = IT_STBP
      STBD = IT_STBD
      STBE = IT_STBE
      STBK = IT_STBK
      STBM = IT_STBM
      STBT = IT_STBT
    EXCEPTIONS
      ALT_NOT_FOUND         = 1
      CALL_INVALID          = 2
      MISSING_AUTHORIZATION = 4
      NO_BOM_FOUND          = 5
      NO_PLANT_DATA         = 6
      NO_SUITABLE_BOM_FOUND = 7
      CONVERSION_ERROR      = 8
      OTHERS                = 9.


    LOOP AT IT_STBP.
      TEMP_STBP-OBJNR = IT_STBP-OBJNR.
      TEMP_STBP-WERKS = P_WERKS.
      TEMP_STBP-STLAL = IT_STBP-STLAL.
      APPEND TEMP_STBP.
    ENDLOOP.


    IF SY-SUBRC <> 0.
      P_LAST = 'X'.
    ELSE.
      LOOP AT TEMP_STBP.
        IT_01-MATNR      = IT2_01-MATNR.
        IT_01-MAKTX      = IT2_01-MAKTX.
        IT_01-MTART      = IT2_01-MTART.
        IT_01-WERKS      = IT2_01-WERKS.
        IT_01-GI_03_QTY  = IT2_01-GI_03_QTY.
        IT_01-MEINS      = IT2_01-MEINS.
        IT_01-GI_03_FACT = IT2_01-GI_03_FACT.
        IT_01-WAERS      = IT2_01-WAERS.
        IT_01-STUFE      = ''.
        IT_01-STLAL      = TEMP_STBP-STLAL.
        IT_01-MATNR_C    = TEMP_STBP-OBJNR.
        APPEND IT_01.
      ENDLOOP.


      LOOP AT TEMP_STBP. " 추가
        LOOP AT IT_05 WHERE MATNR = TEMP_STBP-OBJNR. " 추가
          TEMP_STBP-OBJNR = IT_05-MATNR. " 추가
          TEMP_STBP-WERKS = IT_05-WERKS. " 추가
          TEMP_STBP-STLAL = IT_05-STLAL. " 추가
          COLLECT TEMP_STBP. " 추가
        ENDLOOP. " 추가
      ENDLOOP. " 추가


      DELETE TEMP_STBP WHERE STLAL = '01'.
      DELETE TEMP_STBP WHERE STLAL = ''.


      LOOP AT TEMP_STBP.
        READ TABLE TEMP_STBP INDEX SY-TABIX.
        WRITE TEMP_STBP-WERKS TO PA_WERKS.
        WRITE TEMP_STBP-OBJNR TO PA_MATNR.
        WRITE TEMP_STBP-STLAL TO PA_STLAL.


        PERFORM BOM_EXP1 TABLES P_BOM_EXPLODED
                USING PA_MATNR PA_WERKS PA_STLAL P_DATUV CHANGING P_LAST.


        CLEAR P_LAST.
      ENDLOOP.
    ENDIF.
ENDFORM.

번호 제목 글쓴이 날짜 조회 수
1268 <b>[완료]</b>ALV CLASS에서 MARK 필드 선택 사용법 [3] SAMBATIME 2008.03.03 3473
» [요청]Alternative BOM까지 가져올 수 있게 구현해 보신 분 안계신가요? [5] 행복한외계인 2008.02.25 1738
1266 <b>[완료]</b>range에서 option, high, low, 값들중에 co,cm(?)등이 나오는데 이건 어떤건가여??? [2] 아밥입문자 2008.03.01 1762
1265 <b>[완료]</b>모듈 풀 프로그램 때문에 질문드립니다. [1] ABAP짱! 2008.03.01 1652
1264 <b>[완료]</b>라디오 버튼 입고구분 어떻게 해야하나요? [4] hogun 2008.02.29 12376
1263 [요청]abap editer-> selection texts에 대해 [2] 앙리 2008.02.29 1357
1262 [요청]계정기준으로 COLLECT 관련 질문입니다. [6] Lee Hyun 2008.02.29 2281
1261 [re] [요청]계정기준으로 COLLECT 관련 질문입니다. [1] Lee Hyun 2008.02.29 1277
1260 <b>[완료]</b>sap 버전이 어떻게 변화 되었습니까..관련 자료 좀 부탁드립니다. [2] activeman 2008.02.29 1864
1259 [요청]스마트 폼을 HWP로 저장 가능한가요 ? [1] with SAP 2008.02.29 1512
1258 <b>[완료]</b>신규테이블에 데이터를 저장시 문의드립니다. [7] 풍뎅이 2008.02.29 2304
1257 <b>[완료]</b>F4 HELP &POSSIBLE ENTRY 관련 질문입니다.... ^^ [8] bd 2008.02.29 3689
1256 [요청]native sql 에서 where 절에 select options 변수를 이용할 수 있는 방법이 궁금합니다. [3] 하이원 2008.02.29 2529
1255 <b>[완료]</b>NY 타임즈에서 MS는 .. SAP인수를거론.. [6] r333 2008.02.29 1323
1254 <b>[완료]</b>구매오더 바피 생성시 추가 필드건 질문 입니다. [2] 안면도 2008.02.28 1911
1253 <b>[완료]</b>[급질문] if 문에 관한 질문입니다..살짝 급하내요 ^^ [3] bd 2008.02.28 1662
1252 <b>[완료]</b>프로그램을 실행했을때 나오는 입력버튼 옆의 텍스트를 수정시 문의드립니다. [2] 풍뎅이 2008.02.28 1683
1251 <b>[완료]</b>도와주세요 NetWeaver 깔려고 하는데요... [4] 용스 2008.02.27 1962
1250 <b>[완료]</b>Cluster tables은 INNER JOIN 이 안되는가요? [3] ABAP짱! 2008.02.27 3871
1249 [요청]'미결항목을 찾지 못했습니다'라는 message.. [2] 아롱 2008.02.27 1523