BOM change dates

Hello!
I'm writing a function that is searching for parts of a model in the BOM. I'm saving the result to buffer table, so I need to find all dates of BOM changes (at all levels). For example:
<i>01.06.2006</i> -> BOM created
<i>07.06.2006</i> -> material A added at level 4
<i>14.06.2006</i> -> material added at level 3
<i>26.07.2006</i> -> material deleted at level 1
<i>30.01.2007</i> -> material A replaced by B at level 4
We are using change numbers to keep the history...
I don't need to know what happend, I want to find out the dates of changes.
Is it possible to find out these dates quickly, without exploding the whole BOM?
ThanX!
(SAP 4.6B)

I finished that function. The main logic is this recursively called form. You should call this form by importing the highest level material:
CONSTANTS:
           c_stlan TYPE mast-stlan VALUE '1',    " BOM for production
           c_stlal TYPE mast-stlal VALUE '01',   " Default alternative
           c_stlal TYPE mast-stlal VALUE '01'.   " Default alternative
TYPES: BEGIN OF t_datuv_search,
         datuv LIKE stpo-datuv,
       END OF t_datuv_search.
TYPES: BEGIN OF t_datma_search,
         matnr LIKE mast-matnr,
         datuv LIKE stpo-datuv,
       END OF t_datma_search.
FORM get_dates USING matnr werks stlal.
  DATA: now TYPE t_datma_search OCCURS 20 WITH HEADER LINE.
  SELECT b~idnrk b~datuv
    FROM mast AS a JOIN stpo AS b
      ON b~stlnr EQ a~stlnr
    INTO TABLE now
   WHERE a~matnr EQ matnr
     AND a~werks EQ werks
     AND a~stlan EQ c_stlan
     AND a~stlal EQ stlal
     AND b~stlty EQ c_stlty.
  LOOP AT now.
    MOVE: now-datuv TO datuv_search-datuv.
    COLLECT datuv_search.
    PERFORM get_dates USING now-matnr werks c_stlal.
  ENDLOOP.
ENDFORM.
This form will fill the <b>datuv_search</b> table. This table will contain all change dates...

