Can routine replace "master data attribute of" update rule for performance?

Hi all,
We are working on CRM-BW data modeling, We have to look up agent master data for agent level and position for each transaction data. So now we are using "Master data attribute of" update rule. Can we use routine instead of "Master data Attribute of" ? Will it improve the loading performance? Since we have to load 1 lack transaction records , where as we have 20,000 agent details in agent master data.My understanding is, for each record in data package the system has to go to master data table and bring the agent details & store in cubes. Say one agent created 10 transactions, then this option "master data attribute of" will read the agent master data 10 times even though we are going to pull same details for all 10 transactions from master data. if we use routine, we can pull the agent details& storing in internal table removing all duplicates and in update routine we can read the internal table.
Will this way improve performance?
let me know if you need further info?
Thanks in advance.
Arun Thangaraj

Hi,
your thinking is absolutely right!
I don't recommend to use the standard attribute derivation since it will perform a SELECT to the database for EACH record.
Better implement a sorted table in your start routine; fill it with SELECT <fields> FROM <master_data_table> FOR ALL ENTRIES OF datapak WHERE OBJVERS = 'A' etc...
In your routine perform a READ itab ... BINARY SEARCH.... I believe that you won't be able to go faster...
hope this helps...
Olivier.

Similar Messages

  • Master data Attribute of ( Update rule)

    Hi SDN,
    I Just want to know the procedure to create update method of Master data Attribute of . coild any one tell me step by step
    Regards
    sujan

    3.     Creation of data targets
    •     In left panel select info provider
    •     Select created info area and right click to select Insert Characteristics as info provider
    •     Select required info object ( Ex : Employee ID)
    •     Under that info object select attributes
    •     Right click on attributes and select create transformation.
    •     In source of transformation , select object type( data  source) and specify its name and source system Note: Source system will be a temporary folder or package into which data is getting stored
    •     Activate created transformation
    •     Create Data transfer process (DTP) by right clicking the master data attributes
    •     In extraction tab specify extraction mode ( full)
    •     In update tab specify error handling ( request green)
    •     Activate DTP and in execute tab click execute button to load data in data targets.
    cheers
    John

  • Master Data lookup in Update Rule problem

    Hi all,
    I am currently having a problem loading data to an InfoCube using flat files.
    The architecture is as follows:
    1) The source of the data is a flat file
    2) The data is loaded thru an Update Rule and is of type Full-Update
    3) The Update Rules determines the Profit Center using the Master Data of the WBS-Element
    4) The data is written in an InfoCube
    This solution however does not always work as planned. In the following situation a problem occurs:
    1) The flat file contains WBS-element RD.00753.02.01, which has a Profit Center attribute value 8060
    2) When I load the flat file, the PC value 8060 is written into the row in the InfoCube, which is correct
    3) Then I change the master data of the WBS-element by setting the Profit Center attribute value to 8068
    4) I run the Attribute Change Run
    5) Then i load a flat file again, which also contains WBS-element RD.00753.02.01
    6) The master data attribute value should now write the value 8068 into the InfoCube. HOWEVER, this is when the evil occurs. BW does not write a PC value of 8068, but it write the value 8060. This is wrong.
    Why does BW not take the newest version of the Master Data to performe the attribute value look-up? Or why doesn't BW write the correct Profit Center into the cube?
    Thanks,
    Onno

    Hi Ricardo,
    The debug via PSA simulation of the update indicates that the CORRECT Profit Center value is to be written into the InfoCube.
    However, if I check the contents of the cube (after the load has finished) using the request-id the WRONG Profit Center value is shown. This indicates that the correct Master Data is used, however the update of the Cube is wrong. Why does this happen. the load is of type full-update, so should add a new row in the cube using the value in the data from the UR.
    Onno

  • Updating Master data attributes through BPS

    Hi All,
    Can we modify master data attributes via BPS? Like we have some Attribute characteristics for 'vendor' say 'class(good/bad/ok)' and we want that to be updated via BPS (not from R/3) then how it can be achived?
    Please help by explaining this.

    Hi,
    Create two variables one for vendor and other for status (variable of type attribute), give both the variables in the folder. User will select the vendor and the attribute status value in selections. Create an exit planning function to update the attribute.
    Import parameters
    i_area type upc_y_area
    i_variable type upc_y_variable
    i_chanm type upc_y_chanm
    Export parameters
    eto_charsel type upc_yto_charsel
    tables
    i_t_attributes structure rsd_s_iobjnm optional
    i_t_data structure rsndi_s_chavl optional
    In the code, Read the above two variable values selected by user. Then delete the existing entry of MD by calling the function RSNDI_MD_DELETE.
    Now update the master data with the new attribute value selected by the user in the variable by calling the function
    RSNDI_MD_ATTRIBUTES_UPDATE. After this activate the master data by calling RSDMD_MD_ACTIVATE.
    Hope this solves the issue.
    Bindu

  • Transofmration :  Master data attribute

    Hello,
    I am on NW 2004S BI and ECC 6.0.
    In the transformation rule types, i can not find "Master data attribute of" .
    If this is the case in this version,in the infocube, how to load the data for a particular IO, which is an attribute of another IO ? 
    In the older versions, in the update rules, i can select either source, constant, master data attribute of,routine etc ..
    Any advice? 
    Regards,
    Ravi

    Hi Ravi,
    We have "Master Data Attribute" as a Rule type of Transformation in NW2004S BI also.
    Where in the previous version BW3.x you have option to create the Master Data Read Rule only between
    DataTarget to DataTarget
    or
    Infosource to DataTarget.
    But, The New Enhancement of NW2004S BI is, Even you can read the Master Data Attribute in Transformation have builded between DataTarget (InfoCube or ODS) and DataSource also.
    How to assign the InfoObject for Master Data Read?
    Select Target Field.
    Select the source InfoObject from where you want to read Master Data.
    When you have to choose the "Master Data Read" as the Rule Type. Then You will get the entry block next to Rule Type.
    Click F4, then it will give the Attribute automatically.
    Hope this helps you.
    Regards,
    Vamsi

  • Navigation attributes in Updates Rules.

    Hi,
    I´d like to know if it is possible to use a navigation attribute of one InfoCube in the update rule of other InfoCube. For example, i am trying to consolidate some date using the 0Customer attibute 0City, but when i create a new update rule to my InfoCube the only object avaible is 0Customer, its navigation attribute (0City) is unavaible in the Update rule.
    Thanks.

    Hi Luiz,
    check the "Master Data Attribute of" update method in the help link below and see if it does what you need:
    http://help.sap.com/saphelp_nw04/helpdata/en/80/1a64e0e07211d2acb80000e829fbfe/frameset.htm

  • Map My Update Rule from a Master Data Attribute

    Hello experts,
    I haven't tried this scenario yet, hope you can help me, the Issue is this
    I have 2 InfoObjects ZPSCHRCHY and 0PROFIT_CTR from InfoCube WBS cost and allocations I want both the InfoObjects to be mapped to 0PROFIT_CTR attribute of 0WBS_ELEMT master data object, I have tried the Master Data Attribute but only 0PROFIT_CTR is an attribute of the Master Data.how can I mapped ZPSCHRCHY and 0PROFIT_CTR to 0PROFIT_CTR?, Is creating a start routine for it must be used? Thank you very much
    Regards and Thanks
    Chris

    PROGRAM UPDATE_ROUTINE.
    $$ begin of global - insert your declaration only below this line  -
    TYPES:
    BEGIN OF r_MD_WBS_ELEMENT,
       WBS_ELEMT  like /BI0/PWBS_ELEMT-WBS_ELEMT,
       OBJVERS    like /BI0/PWBS_ELEMT-OBJVERS,
       PROFIT_CTR like /BI0/PWBS_ELEMT-PROFIT_CTR,
    END of r_MD_WBS_ELEMENT.
    DATA: t_MD_WBS_ELEMENT  TYPE STANDARD TABLE OF r_MD_WBS_ELEMENT,
           wa_MD_WBS_ELEMENT TYPE r_MD_WBS_ELEMENT.
    $$ end of global - insert your declaration only before this line   -
    The follow definition is new in the BW3.x
    TYPES:
      BEGIN OF DATA_PACKAGE_STRUCTURE.
         INCLUDE STRUCTURE /BIC/CS8ZPSG030.
    TYPES:
         RECNO   LIKE sy-tabix,
      END OF DATA_PACKAGE_STRUCTURE.
    DATA:
      DATA_PACKAGE TYPE STANDARD TABLE OF DATA_PACKAGE_STRUCTURE
           WITH HEADER LINE
           WITH NON-UNIQUE DEFAULT KEY INITIAL SIZE 0.
    FORM startup
      TABLES   MONITOR STRUCTURE RSMONITOR "user defined monitoring
               MONITOR_RECNO STRUCTURE RSMONITORS " monitoring with record n
               DATA_PACKAGE STRUCTURE DATA_PACKAGE
      USING    RECORD_ALL LIKE SY-TABIX
               SOURCE_SYSTEM LIKE RSUPDSIMULH-LOGSYS
      CHANGING ABORT LIKE SY-SUBRC. "set ABORT <> 0 to cancel update
    $$ begin of routine - insert your code only below this line        -
    fill the internal tables "MONITOR" and/or "MONITOR_RECNO",
    to make monitor entries
      REFRESH: t_MD_WBS_ELEMENT.
          SELECT WBS_ELEMT
                 OBJVERS
                 PROFIT_CTR
          INTO TABLE t_MD_WBS_ELEMENT
          FROM /BI0/PWBS_ELEMT
       FOR ALL ENTRIES IN DATA_PACKAGE
         WHERE WBS_ELEMT   = DATA_PACKAGE-WBS_ELEMT.
        IF sy-subrc EQ 0.
        Do nothing
        ENDIF.
    if abort is not equal zero, the update process will be canceled
      ABORT = 0.
    $$ end of routine - insert your code only before this line         -
    ENDFORM.

  • Using "Master Data Attribute of" in the Update Rule

    Hi,
    In my update rule of, i want to replace the master data attribute of my characteristic instead of using its source characteristic. For example. <i>InfoObject ZSTORECODE</i> has an attribute <i>ZSTORENAME</i>. My objective is to use the Store Name instead of a Store Code.
    I initially thought of using <i>"Master Data Attribute of"</i> in the update rules. However, I always end of with having an error of <i>"No Values."
    </i>
    Hope you guys can help me with this!
    Thanks,
    Raomon

    DATA: V_NSTC_SN2,
    V_KFC_COSTC LIKE RSGENERAL-CHAVL.
    V_KFC_COSTC = DATA_PACKAGE-KFC_COSTC.
    CALL FUNCTION 'RSAU_READ_MASTER_DATA'
        EXPORTING
          I_IOBJNM                      = 'KFC_COSTC'
          I_CHAVL                       = V_KFC_COSTC
    *   I_T_CHAVL                     =
    *   I_DATE                        =
    *   I_FLG_WHOLE_TABLE             =
          I_ATTRNM                      = 'NSTC_SN2'
      IMPORTING
    *   E_STRUCTURE                   =
    *   E_TABLE                       =
          E_ATTRVAL                     = V_NSTC_SN2
        EXCEPTIONS
          READ_ERROR                    = 1
          NO_SUCH_ATTRIBUTE             = 2
          WRONG_IMPORT_PARAMETERS       = 3
          CHAVL_NOT_FOUND               = 4
          OTHERS                        = 5
    RESULT = V_NSTC_SN2.
    Another Example Code:
    index on infoObject

  • How to use Master Data Attribute of in Update Rule's Formula

    Hi experts.
    In update rule, there is an option to use <b>Master Data Attribute of</b>. However, due to user requirement, I need to use that in <b>Formula</b> instead.
    <b>Field to update:</b>
    Profit Center
    <b>Logic:</b>
    If Cost Center is empty
    Then Profit Center
    Else
    Master Data Attribute of Cost Center
    I use the following formula at the moment but it is not 100% correct.
    <b>IF( Cost Center = '', Profit Center, Cost Center )</b>
    Appreciate if anyone could help me out.
    Thanks!

    Hi,
    The easier thing to do will be to use a Update Routine.
    Logic will be as follows :-
    If Cost center iss initial.
    Result = Profit Center
    else.
    result = Cost center.
    endif.
    Regards
    SM

  • Master data attributes declaration in update rules

    Hi Everyone,
    can any one tell me, How do we use attributes of master data in update rules..need syntax for using attributes of customer.... like comm_structure-/bic/......etc
    post code is attribute of customer, How do I use it in update rule
    thanks
    Siri

    Hi!
    if you have customer as attribute in your Infosource and Postcode as acharecteristic in your data target then you just need to select ther 3rd type of update rule "MAster data attribute of" and specifxy 0Cusotomer beside
    with regards
    ashwin

  • Master data attributes with direct update...its very urgent

    Hi all,
    Could anyone tell me how to laod the master data attributes with direct update in the infopackge..
    provide steps to create master data attributes and how to load..
    Thanks,
    Manjula

    Hi Manjula,
    Flexible Uploading
    Transaction code RSA1—LEAD YOU TO MODELLING
    1. Creation of Info Objects
    • In left panel select info object
    • Create info area
    • Create info object catalog ( characteristics & Key figures ) by right clicking the created info area
    • Create new characteristics and key figures under respective catalogs according to the project requirement
    • Create required info objects and Activate.
    2. Creation of Data Source
    • In the left panel select data sources
    • Create application component(AC)
    • Right click AC and create datasource
    • Specify data source name, source system, and data type ( Transaction data )
    • In general tab give short, medium, and long description.
    • In extraction tab specify file path, header rows to be ignored, data format(csv) and data separator( , )
    • In proposal tab load example data and verify it.
    • In field tab you can you can give the technical name of info objects in the template and you not have to map during the transformation the server will automatically map accordingly. If you are not mapping in this field tab you have to manually map during the transformation in Info providers.
    • Activate data source and read preview data under preview tab.
    • Create info package by right clicking data source and in schedule tab click star to load data to PSA.( make sure to close the flat file during loading )
    3. Creation of data targets
    • In left panel select info provider
    • Select created info area and right click to create ODS( Data store object ) or Cube.
    • Specify name fro the ODS or cube and click create
    • From the template window select the required characteristics and key figures and drag and drop it into the DATA FIELD and KEY FIELDS
    • Click Activate.
    • Right click on ODS or Cube and select create transformation.
    • In source of transformation , select object type( data source) and specify its name and source system Note: Source system will be a temporary folder or package into which data is getting stored
    • Activate created transformation
    • Create Data transfer process (DTP) by right clicking the master data attributes
    • In extraction tab specify extraction mode ( full)
    • In update tab specify error handling ( request green)
    • Activate DTP and in execute tab click execute button to load data in data targets.
    4. Monitor
    Right Click data targets and select manage and in contents tab select contents to view the loaded data. There are two tables in ODS new table and active table to load data from new table to active table you have to activate after selecting the loaded data . Alternatively monitor icon can be used
    honor with points if this helps,
    Sudhakar

  • Cant fully load updated data to Master data attribute

    Hi BW expert,
    I meet an issue here, I am not able to load updated data to master data attribute. My loading selection is based on employee number range.
    e.g employee number 00001 to 10000
    However the data is successfully loaded to master data but lot of the attribute data are not updated. e.g 056, 057, 098, 0100.
    I checked in PSA, there is no data updated for the attribute.
    I checked in RSA3 in R/3, there are attribute data extracted.
    Please advice, why attribute data is not updated when I load it in a range number. The attribute only work when I load one employee number.
    Thanks.
    regards,
    Wesley Koo

    check this:
    Re: Error while running InfoPackage
    Master data/text of characteristic 0MATERIAL already deleted
    Master data/text of characteristic ZXVY already deleted
    Hope it helps..

  • Update from master data attribute

    I have a key figure in my update rule for Info source(0HR_PA_1) for info cube(0PA_C01). I would like to update this KF to write a codein update rule  like no.of working hours/37.
    No.of working hours(ZWOSTD) is an attribute of 0employee master data. 0employee object is there in transfer structure for info source 0HR_PA_1.
    Is it possible to get attribute value(No.of working hours) which is  char type fom 0employee masterdata.
    Please help me with this.
    Thanks a lot

    Hi,
    just do a select on view /bi0/memployee.
    select * into wa from /bi0/memployee
    where employee = comm_structure-employee
    and    objvers = 'A'
    and    dateto >= comm_structure-<date field>
    and    datefrom <= comm_structure-<date_field>.
    Make sure the content of zwostd is numeric and assign it to your keyfigure.
    result = wa-/bic/zwostd.
    That should work.
    regards
    Siggi
    PS: may be you need to convert the datatypes.
    Message was edited by:
            Siegfried Szameitat

  • Update Master Data Attributes yellow in DTP

    Hi All,
    After  loading the master data DTP, the request becomes greeen but the "Update Master Data Attributes" step is still yellow. Let me know how to overocome this error
    Thanks,
    Sathya

    Hi,
    This is a master data full load and it updates more than 1 lakh records. Technically the Overall and technical status of my  DTP request becomes Green but when i go to the details tab and drill down the data package the "Update Master Data Attributes" still remains yellow so i dont think my load will update the attributes for my info object successfully.
    Is there a  solution to overcome or did anyone face this similar issue?
    Thanks
    Sathya

  • Is it possible to update master data attributes from an ODS?

    HELLO ALL,
    we have records coming into our ods like the following:
    costcenter1, subcostcentera, subcostcenterb, manager responsible, costs (kf). 
    This is a custom flat file load from a legacy system.
    We would like to just create an update rule from the ODS to the cost center mater data characteristic attributes. 
    Is this possible?
    thank  you

    Yes its possible to update the master data attributes from an ODS.
    Define your master data characteristics as a infoprovider.
    Create a update rule on Characteristic with ODS as a source and do general mapping.
    For step by step, pls refer..
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sapportals.km.docs/library/business-intelligence/g-i/how%20to%20implement%20flexible%20master%20data%20staging

Maybe you are looking for