BOM explosion where first BOM alternative has deletion flag

Hi,
I got the following very basic scenario:
One FERT material has two BOM alternatives (alternative 1 and 2). Both of them are valid in terms of date, status and lot size. When a production order is created by CO01 the system will pick automatically alternative 1 (which is ok for me). BUT if this BOM alternative 1 gets a deletion flag (on BOM alternative header) I would expect that the system would automatically pick alternative 2 (it is the "next" suitable alternative). But the systems says there is no valid BOM available.
Only if I really delete alternative 1 (so I cannot see it anymore in CS02), the system would pick alternative 2 (because it is now the really first one available - no version in front with only deletion flag). But in terms of documentation I cannot delete the alternatives.
Maybe somebody could explain that to me or had a similar problem...
BR and thanks in advance.
Christian

Hi Guys,
many thanks for your suggestions. Setting the status to inactive did the trick. Obviously the deletion flag is not enough at this point.
Just to clarify - production version of course would be an option but that did not work with the following:
I have 6 different routings for this FERT and the user has to choose when the production order is created. That works basically fine when the order is created with CO01 (popup for selection of production version based on MRP4 setting). BUT when a planned order is converted directly from MD04 into a production order the system would automatically pick production version 1 (no matter what setting in MRP4 view). If there are no production version the user would get at least a popup for choosing a routing. But this would maybe an additional thread in the forum
Thanks
Christian

