Tolerance set up for Subcontracting BOM

Hi Sap Gurus,
Good day!
I have a requirement wherein the client wants to have a tolerance check on the raw materials consumed during the receipt of Finished Goods processed via subcontracting. Lets say that 1 pc of Finished Good requires 50 pcs of Raw Material1 and 100 pcs of Raw Material2. During the GR of the FG, and the entry of the consumed Raw Mats, the system will allow posting for, say 10% of the indicated quantity. So it will allow consumption for 55pcs of Raw Material1 and 110pcs of Raw Material2. Anything beyond that will result in a message popping out.
Can SAP accommodate such requirement?
Best regards,
DeLo

Dear Delo,
In my understanding it is not possible in standard SAP.May be through User Exits or other enhancements this may be achieved.
Regards
Mangalraj.S

Similar Messages

  • Gl Tolerance set up for Autoposting

    Hi ,
           We have EBS files posting to SAP ( autopost) to GL's and some of the entries in this autpost are not cleared automatically the automatic clearing differences are too high. I checked the tolerance group for those GL's in OBA0 ( both From and To ) for a given company code and its Blank there is no tolrance group defined , the limits on the blank tolerance group is very less and it fails to autpost when it is more than 50 million . Can some one let me know what changes I need to make for this autopost to be sucessful when the amounts from the bank file are too large ?
    Thanks in advance .

    Hi,
    maybe I understand you wrong, however the whole purpose of tolerance in deviations is to minimize manual process in the case those differences are immaterial. E.g. your expected incoming payment amount from one of your Customers is EUR 10,00 (ten Euros), however due to whatever reason you receive just 9,95. So instead of starting a manual work flow in your office and negotiating difference of EUR 0,05, which might cost you much more in terms of alternative costs - some time of your human resource, also some correspondence relevant costs, etc. - let's assume EUR 5, you just clear that item, putting that difference amount to some P&L account - this is fully traceable in SAP.
    on the other hand, if you talk about deviations of around 50 mio, I don't think it makes any sense, cause it is very huge risk and direct high-way to financial errors and/ or frauds. And, of course,  in this case every item should be dealt with proper diligence. also, I assume a number of those material deviations is usually limited, so this is another reason why no automation is expected there.
    hope this will help you.
    Rgds,
    Renatas

  • Function module to get the valid Subcontract BOM and components for Pur doc

    Hello Gurus,
    I need help to create a z report of subcontracting bom and their components exploded in Schedule agreement. Seems like there is no standard report which can give the boms from purcashing doc.  Can someone please tell me the name of the function module for it? any help will be highly appreciated.
    Regards,
    Owais

    hi
    u can use
    STPO BOM - item
    STAS BOMs - Item Selection
    STZU Permanent BOM data
    also check stko or mast or stpo
    or
    Perhaps you can run ST05 while run some transaction for display the
    BOM.
    Once the transaction for display the BOM gets finished, you need to stop the
    trace on ST05 and then display it, you will see tables readden in the
    transaction,
    not tried plz check*
    reward if helpful
    regards
    kunal
    Edited by: kunal ingale on Jul 22, 2008 6:21 AM

  • BOM Explosion in PO for Subcontract.

    Hello Gurus,
    I have Created the BOM using CS01 for subcontract order. i could not able to explode it during my PO. I wantend to know weather there is any prerequsit to be made for the BOM Explosion in the PO..?
    regards,
    Mahesh.

    Dear Mahesh,
    1.Create the BOM for the sub-contract material(header material) in T code CS01 for BOM usage 1.
    2.Mention the procurement type as F and special procurement type as 30 in the  material master of the header material(which you
    recieve from sub-contractor) in MRP2 view.
    3.Maintain the sub-contracting Purchase info record in ME11.
    Check and revert
    Regards
    Mangalraj.S

  • BOM mandatory for Subcontract PO .

    Dear All ,
               My client wants to make BOM mandatory for subcontract PO .Like whenever I create a Subcontract PO with item category L and BOM is not maintained for the material , the system should give error message .
              We have 2 links for this .One is item category L and other is purchasing group 005 which they have maintained for subcontracting work .Please let me know how to maintain error message for this .
    Regards
    Abhijit Das

    Hi
    For Scheduling agreements, the system do not  issue any error message while creation.
    But when you maintain Delivery schedules in transaction ME38 , they system will ask for component and schedule lines cannot be saved without entering the components.
    Gobinathan G

  • Is it possible to create a BOM  for ROH material for Subcontracting

    Dear Guru's
    As per my knowledge BOM is needed only for HALB & FERT material even if for subcontracting purpose. So is it possible to create a BOM for ROH material for Subcontracting?. Pls help me to get a soln ?
    Regards
    Ragesh

    Ragesh,
    When you are subcontracting the material, the Std SAP says that the material type should be HALB and not ROH.
    But if client requires for any reason that the material should be ROH only, there is no problem in chaning the settings.
    Sumeet

  • REPORT FOR SUBCONTRACTING

    DEAR FRIENDS,
    I am making a program for tracking the materials given (mb1b 541 movt.) for subcontracting and taken by me (101 for actual good receipt, 543 for the given material- stock type inward, 545 for the scrap returns). but while i made the program i am unable to pick up the materials BOM from the PO which is essential to take the difference between these and the supplied quantities taken-in by GR.
    following is the program.
    Please suggest the changes.   Thanks,
    Deepak
    *& Report  ZMM_SUBCONTRACTING_PO_REPORT
    *& Author:
    *& Date  :
    *& Reason: Sub Contracting PO Report.
    *&         Find Discreprancy in PO and BOM. according to 543 and 545
    REPORT  ZMM_SUBCONTRACTING_PO_REPORT NO STANDARD PAGE HEADING
                                         LINE-SIZE 157.
    *& TABLES DECLARATION
    TABLES: EKKO,
            EKPO,
            EKBE,
            ENT5303.
    *& SELECTION-SCREEN.
    SELECTION-SCREEN: BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    SELECT-OPTIONS: S_MATNR FOR EKPO-MATNR,
                    S_WERKS FOR EKBE-WERKS OBLIGATORY.
    PARAMETERS:     P_BUKRS LIKE EKKO-BUKRS OBLIGATORY.
    SELECT-OPTIONS: S_BUDAT FOR EKBE-BUDAT OBLIGATORY,
                    S_EBELN FOR EKKO-EBELN,
                    S_BELNR FOR EKBE-BELNR,
                    S_GJAHR FOR EKBE-GJAHR.
    SELECTION-SCREEN: END OF BLOCK B1.
    *& INTERNAL TABLES DECLARATION.
    DATA: BEGIN OF IT_EKKO OCCURS 0,
          EBELN LIKE EKKO-EBELN,
          END OF IT_EKKO.
    DATA: BEGIN OF IT_EKBE OCCURS 0,
          EBELN LIKE EKBE-EBELN,
          EBELP LIKE EKBE-EBELP,
          GJAHR LIKE EKBE-GJAHR,
          BELNR LIKE EKBE-BELNR,
          BUZEI LIKE EKBE-BUZEI,
          BEWTP LIKE EKBE-BEWTP,
          BWART LIKE EKBE-BWART,
          BUDAT LIKE EKBE-BUDAT,
          MENGE LIKE EKBE-MENGE,
          DMBTR LIKE EKBE-DMBTR,
          LFBNR LIKE EKBE-LFBNR,
          MATNR LIKE EKBE-MATNR,
          WERKS LIKE EKBE-WERKS,
          BUKRS LIKE WB2_V_EKKO_EKPO2-BUKRS,
          MENGE_I LIKE WB2_V_EKKO_EKPO2-MENGE_I,
          LIFNR LIKE WB2_V_EKKO_EKPO2-LIFNR,
          COUNT TYPE P DECIMALS 4,
          BMENGE LIKE EKBE-MENGE,
          MENGE101 LIKE EKBE-MENGE,
          MENGE543 LIKE EKBE-MENGE,
          MENGE545 LIKE EKBE-MENGE,
          DIFFER   LIKE EKBE-MENGE,
          TMENGE   LIKE EKBE-MENGE,
          RATE     LIKE EKBE-DMBTR,
          NAME1 LIKE LFA1-NAME1,
          LINE_COLOR(4),
          END OF IT_EKBE.
    DATA: WA LIKE IT_EKBE.
    DATA: BEGIN OF IT_FINAL OCCURS 0.
          INCLUDE STRUCTURE IT_EKBE.
    DATA: END OF IT_FINAL.
    DATA: BEGIN OF IT_FINAL_TEMP OCCURS 0.
          INCLUDE STRUCTURE IT_EKBE.
    DATA: END OF IT_FINAL_TEMP.
    DATA: BEGIN OF IT_BOM OCCURS 0.
          INCLUDE STRUCTURE CAPP_ITM.
    DATA: END OF IT_BOM.
    DATA: BEGIN OF IT_BOM_HEAD OCCURS 0.
          INCLUDE STRUCTURE CAPP_BOM.
    DATA: END OF IT_BOM_HEAD.
    *& DATA DECLARATION.
    DATA: COUNT TYPE P DECIMALS 4,
          V_CNT TYPE P DECIMALS 4 VALUE '0.0001' ,
          V_MENGE LIKE EKBE-MENGE,
          V_DELETE.
    TYPE-POOLS: slis.
    DATA:  l_date(12) TYPE c,
           l_date1(12) TYPE c,
           l_time(10) TYPE c,
           l_list(60) TYPE c.
    DATA:  CATALOG TYPE SLIS_FIELDCAT_ALV, "FIELDCAT
           TCATALOG TYPE SLIS_T_FIELDCAT_ALV, "IT FIELDCAT
           EVENT TYPE SLIS_ALV_EVENT, "EVENT
           TEVENT TYPE SLIS_T_EVENT,  "IT EVENT
           LAYOUT TYPE SLIS_LAYOUT_ALV, "LAYOUT
           PG_TOP TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE',
           PG_HEAD TYPE SLIS_T_LISTHEADER,
           EXIT1  TYPE SLIS_EXIT_BY_USER,
           VAR1 LIKE DISVARIANT,
           VAR2 LIKE DISVARIANT.
    *& START-OF-SELECTION.
    START-OF-SELECTION.
    PERFORM PROCESS_SELECTION.
    PERFORM DELETE_CANCELLED_DOCUMENTS.
    PERFORM EXPLODE_BOM_FOR_101.
    SORT IT_FINAL BY COUNT.
    PERFORM DISPLAY_OUTPUT.
    FREE IT_FINAL_TEMP.
    *& ALV FORMATTING
    *&                  ALV DISPLAY
      PERFORM GENERATE_ALV_FIELDCAT.
    PERFORM EVENTS USING TEVENT.
    PERFORM TEXT USING PG_HEAD.
      PERFORM ALV_SHOW.
    *& FORM PROCESS_SELECTION.
    FORM PROCESS_SELECTION.
    SELECT
      A~EBELN
      A~EBELP
      A~GJAHR
      A~BELNR
      A~BUZEI
      A~BEWTP
      A~BWART
      A~BUDAT
      A~MENGE
      A~DMBTR
      A~LFBNR
      A~MATNR
      A~WERKS
      B~BUKRS
      B~MENGE_I
      B~LIFNR
    FROM
      EKBE AS A
    JOIN
      WB2_V_EKKO_EKPO2 AS B
    ON
      AEBELN = BEBELN AND
      AEBELP = BEBELP_I
    INTO
      CORRESPONDING FIELDS OF TABLE IT_EKBE
    WHERE
    A~MATNR IN S_MATNR AND
      A~WERKS IN S_WERKS AND
      A~BUDAT IN S_BUDAT AND
      A~EBELN IN S_EBELN AND
      A~BELNR IN S_BELNR AND
      A~GJAHR IN S_GJAHR AND
      A~VGABE IN ('1', '7') AND
      A~BEWTP IN ('E', 'O') AND
      ( A~BWART IN ('101', '545', '543') OR
      ( ABWART = '102' AND ABEWTP = 'E' ) ) AND
      B~BUKRS = P_BUKRS AND
      B~BSTYP = 'F' AND
      B~BSART = 'SUBC'."AND
    B~LOEKZ <> 'X'.
    SORT IT_EKBE BY EBELN EBELP GJAHR BELNR BUZEI.
    ENDFORM.
    *& FORM DELETE_CANCELLED_DOCUMENTS.
    FORM DELETE_CANCELLED_DOCUMENTS.
    DELETE IT_EKBE WHERE BWART = '102' AND BEWTP <> 'E'.
    LOOP AT IT_EKBE WHERE BWART = '102'.
      READ TABLE IT_EKBE INTO WA WITH KEY BELNR = IT_EKBE-LFBNR.
      IF SY-SUBRC = 0.
        DELETE IT_EKBE WHERE BELNR = WA-BELNR.
      ENDIF.
    ENDLOOP.
    CLEAR WA.
    DELETE IT_EKBE WHERE BWART = '102'.
    ENDFORM.
    *& FORM EXPLODE_BOM_FOR_101.
    FORM EXPLODE_BOM_FOR_101.
    CLEAR COUNT.
    LOOP AT IT_EKBE WHERE BWART = '101' OR
                          BWART = '543'.
    IF NOT IT_EKBE-MATNR IN S_MATNR.
      V_DELETE = 'X'.
    ELSE.
      CLEAR V_DELETE.
    ENDIF.
    IF V_DELETE <> 'X'.
    COUNT = COUNT + 1.
    IT_EKBE-COUNT = COUNT.
    V_MENGE = IT_EKBE-MENGE.
    MODIFY IT_EKBE.
    IT_FINAL = IT_EKBE.
    APPEND IT_FINAL.
    ENDIF.
      call function 'CABM_READ_BOM'
        exporting
          I_MATNR               = IT_EKBE-MATNR
          I_WERKS               = IT_EKBE-WERKS
          I_STLAL               = '01'
          I_STLAN               = '3'
          I_DATUV               = IT_EKBE-BUDAT
        TABLES
          EXP_BOM_DATA          = IT_BOM_HEAD
          EXP_ITM_DATA          = IT_BOM
       EXCEPTIONS
         NO_RECORD_FOUND       = 1
         OTHERS                = 2
      if SY-SUBRC <> 0.
      MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ELSE.
    *START RK 18.06.2007
      DELETE IT_BOM WHERE DATUV > IT_EKBE-BUDAT.
    END : 18.06.2007
        IF V_DELETE = 'X'.
          LOOP AT IT_BOM.
            DELETE IT_EKBE WHERE MATNR = IT_BOM-IDNRK.
          ENDLOOP.
          REFRESH IT_BOM.
        ELSE.
          PERFORM CHECK_BOM_GR.
        ENDIF.
      endif.
    ENDLOOP.
    FREE IT_EKBE.
    ENDFORM.
    *& FORM CHECK_BOM_GR.
    FORM CHECK_BOM_GR.
    DATA: WACNT TYPE P DECIMALS 4.
    WACNT = COUNT.
    LOOP AT IT_BOM.
      READ TABLE IT_EKBE INTO WA WITH KEY EBELN = IT_EKBE-EBELN
                                          MATNR = IT_BOM-IDNRK.
      IF SY-SUBRC = 0.
        WACNT = WACNT + V_CNT.
        WA-COUNT = WACNT.
        WA-BMENGE = IT_BOM-MENGE.
        WA-TMENGE = V_MENGE.
        APPEND WA TO IT_FINAL.
        DELETE IT_EKBE WHERE EBELN = WA-EBELN AND
                             EBELP = WA-EBELP AND
                             MATNR = WA-MATNR AND
                             BELNR = WA-BELNR AND
                             BUZEI = WA-BUZEI.
    **START : ADDED BY .... KUMAR ON 14.06.2007
      ELSE.
        WACNT = WACNT + V_CNT.
        WA-COUNT = WACNT.
        WA-BMENGE = IT_BOM-MENGE.
        WA-MATNR  = IT_BOM-IDNRK.
        WA-TMENGE = V_MENGE.
        APPEND WA TO IT_FINAL.
    **END ADDED BY .... KUMAR ON 14.06.2007
      ENDIF.
    CLEAR WA.
    ENDLOOP.
    REFRESH IT_BOM.
    ENDFORM.
    *& FORM DISPLAY_OUTPUT.
    FORM DISPLAY_OUTPUT.
    Populate color variable with colour properties
    Char 1 = C (This is a color property)
    Char 2 = 3 (Color codes: 1 - 7)
    Char 3 = Intensified on/off ( 1 or 0 )
    Char 4 = Inverse display on/off ( 1 or 0 )
              i.e. wa_ekko-line_color = 'C410'
    IT_FINAL_TEMP[] = IT_FINAL[].
    LOOP AT IT_FINAL.
    CLEAR IT_FINAL-DMBTR.
    ********added by .... .... on 17.02.2007
       if it_final-bmenge  < 0.
    IT_FINAL-DIFFER = IT_FINAL-TMENGE * IT_FINAL-BMENGE * -1.
       else.
    *********end by .... .... on 17.02.2007
    IT_FINAL-DIFFER = IT_FINAL-TMENGE * IT_FINAL-BMENGE.
    ********added by .... .... on 17.02.2007
    endif.
    *********end by .... .... on 17.02.2007
      IF IT_FINAL-BWART = '101'.
        IT_FINAL-LINE_COLOR = 'C210'.
        IT_FINAL-MENGE101 = IT_FINAL-MENGE.
        IT_FINAL-DIFFER = 0.
        LOOP AT IT_FINAL_TEMP WHERE BELNR = IT_FINAL-BELNR AND
                                    EBELN = IT_FINAL-EBELN AND
                                    EBELP = IT_FINAL-EBELP.
          IF IT_FINAL_TEMP-BWART <> '545'.
            IT_FINAL-DMBTR = IT_FINAL-DMBTR + IT_FINAL_TEMP-DMBTR.
          ELSE.
            IT_FINAL-DMBTR = IT_FINAL-DMBTR - IT_FINAL_TEMP-DMBTR.
          ENDIF.
        ENDLOOP.
        IT_FINAL-RATE = IT_FINAL-DMBTR / IT_FINAL-MENGE101.
        SELECT SINGLE
          NAME1
        INTO
          IT_FINAL-NAME1
        FROM
          LFA1
        WHERE
          LIFNR = IT_FINAL-LIFNR.
        IF SY-SUBRC <> 0.
          CLEAR IT_FINAL-NAME1.
        ENDIF.
      ELSEIF IT_FINAL-BWART = '543'.
        IT_FINAL-MENGE543 = IT_FINAL-MENGE.
        IT_FINAL-LINE_COLOR = 'C200'.
        IT_FINAL-DIFFER = IT_FINAL-DIFFER - IT_FINAL-MENGE543.
        CLEAR: IT_FINAL-LIFNR,
              IT_FINAL-EBELN,
              IT_FINAL-BELNR,
              IT_FINAL-MENGE_I,
              IT_FINAL-BUDAT.
      ELSEIF IT_FINAL-BWART = '545'.
    ******added by .... on 17.02.2007
       IT_FINAL-MENGE = IT_FINAL-MENGE * -1.
        IT_FINAL-MENGE = IT_FINAL-MENGE.
    *******end by .... on 17.02.2007
        IT_FINAL-MENGE545 = IT_FINAL-MENGE.
        IT_FINAL-LINE_COLOR = 'C200'.
        IT_FINAL-DIFFER = IT_FINAL-DIFFER - IT_FINAL-MENGE545.
        CLEAR: IT_FINAL-LIFNR,
              IT_FINAL-EBELN,
              IT_FINAL-BELNR,
              IT_FINAL-MENGE_I,
              IT_FINAL-BUDAT.
      ELSE.
        IT_FINAL-LINE_COLOR = 'C200'.
        CLEAR: IT_FINAL-LIFNR,
              IT_FINAL-EBELN,
              IT_FINAL-BELNR,
              IT_FINAL-MENGE_I,
              IT_FINAL-BUDAT.
      ENDIF.
    MODIFY IT_FINAL.
    ENDLOOP.
    ENDFORM.
    *&      Form  GENERATE_ALV_FIELDCAT
          text
    FORM GENERATE_ALV_FIELDCAT.
    DATA: POS TYPE I.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'COUNT'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'S. No.'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'MATNR'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'Mat. No.'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'BMENGE'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'BOM Qty'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'EBELN'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'PO No.'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'MENGE_I'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'PO Qty'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'BELNR'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'Gr. No.'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      CATALOG-HOTSPOT = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'BUDAT'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'GR Date'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'MENGE101'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = '101 Gr Qty'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'MENGE543'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = '543 Gr Qty'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'MENGE545'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = '545 Gr Qty'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'DIFFER'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'Difference'.
      CATALOG-NO_ZERO = ' '.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'LIFNR'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'Vendor'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'NAME1'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'Vendor Name'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'RATE'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'Rate'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
      POS = POS + 1.
      CLEAR: CATALOG.
      CATALOG-COL_POS = POS.
      CATALOG-FIELDNAME = 'DMBTR'.
      CATALOG-TABNAME = 'IT_FINAL'.
      CATALOG-SELTEXT_L = 'Value'.
      CATALOG-NO_ZERO = 'X'.
      CATALOG-FIX_COLUMN = 'X'.
      APPEND CATALOG TO TCATALOG.
    ENDFORM.
    *&      Form  ALV_SHOW
          text
    FORM ALV_SHOW.
      LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
      LAYOUT-BOX_TABNAME = 'IT_FINAL'.
      LAYOUT-INFO_FIELDNAME = 'LINE_COLOR'.
      LAYOUT-ZEBRA = 'X'.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM      = SY-REPID
          I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
          IS_LAYOUT               = LAYOUT
          IT_FIELDCAT             = TCATALOG
          IS_VARIANT              = VAR1
          I_SAVE                  = 'A'
          IT_EVENTS               = TEVENT[]
        TABLES
          T_OUTTAB                = IT_FINAL.
    ENDFORM .                    "ALV_SHOW
    *& FORM USER_COMMAND.
    FORM USER_COMMAND USING
              R_UCOMM LIKE SY-UCOMM
              SELFIELD TYPE SLIS_SELFIELD.
    DATA: TABIX LIKE SY-TABIX,
          WA LIKE IT_FINAL.
    TABIX = SELFIELD-TABINDEX.
    READ TABLE IT_FINAL INTO WA INDEX TABIX.
    IF NOT WA-BELNR IS INITIAL.
    set parameter id : 'MBN' FIELD WA-BELNR.
    CALL TRANSACTION 'MB03' AND SKIP FIRST SCREEN .
    ENDIF.
    ENDFORM.

    Hi,
    U can try this standard report for subcontracting:
    J1IFR (Transaction name),
    Not sure how much this will be useful to u.
    regards,
    Viji

  • Cofiguration step for  SubContracting Order Cycle  (SCO)

    Pls,provide me the the configuration steps of SCO(Suncontracting Order Cycle)

    Sub Contracting Cycle
    (1) You have a material that can be procured externally, and you have maintained BOM with components. Any waste generated and received during subcontracting process can be maintained as component with negative quantity. (special procurement type should be 30 in material MRP2 view for the mateiral you are getting back from subcontractor)
    (2) You create a subcontracting PO (PO with Item Category L). You can also maintain Purchase Info Record for Subcontract category for material and subcontractor.
    (3) You make a transfer posting to issue components for SC PO. Material is sent to subcontractor. As material remains under your ownership, system does not make any value entry. But quantity is shown as "Material Provided to Vendor"
    (4) You receive finished material against SC-PO. You also specify components consumed in manufacturing of finished goods. Additionally, if you have negative components in BOM, now you'll also receive subcontracting by-products. There are three events, so three accounting entries are generated:
    DR FG Stock/ SC By-Product Stock
    CR Change in Stock (FG/ SC By-Product )
    (for finished goods received)
    DR Subcontracting Charges
    CR GR/IR Clg
    (for moneys payable to Subcontractor)
    DR Consumption (Components)
    CR Change in Stock (FG/ SC By-Product ) 0
    (material provided to Vendor is now charged to expense)
    (5) You do the IV for SC Invoice, and the process is complete.
    Process of Subcontract in MM
    Sub-contract business process:
    You want to buy material from the supplier (processed material/ assembled item) , but for some reason (quality of certain item / price ) you will give some component to vendor .
    Vendor shall process the item / use the item provided & supply the final item.
    SAP process:
    1.Create the finished goods material code.
    2.Maintain the BOM for the material.
    3.Create PO with item category as "L" .
    4.Issue material to vendor with movement type 541
    5.Receive the material against the PO with movement type 101.
    6.MIRO to account for vendor's invoice for the service charge& material used by him.
    Note:: At the Time of GR 543 Mvt is up dated for Raw Material.
    Can anybody tell me how a process has to be given to subcontracting?
    Suppose, I have 3 operations 1)weaving 2)dyeing 3)cutting & packing
    if no 2 process (i.e Dyeing) has to be given to subcontracting, what process should i follow ?
    The following process to be followed for subcontracting.
    1. Item code(material master) to be created at the stage of before dyeing.
    2. Item code(material master) to be created after Dyeing as subcontracted item.(F30)
    3. Bill of material to be created for the material(2) calling for material(1)
    4. Info record and source list to be created for material(2) with the corresponding vendor
    5. PO to be released for material (2)
    6.Along with PO the material(1) to be issued to vendor
    7.On receipt of material when GR is made the stock with vendor will get updated.
    How to Create a Subcontract Order?
    To create a subcontract order, proceed as follows:
    Enter the material you want to order and the item category for subcontracting (L) in the order item.
    Press ENTER to display the screen for component processing.
    Enter the components that the vendor requires to manufacture the product.
    Please note:
    u2013 You do not need to enter the date required for the components. This date is proposed by the system when you press ENTER.
    It is calculated as follows:
    Delivery date of the item - Planned delivery time
    u2013 If you do not want the quantity of the components to be changed if the order quantity of the end product is altered, set the indicator Fixed quantity (column F).
    u2013 You can determine whether the components are available on the date required by selecting Edit -> Availability check.
    If you entered a bill of material as the material in the subcontract order, the components are created automatically.
    If you want to determine the components in the bill of material at a later date (for example, if the bill of material is subsequently changed), choose Item -> Component -> New BOM explosion. The existing components are deleted and redetermined in the bill of material.
    Save the purchase order.

  • 122 movement for a BOM

    We have a subcontract PO set up where the material number is the top level of the BOM.  When we receive against this PO, the components pull into the GR as they should.  However, when we needed to return some of the material for rework and we used a 122 movement only the top level material number pulled into the material document.
    Example:  material 12345 has components A and B
    When a GR is processed, it includeds 12345, A and B
    When the 122 return is processed it only includes 12345 and A & B aren't pulled in.
    Should we use a different movement type for this?  We need something that we can print for the vendor and our 122 movements print on a custom form with the correct formatting.  If we simply used a 102 it wouldn't print in the format that we want. 
    Or...is there any way to do a 122 for a BOM material and have it pull in the components?

    Hi,
    When you creatze return delivery in MIGO (mvt 122 + material document reference) the components can be reversed as well.
    Please put a flag of the checkbox of the components and they will be reversed via mvt 544.
    (directly after the line item number in MIGO there's an icon > click on that and it will show the components that were consumed by mvt 543 at the time of GR > if there were consumed components at the time of GR you should be able to reverese them with F-30 material together)
    Do not reverse the components if they cannot be used again at subcontrator for production purpose.
    BR
    Csaba
    Edited by: Csaba Szommer on Aug 6, 2008 7:51 AM

  • Purchase Order Goods Receipt quantity tolerance setting not working.

    Team,
    We are using the IS-Oil solution, ECC 6.0 REL 605 SP LEVEL 009 .
    The issue that I have is as follows:
    Purchase Order Goods Receipt quantity tolerance setting not working, I had set up a 10% tolerance on QTY received in the GR process via the PIR and also the Purchase Value Key in the  material master and also changed the message to a warning in OMCQ for message number M0722.
    I  had performed a similar configuration and master data maintenance on a different NON IS-OIL client install and it worked fine.
    I believe it is the IS-OIL component in the Inventory update portion of the GR process that is causing the error.
    I have searched for OSS notes, however they mention that there is no solution.
    Setting the PO line item as Unlimited will not be best practice for the business and will not be used.
    Has anyone come across this issue? and how was it resolved, your help and guidance will be greatly appreciated.
    Thanks

    Hello,
    Please check the Tolerance levels in O588 
    Also you can use the BAdI OIB_QCI_ROUND_QTY: A new method, CHECK_TOLERANCE
    Best Regards,
    R.Brahmankar

  • Standard Cost Estimate for Subcontracting

    Dear Sir / Madam,
    We are in the process of migrating from our normal R/3 operations for Production Planning to Execution inclusive of Costing of materials by using iPPE functionality for repetitive scenario. We have our BOMs for painted body currently in R/3. The painted body falls under subcontracting scenario.
    In this scenario the body in white produced from our bodyshop is sent out to the subcontractor along with certain paint items and is received as painted body and consumption of the body in white and the paint items sent needs to be shown during the goods receipt of painted body.
    For this we have maintained the BOM for the painted body in iPPE. Also in the costing variant "ZD01" in order to arrive at Standard cost (CK11N) for the painted body we have maintained the following settings for Valuation variant for subcontracting :
    Priority     Strategy Sequence     
    1          Net Quotation Price
    2          Effective Price from Purchase Order
    While running CK11N for the material (painted body) we are receiving the following message
    Message no. 28501 : Error in dependency processing: condition 0000062388 is empty
    We wanted to verify whether the message raised is normal or would it have any adverse impact.
    Your assistance would be highly appreciated.
    Regards,
    Bhavika
    Edited by: Bhavika Goyal on Feb 7, 2009 12:20 PM

    Dear All,
    Control Key is important for inhouse producrtion and Sub Contract.  Check it once and when ever u have given the Product (semi fisished) to Sub Contractor, along with Paint. 
    Here one thing is important what is your process? how much portionis involced in Sub contracting.  why because
    Paint issue to the sub con is captured by the way for migo or miro
    Payment to sub contract is capture all the cost of the Sub Con., then is there any cost is missed for this process.  Let me know the remain things?
    thanqu
    raj

  • Help reqd on Changing the Valid from "date"  for both BOM & Routing

    Hi all...
    Pls advise me how to do the changing of Valid from "date"....
    Is there any process in CC01 or ECM???....
    pls reply me in detail step format (step by step analysis)....
    I wrongly created in CS01 and CA01 as 05.10.2007 as my valid from date instead of 01.10.2007.....
    How to change to my actual one......
    I dont know how to change it exactly.....as im beginner in SAP...pls take this into consideration...and post ur replies imm.
    Pls reply me in detail....will be rewarded at the end while closing this issue.
    thanks & regards
    sankar

    Dear Sankarbabu,
    IF there's no setting for Date Check in OS54 - Engineering Change Management
    Control Data,then you can create a change number with past dates,and also to
    use the same one for changing BOM.
    Tell me one thing you are saying you want to use ECM.Was the earlier one
    created without BOM was created without an ECN?
    See already if you have created your BOM with an ECN,then remove the date
    check setting which I have mentioned in OS54.
    Now goto T code CC02 ,enter the Change number and give the valid from date as
    01.10.2007.
    After that check in CS03 whether this date(01.10.2007)is getting reflected or not.
    I'm sure this will solve your problem.
    Regards
    Mangal

  • Calculation for subcontracting item of type N (non stock) as it for type L(Stock)

    Hi Gurus,
    I have a Requirement for calculating the cost for Subcontracting  Non stock items N as it is getting calculated in standard functionality for subcontracting items of Type L.
    This will be done in CK11n ( used to calculate the standard cost estimate of the product) for header as well as component materials.
    please suggest the user exit or Badi where i can change.
    Please refer the below logic-
    BOM for the material 2000500 as Header and 1LPL0835298AB as a component and this component has an assembly with 7008508 as a component and this component is an Sub contracted item and this has an assembly with component 1LBA182151-3.
    Price calculation for the material 7008508 (Item Category as N). Since this is sub contracted item the price will picked from field EINE-NETPR.
    In EINA, pass the material (MATNR=7008508) to fetch the list of info records (INFNR) created for that material.
    Then it has to input those info records to EINE table along with Purchasing organization (EINE-EKORG=PT02).
    From the output of EINE table, it should compare the price (EINE-NETPR) of the PIR and should take the least price from those PIR`s.
    If the currency is other than PLN, then it should be converted to PLN based on conversion charges.
    For Material (MATNR=1LBA182151-3), it should pass the material number to table MBEW along with valuation area (BWKEY = WERKS).
    From the output, it should check the Price control (VPRSV) ‘V’ or ‘S’
    If ‘V’ the price will be picked from the field “VERPR”
    If ‘S’ the price will be picked from the field “STPRS”
    Also from the output, it should check the Price unit (PEINH) ‘1’ or other than ‘1’. If it is other than ‘1’ it should divide the VERPR or STPRS by PEINH. Then this is the price of the Material “1LBA182151-3”.
    The material (MATNR=1LBA182151-3) should be passed to table “MARA” and will take the Base unit of measure from that table “MEINS”.
    Br,
    Surya

    Hi Surya,
    Please put breakpoints in any of the below BADI's and check if any of them will trigger for your
    requirement:
    VALUATION_CK                            BAdI for Valuation in Product Costing
    CK_KALAMATCON2_CI                       BAdI for CI Fields for Table KALAMATCON2
    COSTINGRUN_CK                           Edit Costing Run
    COST_APPORTION_CK                       Maint Apportionment Structure Joint Production: Dist Rules
    CO_PROD_COSTING_CK                      Cost Management for Joint Products (Costing, Target Costs)
    DATA_EXTENSION_CK                       For Data Enrichment in Product Costing
    DYNPRO_EXTENSION_CK                     BAdI for Interface Enhancement in Costing
    ORDER_COSTING_CK                        Enables Header Data Changes in Preliminary Order Costing
    QUANTITY_STRUCT_CK                      Enables Quantity/Structure Changes in Costing
    SUR_STOCK_TRANSF_CK                     Overhead on Materials with Stock Transfer Between Plants
    Thanks
    Sri

  • Error showing - No price could be determined for subcontracting in CK11N

    Hi,
    We are facing a problem in CK11N that while we are creating Material Cost Estimate with Quantity Structure, getting an error message..
    No price could be determined for subcontracting
    Message no. CK468
    Diagnosis
    The system could not calculate a price for the subcontracting because none of the valuation strategies in valuation variant 001 was successful.
    System Response
    If the system issues a warning message or an information message, the costing item is used in the cost estimate with a zero value.
    If the system issues an error message, it sets the status "KF" (costed with errors).
    If the system issues a termination message, the cost estimate cannot be processed.
    Procedure
    If you have authorization for Customizing, check the valuation strategy for subcontracting in valuation variant 001.
    I read many thread already, but no solution is suit my requirement..
    please help..

    We run the transaction OPN2 and select 001- Planned valuation - mat. Valuation Variant. Db Click on it and select Subcontracting tab.
    There Strategy Sequence is defined as under:
    Priority......Strategy Sequence
    1...............Effective price from Purchase Order
    2...............Net Purchase Order price
    3...............Effective price from Quotation
    and in Quotation in Purchasing option, there is selected - Auto quota arrangement.
    please guide.

  • Creation of delivery for subcontract Purchase Order

    Hi All,
    I am trying to create delivery for subcontract PO. ME2O transaction creates delivery but doesn't link PO to delivery . Is there any SAP table where we can see link of subcontract PO to delivery created throug ME2O?
    Business don't want to use MB1B transaction because it doesn't create delivery inturn doesn't create any paper work(Pick list or Packing list).
    Is there any way to create delivery based on subcontract PO?
    Thanks in advance.
    Sonali.

    You have to do Sub con PO setup in Img customization. You can be able to print all ur required documents during MB1B also. Presently I am doing exact the same setting for my present project. Complete Configuration required under
    Img->MM->IM and PI->Output Determination.ABAP help will be required to design the layout for pick list and packing list.Let me know if you need more information.
    Cheers!

Maybe you are looking for