Similar Messages

  • All dates of BOM change

    Hello!
    I'm writing a function that is searching for parts of a model in the BOM. I'm saving the result to a buffer table, so I need to find all dates of BOM change (at all levels). For example:
    01.06.2006 -> BOM created
    07.06.2006 -> material A added at level 4
    14.06.2006 -> material added at level 3
    26.07.2006 -> material deleted at level 1
    30.01.2007 -> material A replaced by B at level 4
    We are using change numbers to keep the history...
    I don't need to know what happend, I want to find out the dates of changes.
    Is it possible to find out these dates without exploding the whole BOM?

    Sorry! I sent this question twice by mistake! Please check my second thread: "BOM change dates". ThanX!
    Message was edited by:
            Donnie Darko

  • BOM changes report

    dear all,
    I want bom changes data. if we delete or add  any lower level component , if we change qty. it should display old qty as well as new qty and deleted item as well as added item to bom. I have seen CS03.Is there another bapi or function module to trigger bom changes data.
    with regards,
    Prasadbabu

    hi,
    For your requirement SAP system should have ECM ( Engineering Change Management )implemented. whenever you change the BOM , new ECM number get generated.So that you can track the changes
    Thanks,
    SAtish

  • BOM CHANGE MANAGEMENT

    HI,
       we r changing bom with change number.
    we changed one bom with one change number(validty next month date).now that change number has not been used for any other bom changes.i want to restrict that change number for further use..
    can i activate deletion indicator in change master????
    whether it affects my changed bom.

    Yes, make it  inactive status so that it cannot be user in other product BOm change.
    Otherway use authorization group. Give the authorization to useres who should use it and donot give the authorization to musers whoc not suppose to use that change number.

  • BOM change track report.

    Hello All,
    I have a requirement where I need to develop a report that represent following fields of BOM change history.
    1. Material (Along with description if possible)
    2. Changed By
    3. Change On
    4. Change Details (Entry, Delete, and replacement data for the item)
    5. Header level change (Change in Base quantity, from to lot size, Bom activation/deactivation)
    6. Plant (Most Important)
    I have checked to get it through CS80  Change Documents for Material BOMm but it'svery lengthy task and can't do it one by one.
    I have gone through these tables
    STKO --- BOM - header 
    STPO --- BOM - item 
    STAS --- BOMs - Item Selection 
    STPN --- BOMs - follow-up control 
    STPU --- BOM - sub-item 
    STZU --- Permanent BOM data
    But not getting any clue.
    NOTE:- I have not implemented the Change document mgmt system (CC01,CC02) and if I do such so then what about the existing changes already done in the system. So, I know it can be achieved by implementing Change mgmt but practically it's not possible for me.
    kindly help!!!!!!!!!
    -- Jimmy

    Dear Jimmy,
    I dont think it's possible to prepare a report using the tables or CS80 for the same,without having Engineering Change
    Management.
    Check and revert back.
    Regards
    Mangalraj.S

  • Tracking Production BOM changes in Documents

    Hi,
    I am a BW consultant and am working on a report that concerns tracking changes to the BOM code in documents. The situation is
    The PP BOM is created and basis that procurement and GR is done. However changes to the PP BOM are frequent and cause problems while MIGO. For example on a certain day a material, lets say A, requires 2 qty of material A2 and on another it requires 1 qty of A2. This causes discrepencies in the inventory. So a report that can give a comparison of the actual qty ( as given by the GR doc) and the ideal qty ( as given by the BOM) can help check this.
    To the best of my understanding tracking BOM changes on doc level solve the purpose so that one can spot the state of the BOM on the doc level. Is this possible in std R3 system ? If yes, then what are the entities involved ?
    Am aware of a functionality called ECM, Engineering Change Management, but am not sure if that will help here.
    Thanks in advance.
    Saurabh Diwakar

    Dear,
    The best way to meet your requirements is to activate Engg. change management.
    Then you will get track of all changes .
    Check in cs03.enter your material, plant and usage. execute it
    then click Environment -> change doc -> Full
    Also try with transaction CS80,CS81.
    ECM and do the necessary seetings in T code OS27 - Set Modifications parameters for BOM's ,OS54 - Engineering Change Management Control Data.
    Or,
    The best way to do is using Change douments .. Since SAP provided the Change doc mainly for this..
    Tables: CDHDR and CDPOS.
    Tcode: SCDO. Vendor Master : KRED is the Change doc object.
    Regards,
    R.Brahmankar

  • Table for BOM changes

    Is there a report that I can run to find all BOM changes for a specific date? Is there a table that I can query that would hold this information?
    I would also like to perform the same search for recipies and material master changes.

    Hi
    YOu can use CS80.
    I think you must be aware about the BOM history maintenance which you select at the time of customization.
    After you select the indicator please go to the table MKAL and find out the BOM.
    It will show you all the changes made in a particular BOM
    also you can find the change records in tables CDHDR (Header records), CDPOS (Item records), CDATA (Details)
    Material master changes - MM04
    Recipe change report - check C260 and C261
    regards
    Srinivas

  • Function module required for BOM Changes

    Dear SAP Guru
    I need the function module which gives me the details of changes done in the BOM.
    Scenario: Need to develop the report which gives only the details of BOM changed on the given date. The BOM level might vary.
    Regards
    Rahul

    Dear
    I think you should have ECM in place to have tracability for any changes carried out in BOM .
    Refer earlier posting : Re: ECM ECR
    If the ECM is in place , then you can see what changes has been done in CC02/03 Environmnet - > Reporting -> Bill of Material.
    Otherwise please try the following Functinal Module : You can also try CEWB and CS80
    1. CSAP_BOM_ITEM_MAINTAIN
    2.CS_BOM_EXPL_MAT_V2
    3.CHANGEDOCUMENT_READ  and CDHDR
    Refer : http://help.sap.com/saphelp_40b/helpdata/en/92/58b521417011d189ec0000e81ddfac/content.htm
    Regards
    JH

  • BOM changes automated Report

    Hi friends
    Is there any way that i could get this done  (please see below)
    For a plant, if any of the BOM has undergone changes. It needs to be captured and mail sent to a user .The list to be sent on daily basis thro mail
    Please help with your inputs!
    Regards,
    KK

    Hi,
    As per my knowledge, there is no standard report for BOM changes. You need to go for Z-report if you need separate BOM change report then.
    However, You can see BOM Changes in  -> CS03> Environment ( Menu)--> Change Documents -
    It will give you details of all changes made in BOM  with date , time & user details everything.
    Further if you wish mailing to user these changes you need to develop Workflow Messages. For that you need to contact your Technical Consultant who only can enable you to generate workflow messages for BOM changes.
    HOpe this helps.
    Regards,
    Tejas
    Edited by: Tejas  Pujara on Aug 18, 2008 11:03 AM

  • BOM Effective Date

    Hi,
    I am running into a strange problem in the BOM form. I put an effective end date of today for a component but when I post production, it still relieves the item from inventory.
    Also, out of four component items for this particular FG, all but one are relieved and this is the one without an effective end date.
    Please HELP!!!!
    A/A

    Hello,
    Since BOMs are maintained with history, meaning system tracks the shape of BOM changes through time,
    I think you should check what type of BOM is associated to your production details.
    If you are referring to discrete job, then it might be the fact that the BOM date is older than the effective end date.
    In that case, you'll need to update the BOM date before performing production.\
    Hope this helps,
    If it does please mark it,
    Aaron

  • How to get changed data in ALV in Web Dynpro for ABAP

    METHOD on_data_check .
    DATA:
        node_spfli                          TYPE REF TO if_wd_context_node,
        node_sflight                        TYPE REF TO if_wd_context_node,
        itab_sflight2                        TYPE if_display_view=>elements_sflight.
      node_spfli = wd_context->get_child_node( name = if_display_view=>wdctx_spfli ).
      node_sflight = node_spfli->get_child_node( name = if_display_view=>wdctx_sflight ).
      CALL METHOD node_sflight->get_static_attributes_table
        IMPORTING
          table = itab_sflight2.
    this code is ..get all data(changed and not changed)
    but i want get changed data only, not all data.
    how to get changed data?
    Edited by: Ki-Joon Seo on Dec 27, 2007 6:04 AM

    Hi,
    To get only the changed data in the ALV grid of a WD, you need to capture the "ON_DATA_CHECK" of the ALV grid.
    To this please do the following in the ALV initialization of the ALV table settings :
        lr_table_settings->set_data_check(
                IF_SALV_WD_C_TABLE_SETTINGS=>DATA_CHECK_ON_CELL_EVENT ).
    You may also do this:
        lr_table_settings->set_data_check(            IF_SALV_WD_C_TABLE_SETTINGS=>DATA_CHECK_ON_CHECK_EVENT)
    The above two ways would depend on when do you need to check for the changed data. If you want to check the data as soon as it is entered, then use the first method. Else, use the second method.
    You need to register an EVENT HANDLER for this event.(You may do this in your VIEW or Component Controller).
    In this Event handler, you would find an importing parameter R_PARAM which is a ref type of      IF_SALV_WD_TABLE_DATA_CHECK.
    The attribute T_MODIFIED_CELLS of this interface IF_SALV_WD_TABLE_DATA_CHECK will contain the modified cells of the ALV with the old & new values.

  • Can not change data in Input Ready Query

    All,
    I have created an input ready query on an aggreagation level which has one transactional cube underlying it however, after run the query I am unable to change data in the cells even though I get a warning message saying query is ready for input
    Note:
    1. The underlying realtime cube is in "Planning Mode:Loading not allowed" state in rsa1
    2. I tried including all characteristics so that the record can be uniquely identified at that aggregation level).
    3. I am not using any characteristic restrictions
    4. I have not set any data slices
    5. I have set the property for Planning "Start query in Change Mode"
    6. I have set the 'Key Figure' Planning Properties to "Can be changed Manually or via Planning Functions" for the key figures
    7. I do not have currency/unit in row/column.
    8. There are any locks occurring
    Any pointers welcome.
    Thanks,
    Milind

    Hi Milind,
    Was wondering how was your problem solved. I get the same message when I run the query in web from query designer and in bex analyzer the cells are not updated with the changes that I make.
    I am hitting my head against the wall to figure what could be the problem as my plan query is simply based on aggregation level created directlty upon the real time info cube.
    Have cross checked all the points that you mentioned in this post but I cells do not change.
    There should be some way around to solve this problem.
    Thanks

  • Can we change data in string object.

    Can we change data in string object.

    Saw this hack to access the char[]'s in a String in another thread. Beware that the effects of doing this is possible errors, like incorrect hashCode etc.
    import java.lang.reflect.*;
    public class SharedString {
            public static Constructor stringWrap = null;
            public static String wrap(char[] value, int offset, int length) {
                    try {
                            if (stringWrap == null) {
                                    stringWrap = String.class.getDeclaredConstructor(new Class[] { Integer.TYPE, Integer.TYPE, char[].class });
                                    stringWrap.setAccessible(true);
                            return (String)stringWrap.newInstance(new Object[] { new Integer(offset), new Integer(length), value });
                    catch (java.lang.NoSuchMethodException e) {
                            System.err.println ("NoMethod exception caught: " + e);
                    catch (java.lang.IllegalAccessException e) {
                            System.err.println ("Access exception caught: " + e);
                    catch (java.lang.InstantiationException e) {
                            System.err.println ("Instantiation exception caught: " + e);
                    catch (java.lang.reflect.InvocationTargetException e) {
                            System.err.println ("Invocation exception caught: " + e);
                    return null;
            public static void main(String[] args) {
                    char[] chars = new char[] { 'l', 'e', 'v', 'i', '_', 'h' };
                    String test = SharedString.wrap(chars, 0, chars.length);
                    System.out.println("String test = " + test);
                    chars[0] = 'k';
                    chars[1] = 'a';
                    chars[2] = 'l';
                    chars[3] = 'l';
                    chars[4] = 'a';
                    chars[5] = 'n';
                    System.out.println("String test = " + test);
    } Gil

  • Can't view changed data in journal data

    Hi,
    I have implemented JKM Oracle 10g Consistent Logminer on Oracle 10g with the following option.
    - Asynchronous_mode : yes
    - Auto_configuration : yes
    1. Change Data Capture -> Add to CDC, 2.Subscriber->subscribe (sunopsis),
    3. Start Journal
    The journal has been started correctly wothout errors. The journalized table has always the symbol "green clock". All is gook working.
    And then i inserted 1 record in source table, but i can't view changed data in journal data. I can't understand why journal data was generated.
    There are no errors.
    Help me !!!

    Did your designer was on the good context ?
    Look the list box at the top right of the Designer interface.
    You must have the same as the one where you define your journalization.

  • I can not map field after changing data source location

    Hi
    I have a small problem that I got a report file and database from my customer, after that I setup database, open the file and change data source to my setting. but some filed can not map. The field mapping widonw does not display all field in the table. Of course I have checked the missing fields are existing in the table.
    OS:Windows7
    DB:Oracle11
    CR:XI Release 2
    Does anyone have an idea?

    hi,
    In Map Fields window, there is an option "Match Type".
    Please Unchek that option, so that you will be able to see all the fields from that table.
    Also, while mapping please verify the datatypes of source and target fields.
    Regards,
    Vamsee

Maybe you are looking for