Similar Messages

  • BOM Explosion where Material Type is set to X0 to X9

    Hi All,
    Trust you are well.
    I am finishing of the detailed design for Production Planning and have come across an issue which I was wondering you might be able to help with.
    In my design the sales quantities plan in BI will be used as a basis for the production quantity plan. This will then be retracted from BI to COPA and the sent to S&OP. However, I understand that it will not be possible to explode the BOM's in MRP because the MRP type is set to X0 to X9 for all our finished products, hence we will not be able to run simulative MRP in SAP system for Long term planning.
    I think this is because the material is already being planned with SAP APO and the system will not allow longterm planning for finished materials in SAP ECC at the same time.
    Did you come across something similar? Any ideas, workarounds?
    Thanks,
    Milind

    Hi Anand,
    I have a similar requirement and raised a question on the forum and simultaneously raised a OSS message. SAP responded that we cannot do LTP and MRP for materials planned in APO as this is a system restriction in SAP ECC 2005.
    I am very keen to know the settings that are needed in the MRP type and LTP settings that would enable me to carry out LTP for materials that are planned in APO with MRP Type X0 to X9.
    When I run simulative MRP run, I get a error message "Material is not planned automatically". Are there any modification that you have done in your system to make LTP work. I am keen to know what changes were implemented to get LTP work for MRP Type X0 to X9.
    Warm regards,
    Prem

  • How about this implementation of BOM Explosion(simulate stack)

    REPORT  YZWX00301_06 LINE-SIZE  142
                         LINE-COUNT 65
                         MESSAGE-ID YM1
                         NO STANDARD PAGE HEADING .
    INCLUDE
    INCLUDE: YXXI00050.
    *TABLES use table define
    TABLES: MARA,        " Material General Table
            MARC,        " Plant Data for Material
            MDMA,        " MRP Area table
            EORD,        " Vendor table
            A018,        " Vendor material mapping table
            KONP,        " Vendor condition table
            MAST,        " Material BOM table
            STPO,        " Material BOM Component table
            STAS.        " Material BOM Component table detail
    *CONSTANTS define
    CONSTANTS:
      C_DAT_X        TYPE C VALUE 'X',
      C_MODE         LIKE dxfields-fileoper VALUE 'R',
      C_MASK         LIKE dxfields-filemask VALUE '.',
      C_FLG_LOCATION TYPE C VALUE 'A',
      C_DFPATH(15)   TYPE C VALUE '\bmwx\'.
    Work Area Define
    ---- build stack structure -
    DATA: BEGIN OF WK_STACK,
            LEVEL(1)      TYPE C,            "Save Level
            QUANT         TYPE I,            "Save Quantity
          END OF WK_STACK.
    ---- BOM work area -
    DATA: BEGIN OF WK_BOM,
             LEVEL(1)     TYPE C,            "BOM LEVEL
             MATNR        LIKE MARC-MATNR,   "MATERIAL      18
             POSTP        LIKE STPO-POSTP,   "ITEM CATEGORY  1
             MENGE        LIKE STPO-MENGE,   "BOM COMPONENT 13
             DATUV        LIKE STPO-DATUV,   "VALID FROM    10
             DATUB        LIKE STPO-DATUV,   "VALID TO      10
    END OF WK_BOM.
    ---- DATA work area -
    DATA: BEGIN OF DATAITEM,
             LEVEL(1)     TYPE C,            "BOM LEVEL
             MATNR        LIKE MARC-MATNR,   "MATERIAL
             POSTP        LIKE STPO-POSTP,   "ITEM CATEGORY
             MENGE        LIKE STPO-MENGE,   "BOM COMPONENT
             DATUV        LIKE STPO-DATUV,   "VALID FROM!!!
             DATUB        LIKE STPO-DATUV,   "VALID TO
             EKGRP        LIKE MARC-EKGRP,   "PURCHASE ORG
             LIFNR        LIKE EORD-LIFNR,    "Vendor code     10
             MARK(1)      TYPE C,             "Mark
             KBETR        LIKE KONP-KBETR,    "Rate price      11
             KONWA        LIKE KONP-KONWA,    "Currency        5
             KPEIN        LIKE KONP-KPEIN,    "Unit Qty        5
             KMEIN        LIKE KONP-KMEIN,    "Condition Unit  3
             DATAB        LIKE A018-DATAB,    "Condition from  10
             DATBI        LIKE A018-DATBI,    "Condition to    10
           END OF DATAITEM.
    ---- File Line work area -
    DATA: BEGIN OF LINE,
             WERKS(4)     TYPE C,                               "Plaint   4
             MATNR(18)    TYPE C,             "Material Number 18
             EKGRP(3)     TYPE C,             "Purchase Group  3
             LIFNR(10)    TYPE C,             "Vendor code     10
             VDATU        LIKE EORD-VDATU,    "Vendor valid from 10
             BDATU        LIKE EORD-BDATU,    "Vendor valid to   10
             MARK(1)      TYPE C,             "Mark
             KSCHL(4)     TYPE C,             "Condition type  4
             KBETR(18)    TYPE C,             "Rate price      11
             KPEIN(5)     TYPE C,             "Rate unit       5
             KONWA(5)     TYPE C,             "Currency        5
             KMEIN(3)     TYPE C,             "Condition Unit  3
             DATAB        LIKE A018-DATAB,    "Condition from  10
             DATBI        LIKE A018-DATBI,    "Condition to    10
           END OF LINE.
    *Local Data Object Define
    DATA:  WK_CNT TYPE I,                   "Count variable
           WK_LVL TYPE I,                   "BOM level
           WK_QTY TYPE I.                   "BOM component qty
    DATA: WK_LIFNR LIKE EORD-LIFNR,
          WK_MATNR LIKE MARC-MATNR.
    *Internal Table define
    DATA TAB_STACK LIKE STANDARD TABLE OF WK_STACK.   "STACK TABLE
    DATA TAB_BOM   LIKE STANDARD TABLE OF WK_BOM.     "FOR BOM
    DATA TAB_DATA  LIKE STANDARD TABLE OF DATAITEM.   "FOR ALL
    Parameter in Block1
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.         "TITLE TEXT-001.
    PARAMETERS:
      P_WERKS LIKE MARC-WERKS DEFAULT 'WX01',              "Plant
      P_STLTY LIKE STPO-STLTY DEFAULT 'M',                 "BOM Category
      P_MATNR LIKE MARC-MATNR OBLIGATORY,                  "Material
      P_STDAT LIKE EORD-VDATU OBLIGATORY DEFAULT SY-DATUM. "Standard Date
    SELECTION-SCREEN END OF BLOCK B1.
    Parameter in Block2
    SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS: P_SCREEN RADIOBUTTON GROUP R1.     "Screen output
    SELECTION-SCREEN COMMENT 03(21) TEXT-001.
    SELECTION-SCREEN POSITION 32.
    PARAMETERS: P_FILE RADIOBUTTON GROUP R1.       "NTFILE output
    SELECTION-SCREEN COMMENT 34(17) TEXT-002.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK B2.
    Parameter in Block3
    SELECTION-SCREEN BEGIN OF BLOCK B3 WITH FRAME.
    PARAMETERS:
    P_NTFILE(45)  TYPE C    LOWER CASE OBLIGATORY.
      P_PCFILE      LIKE RLGRAP-FILENAME.
    SELECTION-SCREEN END   OF BLOCK B3.
    INITIALIZATION
    INITIALIZATION .
      CLEAR :  WK_CNT,
               WK_LVL,
               WK_QTY,
               WK_MATNR,
               WK_STACK,
               WK_BOM,
               DATAITEM.
      WK_LVL = 0.
      WK_QTY = 1.
      REFRESH: TAB_STACK,
               TAB_DATA,
               TAB_BOM.
    *&      AT SELECTION-SCREE ON VALUE-REQUEST
    *AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_NTFILE.
    PERFORM F_SHOW_FILE_POPUP CHANGING P_NTFILE.       "Popup display
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_PCFILE.
      PERFORM F_FILENAME_GET USING P_PCFILE
                          CHANGING P_PCFILE.
    *&      Form  F_FILENAME_GET
      --> ST_DAT_PATH     : Preset path
      <-- ST_DAT_FILENAME : Selected file name
    FORM F_FILENAME_GET USING st_dat_path
                     CHANGING st_dat_filename.
      CALL FUNCTION 'WS_FILENAME_GET'
        EXPORTING
          def_filename     = SPACE
          def_path         = st_dat_path
          mask             = ',.,.,'
          mode             = '0'
          title            = 'TXT-file select'
        IMPORTING
          filename         = st_dat_filename
        EXCEPTIONS
          inv_winsys       = 1
          no_batch         = 2
          selection_cancel = 3
          selection_error  = 4
          OTHERS           = 5.
      IF sy-subrc <> 0.
        MESSAGE s002(yf1) WITH 'F_FILENAME_GET' sy-subrc.
      ENDIF.
    ENDFORM.                    "F_FILENAME_GET
    MAIN PROCESS
    START-OF-SELECTION.
    ---- Check material -
      PERFORM CHECK_PROD.
    ---- get vendor data -
      PERFORM GET_VENDOR_DATA.
    ---- output screen/file -
      IF P_SCREEN = 'X'.
        PERFORM SET_OUTPUT.            "Output to screen directly
      ELSEIF P_FILE = 'X'.
        IF P_PCFILE <> ''.
          PERFORM DOWNLOAD_DATA.       "Write data into ntfile
        ELSE.
          MESSAGE E007(00) WITH 'P_PCFILE'.
        ENDIF.
      ENDIF.
    END-OF-SELECTION.
      ULINE (142).
      WRITE: /002 'Component Material Count:', WK_CNT.
    TOP-OF-PAGE
    TOP-OF-PAGE.
      WRITE: /002 'Product:', 013 P_MATNR,
              030 '****** BOM Price List ******',
              070 SY-DATUM,
              095 'PAGE:',
              100 SY-PAGNO.
      ULINE (142).
      WRITE: /001   '|Level',
              007   '|Material',
              026   '|Cat',
              030   '|Quantity',
              044   '|From',
              055   '|To',
              066   '|PurG',
              071   '|Vendor',
              082   '|MK',
              085   '|Price',
              101   '|Crncy',
              107   '|UnitQty',
              115   '|Unit',
              120   '|From',
              131   '|To',
              142   '|'.
      ULINE (142).
    *&FORM CHECK_PROD
    text
    -->p1      text
    <--p2      text
    FORM CHECK_PROD.
      SELECT SINGLE * FROM MARC
                     WHERE WERKS = P_WERKS           " Plant
                     AND   MATNR = P_MATNR           " Material
                     AND   DISPR IN ('F100','F200'). " Product
      IF SY-SUBRC = 0.
        PERFORM CHECK_BOM1 USING MARC-MATNR MARC-WERKS. " CHECK_BOM1
      ELSE.
        MESSAGE E022.
      ENDIF.
    ENDFORM.                                         " CHECK_PROD
    *&FORM CHECK_BOM1
    text
    -->p1      text
    <--p2      text
    FORM CHECK_BOM1 USING VALUE(FP_MATNR) VALUE(FP_WERKS).
      SELECT SINGLE * FROM  MAST
                      WHERE MATNR = FP_MATNR     AND      "Material
                            WERKS = FP_WERKS.             "Plant
      IF SY-SUBRC = 0.
        PERFORM PUSH_STACK USING WK_LVL WK_QTY.   "Save parent attribute
        PERFORM CHECK_BOM2 USING MAST-STLNR.                    "Check BOM2
      ENDIF.
    ENDFORM.                                                    "CHECK_BOM1
    *&FORM CHECK_BOM2
    text
    -->p1      text
    <--p2      text
    FORM CHECK_BOM2 USING VALUE(FP_STLNR).
      SELECT * FROM  STPO
               WHERE STLTY = P_STLTY        AND        "BOM category
                     STLNR = FP_STLNR.                 "BOM number
        PERFORM POPOUT_WK.                  "Pop out to work area
        WK_BOM-LEVEL = WK_LVL.              "Current BOM level
        WK_BOM-MATNR = STPO-IDNRK.          "Material number
        WK_BOM-POSTP = STPO-POSTP.          "ITEM Category
        WK_QTY       = STPO-MENGE * WK_QTY. "For Stack
        WK_BOM-MENGE = WK_QTY.              "BOM Component qty
        PERFORM CHECK_BOM3 USING STPO-STLTY STPO-STLNR STPO-STLKN.
        PERFORM CHECK_BOM1 USING STPO-IDNRK P_WERKS.
      ENDSELECT.
      PERFORM POPOUT_STACK.
    ENDFORM.                                                    "CHECK_BOM2
    *&FORM CHECK_BOM3
    text
    -->p1      text
    <--p2      text
    FORM CHECK_BOM3 USING VALUE(FP_STLTY) VALUE(FP_STLNR) VALUE(FP_STLKN).
      SELECT SINGLE * FROM  STAS
                      WHERE STLTY = FP_STLTY        "BOM category
                      AND   STLNR = FP_STLNR        "BOM number
                      AND   STLKN = FP_STLKN        "BOM item
                      AND   DATUV <= P_STDAT        "Valid from
                      AND   LKENZ = ' ' .           "Valid
      IF SY-SUBRC = 0.
        WK_BOM-DATUV = STAS-DATUV.                  "Valid from
      ENDIF.
      SELECT SINGLE * FROM  STAS
                      WHERE STLTY = FP_STLTY        "BOM category
                      AND   STLNR = FP_STLNR        "BOM number
                      AND   STLKN = FP_STLKN        "BOM item
                    AND   DATUV > P_STDAT         "Valid from
                      AND   LKENZ = 'X' .           "Invalid
      IF SY-SUBRC = 0.
        SELECT SINGLE * FROM  STAS
                       WHERE STLTY = FP_STLTY        "BOM category
                       AND   STLNR = FP_STLNR        "BOM number
                       AND   STLKN = FP_STLKN        "BOM item
                       AND   DATUV > P_STDAT         "Valid from
                       AND   LKENZ = 'X' .           "Invalid
        IF SY-SUBRC = 0.
          WK_BOM-DATUB = STAS-DATUV.          "Valid to
          APPEND WK_BOM TO TAB_BOM.
        ENDIF.
      ELSE.
        WK_BOM-DATUB = '99991231'.          "Manul input
        APPEND WK_BOM TO TAB_BOM.
      ENDIF.
    ENDFORM.                                                    "CHECK_BOM3
    *&FORM PUSH_STACK
    text
    -->p1      text
    <--p2      text
    FORM PUSH_STACK USING VALUE(FP_LVL) VALUE(FP_QTY).
      WK_STACK-LEVEL = FP_LVL + 1.
      WK_STACK-QUANT = FP_QTY.
      APPEND WK_STACK TO TAB_STACK.    "Push stack
      SORT TAB_STACK BY LEVEL.         "Sort table by level
    ENDFORM.                           "PUSH_STACK
    *&FORM PUSH_STACK
    text
    -->p1      text
    <--p2      text
    FORM POPOUT_STACK.
      DESCRIBE TABLE TAB_STACK LINES WK_CNT.
      IF WK_CNT > 0.
        DELETE TAB_STACK INDEX WK_CNT.     "Popout stack
        SORT TAB_STACK BY LEVEL.           "Sort table by level
      ENDIF.
    ENDFORM.                               "POPOUT_STACK
    *&FORM POPOUT_WK
    text
    -->p1      text
    <--p2      text
    FORM POPOUT_WK.
      DESCRIBE TABLE TAB_STACK LINES WK_CNT.
      IF WK_CNT > 0.
        READ TABLE TAB_STACK INTO WK_STACK INDEX WK_CNT.   "Popout stack
        IF SY-SUBRC = 0.
          WK_LVL = WK_STACK-LEVEL.                         "Current Level
          WK_QTY = WK_STACK-QUANT.                         "Parent Qty
        ENDIF.
      ENDIF.
    ENDFORM.                    "POPOUT_WK
    *&FORM DOWNLOAD_DATA
    text
    -->p1      text
    <--p2      text
    FORM DOWNLOAD_DATA.
      DATA: L_RETURN     TYPE   SY-SUBRC.
      PERFORM GUI_DOWNLOAD
                  TABLES
                     TAB_DATA
                  USING
                     P_PCFILE
                     'X'
                  CHANGING
                     L_RETURN.
      IF L_RETURN <> 0.
        MESSAGE S020.
      ELSE.
        MESSAGE S021.
      ENDIF.
    ENDFORM.                    " DOWNLOAD_DATA
    *&FORM GET_VENDOR_DATA
    text
    -->p1      text
    <--p2      text
    FORM GET_VENDOR_DATA.
      LOOP AT TAB_BOM  INTO WK_BOM.
        CLEAR DATAITEM.
        SELECT * FROM MARC
                WHERE WERKS = P_WERKS             "Plant
                  AND MATNR = WK_BOM-MATNR.       "Material
          DATAITEM-EKGRP = MARC-EKGRP.
          SELECT SINGLE * FROM  MARA
                          WHERE MATNR = MARC-MATNR    AND   "Material number
                                MTART IN ('1211','1221').
          IF SY-SUBRC = 0.
            SELECT COUNT(*) FROM  EORD
                           INTO  (WK_CNT)
                     WHERE WERKS  = P_WERKS        AND  "Plaint
                           MATNR  = WK_BOM-MATNR   AND  "Material
                           VDATU <= P_STDAT        AND  "Valid-From
                           BDATU >  P_STDAT.            "Valid-To
            IF WK_CNT > 1.
              DATAITEM-MARK = '*'.
            ELSEIF WK_CNT = 0.
              MOVE-CORRESPONDING WK_BOM TO DATAITEM.
              APPEND DATAITEM TO TAB_DATA.
            ENDIF.
            SELECT * FROM  EORD
                     WHERE WERKS  = P_WERKS        AND  "Plaint
                           MATNR  = WK_BOM-MATNR   AND  "Material
                           VDATU <= P_STDAT        AND  "Valid-From
                           BDATU >  P_STDAT.            "Valid-To
              MOVE-CORRESPONDING WK_BOM TO DATAITEM.
              DATAITEM-LIFNR  = EORD-LIFNR.             "Vendor code
              SELECT  * FROM  A018
                        WHERE LIFNR  =  EORD-LIFNR  AND  "Vendor code
                              MATNR  =  EORD-MATNR  AND  "Material
                              EKORG  =  EORD-EKORG  AND  "Purchase org
                              DATAB <=  P_STDAT     AND  "Valid-from
                              DATBI >   P_STDAT.         "Valid-to
                DATAITEM-DATAB = A018-DATAB.    "Condition From
                DATAITEM-DATBI = A018-DATBI.    "Condition To
                IF SY-SUBRC = 0.
                  SELECT * FROM  KONP
                           WHERE KNUMH = A018-KNUMH   AND   "Cnd Number
                                 KSCHL = A018-KSCHL   AND   "Cnd Type
                                 KAPPL = A018-KAPPL.        "Cnd Cat
                    DATAITEM-KBETR = KONP-KBETR.            "Price
                    DATAITEM-KONWA = KONP-KONWA.            "Currency
                    DATAITEM-KPEIN = KONP-KPEIN.            "Price Unit
                   DATAITEM-KMEIN = KONP-KMEIN.            "Unit of Material
                    APPEND DATAITEM TO TAB_DATA.            "Append TAB_DATA
                  ENDSELECT.
                ENDIF.
              ENDSELECT.
            ENDSELECT.
          ELSE.
            MOVE-CORRESPONDING WK_BOM TO DATAITEM.
            APPEND DATAITEM TO TAB_DATA.
          ENDIF.
        ENDSELECT.
        IF SY-SUBRC <> 0.
          MOVE-CORRESPONDING WK_BOM TO DATAITEM.
          APPEND DATAITEM TO TAB_DATA.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    "GET_DATA
    *&      Form  SET_OUTPUT
          text
    -->  p1        text
    <--  p2        text
    FORM SET_OUTPUT .
      CLEAR WK_CNT.
      LOOP AT TAB_DATA INTO DATAITEM.
        WRITE: /001   '|', 002 DATAITEM-LEVEL,   "Material Number
                007   '|', 008 DATAITEM-MATNR,   "Purchase Grp
                026   '|', 027 DATAITEM-POSTP,   "Item category
                030   '|', 031 DATAITEM-MENGE,   "BOM Component qty
                044   '|', 045 DATAITEM-DATUV,   "BOM valid from
                055   '|', 056 DATAITEM-DATUB,   "BOM valid to
                066   '|', 067 DATAITEM-EKGRP,   "Purchase Org
                071   '|', 072 DATAITEM-LIFNR,   "Vendor
                082   '|', 083 DATAITEM-MARK,    "Mark flag
                085   '|', 086 DATAITEM-KBETR,   "Price
                101   '|', 102 DATAITEM-KONWA,   "Currency
                107   '|', 108 DATAITEM-KPEIN,   "Unit Qty
                115   '|', 116 DATAITEM-KMEIN,   "Unit OM
                120   '|', 121 DATAITEM-DATAB,   "Cnd From
                131   '|', 132 DATAITEM-DATBI,   "Cnd To
                142   '|'.
        WK_CNT = WK_CNT + 1.
      ENDLOOP.
    ENDFORM.                    " SET_OUTPUT

    Prabhu Peram,
    Thanks very much.
    I want to show an idea of BOM explosion by constructing a stack.
    BOM explosion uses first-root-searching and pushes the "root" material into stack.If the "root" has no left-child,pops out the "root" material and searchs the right-child....and completes the entire BOM explosion.
    Message was edited by:
            Mic chen
    Message was edited by:
            Mic chen

  • Deletion flags for equipment BOM

    Hi,
    In equipment BOM header , there are 2 fields for deletion flag :
    -one is set manually (the one on the right)
    -the other set by the system (the one on the left).
    Can someone explain to me how deletion flag indicator (on the left) work?
    Thanks,
    P.

    Hi,
    To explain this i must say first there is a difference in the Deletion Flag (Right in Header) and Deletion Indicator(Left in Header).
    In SAP term The deletion Indicator shows the item which has already been Deleted from the System and Deletion flag shows that the record has been flagged for deletion and will hence be Archieve (when, depends on the Archieving strategy followed in the company).
    To explain the affect these will have is the Deletion Indicator will not allow you to use the and will show the error as the object has been deleted and is not in the system.
    Deletion flag for BOMs
    Indicator: this BOM will be archived during the next archiving run and, if necessary, deleted from the data base.
    Where as the Deletion Flag will show that the object is ready to be archieved and is set to be deleted.
    Deletion Indicator
    Indicator showing that the BOM header or the BOM item has been deleted with reference to the change number.
    Now there is another difference in the way we can amke the objects active from deletion flag anf the deletion indicator.
    For Deletion flag you have to go to change mode and just remove or untick the deletion flag.
    For Deletion indicator you have to go to Archieve table and pull the object back in to SAP system and it will then show only the deletion flag, which can be removed by the way explained above.
    I hope this was helpful, if yes then please award points.
    Regards
    Anoop

  • BOM explosion number.

    Hello SAP Gurus,
    What is the use of BOM explosion number? after creation how & where to assigne it?
    with regards,
    dev123.

    Hi,
    If you want to ensure that for a certain production unit, the BOM structure is always exploded with the same date, you can assign a BOM explosion number to the planned order (or for make-to-order production it can be directly assigned to the sales order).
    If you do not use the assignment of a BOM explosion number, the planned start date of the planned order is always used as the explosion date for the BOM. The system explodes the particular BOM that is valid on this date.
    For multi-level BOM structures, larger time intervals may exist between the explosion dates of the individual assemblies. If BOMs (or alternative BOMs) have been changed in the meantime (for example, exchanging individual components due to new technical drawings, changed production techniques, due to parts to be discontinued etc.) a situation may exist whereby an assembly that is used repeatedly is produced with different BOM structures.
    Create BOM Explosion Number:-
    1.  Starting from the MRP menu, choose Master data --> BOM explosion number -->Edit (MDSP)
    The system displays the initial screen for maintaining the BOM explosion number.
    2.  Choose  .
    The screen for maintaining the BOM explosion numbers now appears.
    3.  Choose New entries.
    A screen now appears where you can enter new BOM explosion numbers.
    4.  Enter data as required.
    BOM explosion number
    The BOM explosion number is the object for which the following data is maintained. It can be entered alphanumerically.
    Fixed key date
    The fixed key date determines which bill of material is exploded.
    Plant
    You can also specify a BOM explosion number for a specific plant. Enter the appropriate plant in this case.
    Material
    You can specify a BOM explosion number for a specific material. Enter the appropriate material in this case.
    Status
    You can set the BOM explosion number to active or inactive using the status field. Only active BOM explosion numbers are used in the planning run.
    Save your entries.

  • BOM explosion in CM25

    Hi,
    We have some issue regarding BOM not reexplodes when dispatch in CM25.
    Though we have a solution that to do an enhancement to CM25 where will change the BaPI MD_PLDORD_CHANGE, where we will copy the dispatch date to the explosion date, then after saving the change will reflect.
    My question is after we do the change, the change is already reflected in the explosion date, but the components for the planned order are not reexploded based in the explosion date. Is there any setting in the BaPi how it will be done? As far as doing it manually, we can reexplode the bom in MD12 by the Explode BOM button.
    Regards,
    JF

    Hi John
    The documentation of this BAdI on SE18 provides the following information:
    Note that in using this method, all fields of the structure CH_PLAF are offered for change, but that not all of the fields of this structure can be sensibly changed for further processing. Generally, there is no guarantee that the changes made with this BAdI will be supported in the further processes. No liability is taken for any mistakes which occur in subsequent processing after changes made using this method.
    Avoid the following changes to planned orders within this method, since they could lead to inconsistent datasets:
    Changes to explosion-relevant data (quantities, dates, production versions, and so on), since no new BOM explosion occurs after the method has run
    Therefore, this BAdI was not developed for such use and, even if you change the explosion date, there will be no BOM explosion.
    BR
    Caetano

  • BOM Explosion No.

    Hi All,
    Can you please tell me - where the BOM Explosion No. is assigned with Plant?
    Is there any setting for BOM explosion no. - number range assignment with plant.
    Thanks in advance
    regards,
    snehasish maity

    Dear snehasish
    1. Starting from the MRP menu, choose Master data => BOM explosion number => Edit.
       The system displays the initial screen for maintaining the BOM explosion number.
    2.  Choose  .
         The screen for maintaining the BOM explosion numbers now appears.
    3.  Choose New entries.
         A screen now appears where you can enter new BOM explosion numbers.
    4.  Enter data as required.
         o  BOM explosion number
          The BOM explosion number is the object for which the following data is maintained. It can be entered alphanumerically.
          o   Fixed key date
           The fixed key date determines which bill of material is exploded.
           o   Plant
             You can also specify a BOM explosion number for a specific plant. Enter the appropriate plant in this case.
              o   Material
              You can specify a BOM explosion number for a specific material. Enter the appropriate material in this case.
               o  Status
               You can set the BOM explosion number to active or inactive using the status field. Only active BOM explosion numbers are used in the planning run.
    5   Save your entries.
    Thanks
    G. Lakshmipathi

  • How to close Purchase Order and mark to deletion flag.??

    Hi,
    We need to close all Open POs(For archiving, some old data) through a report.
    Considering .....
                       1. PO-GR-IR
    and              2. STO-Outboundelivery-PGI-IBD-PGR
    Checked few threads, though useful but still more information required.
    -> Preprocessing program for archiving standard object MM_EKKO 'RM06EV47' is  helpful.
    -> Example we have four POs p1,p2,p3 and p4.
    P1,p2 has deletion flag as 'L' so will be filtered out with
      SELECT ebeln    FROM  ekko INTO TABLE lt_sekko           
        WHERE ebeln  IN er_ebeln
          AND ekorg  IN er_ekorg
          AND bstyp  IN er_bstyp
          AND bedat  IN er_bedat
          AND bsart  IN er_bsart
          AND ekgrp  IN er_ekgrp
          AND loekz <> 'L'
          ORDER BY EBELN.
    For P3 has GR .
    P4 has to be marked for deletion flag.
    Regards
    Mohinder Singh

    Hi Thanks for the reply. I checked with that bapi too. I used  some part of standard code and then manipulated. Will shorty paste the code on to SDN as its general one and may be used by others.It still under testing.
    Edited by: Mohinder Singh Chauhan on Feb 20, 2009 4:07 AM

  • Regarding purchase order header deletion flag indicator

    hi all,
    Right now in SAP PO header deletion flag has been set to X.
    so what i need is the PO should be flagged only at item level .
    how can i proceed?where can i find the deletion flag in the transaction screen?

    You can find in item overview (RM06E-LOEKZ)

  • Reg:purchase order header deletion flag

    hi all,
    right now in SAP PO header deletion flag has been set to X.
    so what i need is the PO should be flagged only at item level .
    how can i proceed?where can i find the deletion flag in the transaction screen?

    Hi,
    To set deletion flag at PO item, select the item and click on delete icon (a garbage bin).
    Cheers.
    ...Reward if useful.

  • Material deletion flag at storage location level is not working

    I have a material that is created in some plants and also in some storage locations within each plant. If I mark the deletion flag at plant level I am not able to create a PO -> Me051 error message appears. Whereas if I mark the deletion flag at storage location level nothing appens. I am able to create a PO and also to create to goods receipt. Is there any customization that I should do in order to get the error message?
    Thanks in advance.

    storage location level deletion flag is not checked at order creation.
    it is assumed that you can change the storage location when you do the receipt.
    MRP run is at plant level, so the requirement is valid even the storage location view is flagged for deletion.

  • In what table is the Quality Notification have the Delete Flag?

    I have a report that list all open tasks for a Quality Notification.  There are notifictions that I went into QM02 and deleted the notification.  I do not want these to show up on the report.  Where would I find the "delete" flag? 
    Thanks

    Hi,
    Please check table JEST and TJ02T (QMEL-OBJNR -> JEST-OBJNR and JEST-STAT -> TJ02T-ISTAT)
    ISTAT  TXT04 TXT30                         
    I0076   DLFL  Deletion flag            
    Regards,
    Ferry Lianto

  • Bom Explosion first level, if first level having phanthom it has to explode

    Dear All,
    Kindly tell any function module is available for BOM explosion first level.
    if first level having any sub assembly part, bom not to explode below level.
    if first level having any phanthom material, it has to explode below level, in this phanthom material having any below phanthom material part of bom, it also explode below level.
    it means only phanthom material has explode below level, no sub assembly part.
    If any functional module is available for this bom explosion.
    i tried functional module - CS_BOM_EXPL_MAT_V2, but if i put "X" in field  - MEHRS, sub assembly part also exploding below level.
    kindly help on this.
    Regards,
    sakthi

    Hi,
    i tried functional module - CS_BOM_EXPL_MAT_V2, but if i put "X" in field - MEHRS, sub assembly part also exploding below level.
    Ans: Do not set this MEHRS indicator. This will explode the BOM to first level.
    Then add another loop on first level materials to check if any of them is phantom and explode the phantoms using same FM module in a loop. Follow this until all are done.
    Regards,
    Santosh Sarda

  • Retrieving deleted  BOM explosion Number

    HI Folks,
    I have deleted one bom explosion number.Now i wan to retrieve it back as system is not allowing to create same  Bom explosion number and showing below error
    "BOM explosion number s4370030 has been flagged for deletion".Appreciate early replies.
    Regards,
    SBR

    Hi Sbr,
    1. I dont think that it is possible to retrive the BOM explosion number that has been deleted.
    2. It is alwyas recommended to change the status as inactive if you dont want to use it.
    Reg
    Dsk

  • Alternative unit of measure in BOM explosion report

    Dear gurus
    I want to get the alternative unit of measure along with the base unit of measure during the BOM explosion report in CS11.I tried with the layout but I cant find the same.
    How is this possible?
    regards
    kumar s

    Hi Kumar,
    You can develop  a Z report. In the standard CS11, the functionality of displaying the alternate UOM is not feasible.
    thanks and regards
    Muruegsan

Maybe you are looking for