Which is better transfer routine or update routine???

HI ALL,
I have read some documents, but I didnt get the real concept.
Can any one explain in detail as to how do we decide where to write the code i.e a start routine or transfer routine or update routine...and which one is better  for a given scenario..
with example?

My scenario is like this:
master data InfoObject for e.g. Z_MATERIAL1 with 10 fields as attributes. It has two Source Systems feeding it; SAP and a flat file from a system called Product Catalog (PCAT).
The PCAT data is generally more reliable, hence, if a material XYZ comes from PCAT then PCAT is the owner of the material. SAP should not be able to update five critical fields of that material if PCAT owns the material.
For e.g. the below values comes from PCAT and Master data is updated.
PCAT
Material Group Type Price Curr Unit Prod Desc. Lang Class
XYZ      ABC   BRU  10.00 USD  PC  Inh   To    EN   001
When the data comes from SAP R/3, it should not update anything other than the last 4 fields.
SAP
Material Group Type Price Curr Unit Prod Desc. Lang Class
XYZ      ABC    BRU 20.00 USD  BOX  In   The    DE   003
Finally the data in the Master Data Object should be as below.
Material Group Type Price Curr Unit Prod Desc. Lang Class
XYZ      ABC   BRU 10.00  USD  PC  In    The    DE   003
where do i write the code...i have written this in start routine of transfer rules...i want to know the performance issues...

