Skip to Content

Need to consider stock in transit during MRP run ?

I have a one requirement my client will procure raw material from Japan to plant A after that they will do STO to Plant B. Here in Plant B we will consume that raw material to manufacture finished goods.

Now our requirement is we will run MRP for Plant B for a finished good(FG) then system should consider Plant A opening stock as well as Plant B opening stock and stock in transit between Plant A and Plant B.

Example: FG requirement-------3000 let us consider Bom Ratio as 1:1 so here We Need Material X (Raw Material) also 3000 qty but system should show requirement quantity as below.

Plant A Stock-- 1000

Plant B stock ------200

Stock in Transit ----800

Requirement for A will be 1000 qty()

As of now we are able to consider Plant A opening stock as well as Plant B opening stock using BADI (MD_CHANGE_MRP_DATA) After MRP run system is showing available QTY for X material 1200,

Now our problem is system is not considering stock in transit (800).

After MRP run system should show available QTY as 2000(Plant A opening stock+Plant B opening stock+stock in transit between Plant A and B)

Kindly suggest for consideration of stock in transit during MRP run.

Add a comment
10|10000 characters needed characters exceeded

Related questions

2 Answers

  • Posted on Jul 30, 2020 at 03:19 PM

    Hello,

    You can same BAdi MD_CHANGE_MRP_DATA Method CHANGE_MDPSX_EBAN for Stock In Transit to be considered in MRP with your own logic.

    Please refer SAP note 190298 Stock transfer: Order releases are relevant for MRP

    Best Regards,

    R.Brahmankar

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Jul 30, 2020 at 03:26 PM

    Hi,

    Try passing the MRP data (material X) to below mentioned Submit Program and get the in transit qty and sum up with requirement.

    SUBMIT rm07mtrb AND RETURN.
    DATA: gr_table TYPE REF TO   data,
            gt_line  TYPE REF TO   data.
    
    
      FIELD-SYMBOLS: <gt_table> TYPE STANDARD TABLE,
                     <gt_tline> TYPE any.
    
      cl_salv_bs_runtime_info=>set(
          EXPORTING display  = abap_false
                    metadata = abap_false
                    data     = abap_true ).
    *  FREE MEMORY ID sy-uname.
    
    
    
    SUBMIT rm07mtrb AND RETURN.
    
    
      TRY.
          cl_salv_bs_runtime_info=>get_data_ref(
            IMPORTING r_data      = gr_table ).
          ASSIGN gr_table->* TO <gt_table>.
    
    
        CATCH cx_salv_bs_sc_runtime_info.
          MESSAGE: text-m01 TYPE 'S' DISPLAY LIKE 'E'.
          LEAVE LIST-PROCESSING.
      ENDTRY.
    
      cl_salv_bs_runtime_info=>clear_all( ).
    
      IF <gt_table>[] IS ASSIGNED.
    
      ENDIF.
    
      rf_ucomm = 'DETAIL'.
    
      CREATE DATA gt_line LIKE LINE OF <gt_table>.
      ASSIGN gt_line->* TO <gt_tline>.
    
    
    
      LOOP AT <gt_table> INTO <gt_tline>.
    
        MOVE-CORRESPONDING <gt_tline> TO wa_final.
    
         APPEND wa_final TO it_final.
    
      ENDLOOP.
    
    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.