Similar Messages

  • Converting Tx Routines and Update Routines in to Tranformation in 2004's

    Hi,
    I have to get all the data from the existing BW 3.5 system in to the BI 7.0 system.
    While the conversion process if I choose to create the transformation instead and installing the update rules and tranfer rules and migrating those to the tranformations.
    Here I have three similiar questions:
    i. So, if I copy the transfer routines in to the Transformation, then do I have to change any ABAP Code?  Is there any syntax changes that have to be take care off.
    ii. If I copy the Update routines in to the Transformation, then do I have to change any ABAP Code?  Is there any syntax changes that have to be take care off.
    iii. If I copy the Start routines in to the Transformation, then do I have to change any ABAP Code?  Is there any syntax changes that have to be take care off.
    I appreciate your help.  Thanks!

    1) TRAN_STRUCTURE to SOURCE_FIELDS
    2) COMM_STRUCTURE to SOURCE_FIELDS
    3) DATA_PACKAGE to SOURCE_PACKAGE
    http://help.sap.com/saphelp_nw04s/helpdata/en/44/bd9b5be97c112ce10000000a11466f/content.htm

  • Is difference between update routine,start routine and transfer routine

    Hi All,
    What is difference between transfer routine and update routine.

    Hi Venkat,
    Routine is a set of ABAP code which is used to select a record or transform the field value at the time of loading the data.
    Types of routines:
    Tranfer Routines in Transfer Rules:
    Start Routines in Transfer Rules:
    Update Routines in Update Rules:
    Start Routines in Update Rules:
    Transfer/Update routine:
    It's the set of ABAP code used in Transfer/Update rules. Transfer/Update routine is used to change the value of a particular field/object at the time of loading data.
    Ex: Populate the amount/discount field by using Price and Quantity based on the given conditions.
    Start Routine:
    Start routine can be used in both Transfer Rules and Update Rules. Start routine is used to determine whether to load a particular record or not.
    Ex: From the data related to the year 2005, we can select only the records which belong to a particular month or fiscal period.
    Ultimately Transfer/Update routines are to update the value of a particular field. Start routines are used to select entire record.
    You can get more details about routines at :
    Routines
    ROUTINES
    Routines and Examples
    Start Routines
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/60cecb1d-0a01-0010-8289-b14fd99062fa
    take a look this doc for abap used in bw
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/4493c4a6-0301-0010-62a2-efd6ded61e04
    ABAP book that always mentioned :
    http://cma.zdnet.com/book/abap/
    assign points if useful ***
    Regards
    CSM Reddy

  • Diff between Start ,transfer,update routines

    hi
    Plz tell me what is the difference between Start routine,transfer routine and update routine. Send me some real time examples.I would be very glad.
    Regards
    Ajay

    Hi!
    it is simple all of them are small program used in ETL process while loading in to BW.
        <b>Start routine:-</b> is used in Transfer rules and update rules, this abap code is  executed before starting the load and used in scenarios where we want to perform some operations on all the data example deleting some records before processing records in Update rules or transfer rules.
    <b>Update routine:-</b> abap code used in update rules to transform or finding some field. ex:- may be you want to retrieve the field data from some data base tables based on the other data present in the infosource
    <b>Transfer Routine:-</b> similar to the update routine but used in transfer rules.
    with regards
    ashwin
    <i>PS n: Assigning point to the helpful answers is the way of saying thanks in SDN.  you can assign points by clicking on the appropriate radio button displayed next to the answers for your question. yellow for 2, green for 6 points(2)and blue for 10 points and to close the question and marked as problem solved. closing the threads which has a solution will help the members to deal with open issues with out wasting time on problems which has a solution and also to the people who encounter the same porblem in future. This is just to give you information as you are a new user.</i>

  • Doubt regarding data declaration in update routine!

    Hi,
    i had added one field in cube, update rotuine for which is in due.
    in the update routine logic i have to assign this field to another field if some condition satisfies!
    the logic is --
    if Hstatus=c
    close_date=stdatum.
    close_date is the field i had created and added in info cube definition.
    now, how to declare these fileds in routine as it is asking me to declare the fields
    can any body suggest me how to declare those fields!
    Thanks,
    Ravi

    Hi,
    In cube, for updating every keyfigure, all the characteristics will be taken into account. So, in cube if you choose a keyfigure in characteristic tab you can find all the characteristics. Likewise you can find for all the keyfigures.
    So, Transfer routine for all kefigures will transfer the same routine of the characteristic for all the keyfigure. (that means if you choose different keyfigure and if you choose a the same characteristic you can find the same routine, no need to create separate ) If you choose no, it wont transer the same routine to all the keyfigures for the characteristic. You can define the separate routine for the characteristic for every keyfigure.
    in ODS this is not the case. There only Keyfields only will be common for all the datafields.
    rgrds,
    v.sen.
    Message was edited by:
            Senthilkumar Viswanathan

  • Update routine infinite loop

    Hello Experts,
    For loading ODS2 we are making a lookup on ODS1 for 0material based on
    purchaing document number, item line item.
    Is there any mistake in the start routine or update routine.
    Because the load goes in infinite loop. I think update routine should be changed.
    Any suggestions are appreciated
    Start routine:
    data: begin of itab occurs 0,
            pur_doc like /BIC/AZODS100-OI_EBELN,
            item like /BIC/AZODS100-OI_EBELP,
            material like /BIC/AZODS100-material,
          end of itab.
    clear itab.
    select OI_EBELN OI_EBELP MAT_PLANT from /BIC/AZODS100
             into table itab.
    Update routine for 0material
    loop at itab where pur_doc = COMM_STRUCTURE-OI_EBELN
                       and item = COMM_STRUCTURE-OI_EBELP.
           RESULT = itab-matplant.
    endloop.

    Hi,
    this takes a long time, because with each record of your data packaged it is doing the loop and scanning each row of the internal table. Use the following instead.
    Start routine:
    types: begin of t_itab,
    pur_doc like /BIC/AZODS100-OI_EBELN,
    item like /BIC/AZODS100-OI_EBELP,
    material like /BIC/AZODS100-material,
    end of t_itab.
    data: itab type hashed table of t_itab with unique key pur_doc item.
    select OI_EBELN OI_EBELP MAT_PLANT from /BIC/AZODS100
    into table itab order by oi_ebeln oi_ebelp mat_plant.
    I hope these fields are the key of the ods object.
    Update routine for 0material
    data: wa_itab type t_itab.
    read table itab into wa_itab with table key pur_doc = COMM_STRUCTURE-OI_EBELN
    item = COMM_STRUCTURE-OI_EBELP.
    if sy-subrc = 0.
    RESULT = wa_itab-matplant.
    else.
    clear result.
    endif.
    Hope this helps
    regards
    Siggi

  • Diff bet transfer and update routine

    Hi experts,
    can u plz.. clearly explain me.. the diff bet transfer and updatwe routine.. with scenario... i just want to know.. abt... it.. i went thru.. help.. but... not got clearly...
    *points fully assured*
    Regards
    Rekha

    Both the do the same.
    Trnsfer routine will perform the required transformation in the transfer rules while the update routine will do the same in the update rules.
    The purpose of these routines is when you wish to transform the incoming records by performing some checks and validations before the data get into the data targets.
    A realtime example will be:
    You bring in profit cemtre transaction data and for each profit centre record you wish to check if it has value type indicator. The business rule is if there is no such indicator, either reject the record or tag a value of 10.
    Since this is to be checked for each record, we do it in the transfer routine or in update routine.
    Also, you would have heard of start routine; if  a logic is to be applied on the whole data package, then you do it in start routine.
    In 7.0, all these things got replaced bu start routine, expert routine and end routine.
    Ravi Thothadri

  • How to identify transfer and update routines are applied to my ods/ cubes?

    hi all,
    how to identify transfer nor update routines are been applied to my ods/ cube?
    regds
    hari

    You need to go through the update Rule and Transfer Rule mapping and if you see any routine then there is a routine. Only manual process and also that is not too bad to go through them.
    thanks.
    Wond

  • No RETURNCODE 0 allowed in update routines in transfer mode

    Hi,
    After Applying a RETURNCODE = 4 to one characteristic in my update routine i get the following message:
    No RETURNCODE <> 0 allowed in update routines in transfer mode
    Message no. RSAU492
    It seems that i doesn't allow me to modify a certain characteristic in my target ODS.
    Any suggestions?
    BR,
    Xibi

    Hi,
    could it be this problem (as described in an OSS note) ?
    "Symptom
    Various errors occur when you load reporting point data from CRM with the DataSource 0CRM_UT_POD_ATTR and update the data in BW:
    1. Insufficient data is delivered, and all fields are empty except for the external reporting point name (EXT_UI_BW).
    2. The restriction according to the external reporting point name (EXT_UI_BW) in the BW scheduler has no effect.
    3. The update in BW to the InfoObject 0UCCRMPOD terminates with the error message RSAU-492 (Return code <> 0 is invalid in overwrite MODE in update routines).
    Other terms
    Sales, commercial and industrial customers, IS-U-CRM integration, IS-U, quotation controlling, quotation planning
    Reason and Prerequisites
    There is an error in the extractor. In addition, the selection according to EXT_UI_BW cannot be supported in the InfoPackage for technical reasons. The case was not caught when the texts for 0UCCRMPOD were updated because the texts for 0UC_POD (IS-U reporting point) had not yet been loaded from IS-U.
    Solution
    The error is eliminated in CRM 4.0 Support Package 05 and BI Content Add-On 3.20 Support Package 11 or BI Content Add-on 3.30 Support Package 04  or BI Content Add-On 3.51 Support Package 01.
    Correction instructions for the CRM section are attached."
    /manfred

  • Hi pls give me any one update routine, transfer routine scenarios

    hi pls give me any one update routine, transfer routine scenarios for to telling interviews (easy scenario for interviews)

    Hi Venkat,
    Pls chk this nice paper:
    How To… Routines within Transformations
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/6090a621-c170-2910-c1ab-d9203321ee19
    Pls chk this links for samples & Examples:
    http://help.sap.com/saphelp_nw04s/helpdata/en/e3/732c42be6fde2ce10000000a1550b0/content.htm
    http://help.sap.com/saphelp_nw04s/helpdata/en/43/c3963dfbde4dede10000000a422035/content.htm
    http://help.sap.com/saphelp_nw04s/helpdata/en/43/bcdb7801344defe10000000a422035/content.htm
    http://help.sap.com/saphelp_nw04s/helpdata/en/43/bcdc6001344defe10000000a422035/frameset.htm
    Hope this helps,
    Regards
    CSM Reddy

  • BI : Write BW 3.5 Transfer/Update routine to BI 7.0 Transformation routine

    Hi Gurus,
    I have 3.5 tranfer/ update routines. can anybody please tell me how to write the same routines in BI 7.0. I guess there are some syntax changes. For example below is the 3.5 update routine. Kindly advise me the steps or way of  how to write the same routine in BI 7.0.
    FORM compute_data_field
      TABLES   MONITOR STRUCTURE RSMONITOR "user defined monitoring
      USING    COMM_STRUCTURE LIKE /BIC/CS2LIS_02_ITM
               RECORD_NO LIKE SY-TABIX
               RECORD_ALL LIKE SY-TABIX
               SOURCE_SYSTEM LIKE RSUPDSIMULH-LOGSYS
      CHANGING RESULT LIKE /BI0/APUR_O0100-NETPRICE
               RETURNCODE LIKE SY-SUBRC "Do not use!
               ABORT LIKE SY-SUBRC. "set ABORT <> 0 to cancel update
    Thanks & regards ,
    M.S
    Edited by: M.S on Oct 26, 2009 12:10 PM

    Hi ,
    solved on my own. Thankyou very much..
    thanks & regards,
    M.S
    Edited by: M.S on Oct 27, 2009 6:57 AM
    Edited by: M.S on Oct 27, 2009 6:59 AM

  • Maintaining the mapping information and writing update routine to populate

    Hi,
    Its my requriment to get the transactional data from r/3, here in the transaction data i will get the data in following format
    (for example)
    Material no.   Sales value    quantity ..
    M001              100           2
    M002              200           4
    M003              150           3
    now my requirement is to take the quantity per material number and multiply it with a factor called as SBU factor
    .. my problem is that this SBU factor is not maintained in r/3 means the mapping information of material no. with its relative SBU factor is not maintained. So i thought of two option as this mapping is fixed means it will not changed so we can maintain in bw system through 1) one time upload of flat file or
    2) maintaning a table in BW with mapping
    so users agreed to give the mapping information as follows
    Material no.    SBU factor
    M001              5
    M002              10
    M003              7
    now while uplading the transational data i need to take the SBU factor per material that is maintained through flat file or table and multiply it with quantity and store it quantity.
    for example(the result i need in cube)
    material no.   sales value    quantity(quantity * SBU)
    M001             100           2*5=10
    M002             200           4*10=40
    M003             150           3*7=21
    so i can do this at two level at transfer rules or update rules.
    I need following clarification
    1) shall i load the mapping information through flat file or maintain it in table?
    2) If i will do the transformation at update rules so wht routine (start or update) should i write to get the SBU factor per material and do transformations
    If possible send the sample routine.
    Pls reply ASAP.
    Thanks
    Saleem.

    Hi Saleem,
    Nimesh is right..Do the multiplication in the Update rules.
    If the data for this SBU factor is less and is always fixed, you can go for one time upload, else set up a RFC Call to load this data to BW from R/3 if no datasource for the same exist.
    Else you can also maintain a table in BW, in which one time upload could be done by writing an ABAP, or manually. And then you can provide authorizsation to add more values to it, so that the table can be maintained.
    And then in Update rules, use the table for look up and get the SBU Factor per material.
    Some thing like
    Select * from the <ODS table or Table name> into <internal table>
    Loop at Data_Package.
    Read table <internal table> for all values in Data_Package where internal table-Material = Data_package-MAterial.
    If sy-subrc = 0.
    Sales Value = Sales Value * internal table-SBU Factor.
    ENDIF.
    MODIFY DATA_PACKAGE.
    ENDLOOP.
    You might need to make more changes to this code as required.
    Assign points if useful
    Regards
    Rohit

  • Update Routine to populate 0VENDOR from either of the 2 data source fields

    Hi,
    I have a requirement to write an update routine for 0VENDOR based on the below logic :
    Create routines to populated BW Info Object u201CVendoru201D (0VENDOR) based on the following logic:
    IF field u201CVendoru201D (ITM_VENDOR_ID) is populated from data source 0BBP_SC_TD_1, THEN populate 0VENDOR with that value
    ELSE IF u201CPreferred Vendoru201D (ITM_PROPVEN_ID) is populated from data source 0BBP_SC_TD_1, THEN populate 0VENDOR with that value
    ELSE IF neither u201CVendoru201D (ITM_VENDOR_ID) or u201CPreferred Vendoru201D (ITM_PROPVEN_ID) are populated from data source 0BBP_SC_TD_1, then 0VENDOR = NULL
    Can anyone help me in converting this logic into ABAP routine.
    Thanks,
    Suchitra

    Hi Suchitra,
    In the Transfer Rules ... You will be mapping each field then the mapping field click on the button with Triangle then you can see the which type you want.
    Then select the routine and select the datasource fields (don't forget to select the both fields VENDOR and PROPITM)...
    Then give a name to routine ...
    and in the code just change the COMM_STRUCTURE to TRANSFER_STRUCTURE.
    Then you can get this .... done..
    Regards,
    Ravi Kanth

  • Update Routine & Start Routine in BI 7.0

    Hi Experts,
    We have recently upgraded from BI 7.0 , I am confused about where to write start routine & update routine in transformations of BI 7.0?
    Please mention any pointers?
    Thanks.
    Sharat.

    Hi
    When you open the start routine you will see a routines info which gives you help on this.
    A summary would be:
    Update routine in transformation.
    RESULT = source_field-material.
    Basically you can acess the value of the record by using source_field.
    Start routine.
    The data comes in the form of an internal table with name SOURCE_PACKAGE.
    You can access the values by looping into a work area.
    LOOP AT SOURCE_PACKAGE assigning <source_fields>.
    ENDLOOP.
    End routine(This is a new feature in BI 7.0 where you can modify data when transformations are complete and before data is updated to info-providers)
    The data comes in the form of an internal table with name RESULT_PACKAGE.
    You can access the values by looping into a work area.
    LOOP AT RESULT_PACKAGE assigning <result_fields>.
    ENDLOOP.
    Hope this helps you to understand the basics of the abap used in the transformations .
    Regards
    Samarpita

  • New field to be filled by update routine

    Deltas are running, and added a new char to the cube and written update routine to fill the new char. How should i fill this new value for history. I don't want to reshedule the job from r/3. Will i be able to do from reconstruction (i doubt since our PSA Data is deleted every week). there is no ods between. What are options available.
    Kunal

    Hi Kunal,
       If data is available in BW then you can write some coding(routine) to fill the data for history data you have to loop back(CUBE to CUBE) to CUBE.
    Have a look:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/f421c86c-0801-0010-e88c-a07ccdc69601
       Provide some more details. Which character, is available as attribute of any object...etc..
    Hope it Helps
    Srini

Maybe you are looking for

  • Replying to a sender

    At times, when I reply to an email sent by somebody, the transmission fails, and I get a box saying, "Cannot send message using the server ...........(my server path), Sending the message content to the server failed. I click "try later" and the mess

  • Compatibility of Mac OSX 10.4 with 10.7.4

    Hi there, I bought this cambridge advanced learner's dictionary Third edition that's compatible to both Windows and Mac OSX10.4.  But my DVD -Rom just not accepting.  Its simply ejecting after a couple of minutes.  Same happened with my Windows opera

  • Help: Athlon XP won't run at proper bus speed on kt3 ms6380

    Ok, I'm a little confused now but i pulled an AMD athlon 1300 a1300aps3b (200mhz bus) out of the computer. It was working, but i didn't note the speed. Then i went to test an amd athlon XP 1700 ax1700dmt3c which i had laying around. I thought that th

  • Benchmarking information for SOA SUite 11g components

    Hi All Can someone please point me to any publicly available information on benchmarking of SOA Suite 11g compoennts - process engine, rule engine, human task engine etc? Or any information from your experiences to share? Sincere thanks in advance. R

  • Complete login procedure in ORACLE APPS.

    Hi... I am appearing for the interview and in one of the interview, i was asked to explain complete details about the login procedure. like what are the configuration files it will use and profile etc.... Please give me the possible detailed contents