Coding in Update Rules

Hi,
I need generate the report from the following two cubes, Multiprovider does not provide the solution.
Here is the two cubes,
CUBE 1 - 0CATS_C01 - Time sheets Approved
0NETWORK Network
0R_ACTIVITY Activity Number
CUBE 2 - 0PS_C04 Project Systems
0NETWORK Network
0ACTIVITY Activity Number
0WBS_ELEMT Work Breakdown Structure Element
I need to create an update rule to derive wbs element from network/activity, network and activity are in one cube and wbs in the other one.
It would be great, if someone would send me an sample code.
Thank you

Hi Senthil,
1. Create a new cube, add all the required characteristics.
2. Generate export data sources from the extings infocubes. You cant transport generated datasources from CUBE. You have to generate in production aswell.
3. create update rules from both the cubes to new cube.
4. load data. test it.
5. transport it to quality & production.
More info:
Data Marts:
http://help.sap.com/saphelp_nw04/helpdata/en/80/1a6110e07211d2acb80000e829fbfe/content.htm
Hope it Helps
Srini
Assigning points, way of saying thanks in SDN(if it helps)

Similar Messages

  • Coding in Update Rules accessing a Z-Table

    Hi,
    I have a datarecord that looks as follows:
    0MATERIAL:                     1000
    ZMC (Manufacturing Company)      03
    ZFAC (Facility ID)               16
    ZSHIP (Total Shipments)         500 Units
    <b>There is a Z-Table in R/3 (ZPLANT) that maps ZMC and ZFAC to R/3 Plants (ZPLANT).</b>
    Assuming this Z-Table is available in BW <b>what would the  coding in the update rules into a Cube  look like to do that mapping?</b>
    Thanks again
    Christian

    dear Christian,
    try use start routine, assume the table in bw is zplant and has fields zmc and zfac ...
    PROGRAM UPDATE_ROUTINE.
    $$ begin of global - insert your declaration only below this line -
    TABLES: zplant.
    DATA: l_tabix like sy-tabix,
    it_plant like zplant occurs 0 with header line.
    $$ begin of routine - insert your code only below this line -
    fill the internal tables "MONITOR" and/or "MONITOR_RECNO",
    to make monitor entries
    data : it_data_package like DATA_PACKAGE occurs 0 with header line.
    first select the master data to internal table, this to
    avoid each time has to fetch from database table for
    single record, for better performance
    select * from zplant
    into table it_plant.
    if table zplant has high volume data, you can use for * select * from zplant
    into table it_plant.
    all entries
    for all entries in data_package
    where material ? = data_package-material.
    loop at data_package.
    l_tabix = sy-tabix.
    move-corresponding DATA_PACKAGE to it_data_package.
    read it_plant with key [field name e.g zplant] = it_data_package-[/bic/zplant] BINARY SEARCH
    if more key add it_data_package-[fieldname] - without * AND
    if sy-subrc = 0.
    it_data_package-/bic/zmc = it_plant-zmc.
    it_data_package-/bic/zfac = it_plant-zfac.
    modify data_package from it_data_package index l_tabix.
    endif.
    endloop.
    take a look some sample code
    Re: Is it possible to read a third ODS in update rules between two ODS?
    Re: Update Rules
    hope this helps.

  • Types of update rules

    Hi experts,
    What are the types of update rules?
    Regards,
    Siva

    Hi......
    Yes either you can say what are the different update types.........that Praveen has already ansered..............or you can say.........
    You can say what are the diffrent types of update routines...then the answer is :
    1) Start Routine in Transfer Rules
    2) Transfer Routine in Transfer Rules.
    3)Start Routine in Update Rules
    4)Update Routine in Update Rules.
    The routines that you write in transfer rules are applicable to all the Data targets that get the data from that particular Infosource, when you are going to write some code in Transfer rules, you have to understand that you are going to manupilate the data that is going to get into BW .
    If you are going to write in Update Rules , then that logic is going to apply only for that particular Data target .
    Eg : Let suppose I have a Flat file that gets data from 3 countries, US, Canada and Mexico.
    Now I have prepared the data source for the same . But I dont want to have the data of Mexico in to BW itself.
    So I will write a Start routine at TR to eliminate the data of Mexico.
    My Next step is I want the data of US into one ODS and Canada data in to another ODS.
    For this I handle the dataflow at Start routine in Update rules, to eliminate Canada data for US ODS and Vice Versa.
    start routine in transfer rules
    Look up to load master data
    excluding
    Start Routine in Transfer Rules
    Sample code in Update Rule to restrict data selection?
    Append Datapak - transfer start routine
    Excluding Blank field in Infopackage Filter
    Trans Routine ABAP help ..
    transfer routine
    Date key figure: Convert DATS format to DEC format
    Date Conversion in Flat File
    Transfer Routine ABAP
    conversion exit
    Date Conversion
    Problem with  conversion char to numc in transference rules
    conversion routine..?
    update routine
    How to call a function in Update Rules to reverse a key figure sign
    Need Sample Code for Update Rules
    Date calculation
    Difference between data in PSA and Data in Infocube
    No RETURNCODE <> 0 allowed in update routines in transfer mode
    the diffrerece between DEC and (yyyymmdd) 8 char in Time defination
    Access master data in update rules
    Date key figure: Convert DATS format to DEC format
    start routine in update rules
    Is it possible to read a third ODS in update rules between two ODS?
    update rule coding while loading data from ODS to CUBE
    Start Routine in Update Rules to populate additional fields from ODS
    Coding in Update Rules accessing a Z-Table
    Start routine
    Regards,
    Debjani...........

  • Start routine and update rules

    Hi,
    What is accessed first:-
    Start Routines or Update Rules?
    What is the use of global variables in start routine?
    Please reply.
    Thanks.

    Hi......
    You have different types of Routines in BW .
    1) Start Routine in Transfer Rules
    2) Transfer Routine in Transfer Rules.
    3)Start Routine in Update Rules
    4)Update Routine in Update Rules.
    The routines that you write in transfer rules are applicable to all the Data targets that get the data from that particular Infosource, when you are going to write some code in Transfer rules, you have to understand that you are going to manupilate the data that is going to get into BW .
    If you are going to write in Update Rules , then that logic is going to apply only for that particular Data target .
    Eg : Let suppose I have a Flat file that gets data from 3 countries, US, Canada and Mexico.
    Now I have prepared the data source for the same . But I dont want to have the data of Mexico in to BW itself.
    So I will write a Start routine at TR to eliminate the data of Mexico.
    My Next step is I want the data of US into one ODS and Canada data in to another ODS.
    For this I handle the dataflow at Start routine in Update rules, to eliminate Canada data for US ODS and Vice Versa.
    Global variables in Start routine
    You can have global variables, internal tables populated by the
    startup routine. This data will be available to the field
    routines. Create yourself a start routine, declare some
    variables in the global section, and then create a field
    routine. You will be able to use the globally declared objects
    in the field routine
    Please check below help link for routines in sap netweaver 2004s
    http://help.sap.com/saphelp_sem60/helpdata/en/e3/732c42be6fde2ce10000000a1550b0/frameset.htm
    How to guide "How to transformations routines".Please check the below link:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/dc1d9990-0201-0010-16aa-db3c4eb8b642
    start routine in transfer rules
    Look up to load master data
    excluding
    Start Routine in Transfer Rules
    Sample code in Update Rule to restrict data selection?
    Append Datapak - transfer start routine
    Excluding Blank field in Infopackage Filter
    Trans Routine ABAP help ..
    transfer routine
    Date key figure: Convert DATS format to DEC format
    Date Conversion in Flat File
    Transfer Routine ABAP
    conversion exit
    Date Conversion
    Problem with  conversion char to numc in transference rules
    conversion routine..?
    update routine
    How to call a function in Update Rules to reverse a key figure sign
    Need Sample Code for Update Rules
    Date calculation
    Difference between data in PSA and Data in Infocube
    No RETURNCODE <> 0 allowed in update routines in transfer mode
    the diffrerece between DEC and (yyyymmdd) 8 char in Time defination
    Access master data in update rules
    Date key figure: Convert DATS format to DEC format
    start routine in update rules
    Is it possible to read a third ODS in update rules between two ODS?
    update rule coding while loading data from ODS to CUBE
    Start Routine in Update Rules to populate additional fields from ODS
    Coding in Update Rules accessing a Z-Table
    Start routine
    Hope this helps you..........
    Regards,
    Debjani.........
    Edited by: Debjani  Mukherjee on Oct 1, 2008 4:58 PM

  • Need help in Update rule coding - URGENT

    Hi Gurus,
              I am creating an update rule there i need to compare some filed with the fields in inforsouce so here what should be the name used for the infosource can i use something like this
    read table TAB where
          <fields1>       =  DATA_PACKAGE-<field1>.
    where DATA_PACKAGE is the infosource
    is this the rite method
    waiting for reply
    Ravi

    Hi,
    Use this in Update Routine.
    IF COMM_STRUCTURE-field1 = 'value1' AND
    COMM_STRUCTURE-field2 = 'value2'.
    RESULT=field3*100.
    ELSE.
    RESULT=field*10.
    END IF.
    here field name will be in format of :     /bic/fieldname
    Regards,
    rik

  • Help needed on update rules Coding

    Hi BW Gurus.
    Please help me out.
    I am working on BI 7.0
    This is my scenario.I need to take a project cost report.
    There are some projects in cProjects and some projects in R/3 (Project System).
    Each project in cProjects is linked with one or more projects in R/3.
    They are linked by means of GUID.Now I need to pull out a report from a infocube(Z infocube) which has information both from R/3 and cProjects.I built a Z infocube.
    Here comes my problem.
    I need to write update rule for the requirement explained below.
    For all the projects(in cProjects) I need to find its GUID from the table-DPR_PROJECT . These GUIDs are contained in this table under the field name GUID.
    The same GUID numbers I can find it in another table-DPR_OBJLINK under the field PROJECT_GUID. For this PROJECT_GUID numbers, I need to identify the corresponding EXTERNAL_ID(this field is in the table-DPR_OBJLINK) of the projects(These projects are R/3 projects). These EXTERNAL_ID values has to be pulled out in the report.
    I am using the extractor 0CO_OM_WBS_1.
    Please help me out with the update rule code.
    Please help me out as soon as possible.
    Its really urgent my dear friends
    Thanks in Advance,
    Have a nice day
    Regards,
    Sam Mathew

    Hi Raogovind,
    For which state are you customising this Professional Tax? Professional Tax wage type is /422.
    The system determines the professional tax payable by an employee, based on the following factors:
    Professional tax basis u2013 Comprises those salary components on which a professional tax is applicable. The salary components to be included for calculating the professional tax basis depend on the state. The different components are:
    Basic pay
    Dearness allowance
    Medical reimbursement perquisite
    Housing
    Profits in lieu of salary
    Other remuneration that an employee receives regularly
    Bonus
    It is depending on the combination of the Personnel Area, Personnel sub area and the professional tax grouping of the employee, that the system identifies factors such as the:
    Components of the professional tax basis.
    Method and the frequency of calculating and deducting professional tax.
    Hope this information helps you solve the issue.
    Edited by: chandra.saphr on Aug 6, 2009 7:10 AM

  • Need to create a transformation based on Update Rules Logic

    Hi,
    I have an existing complex Update Rule. I need to manually create a Transformation based on this Update Rule logic. The Start Routine of the Update Rule comprises of:
    1) All data declarations in the Global Area
    2) The local coding area consists of various select statements from various r/3 tables used later for mapping. It also calculates and stores values in the Data Package final internal table for few infoobjects that are not present in the Source object but and are used to populated data in the target.
    3) then we have the various one to one individual Infoobject mappings/constants and many individual infoobject routines that pick result from the comm_structure
    I am not very clear as to where each of the above coding logic should be put in the transformation coding area...... I can see four main coding areas in the transformation....global area, 2nd Global Area, Method Start_Routine and Method Inverse_Start_Routine........... I think the global data declarations(point 1 above) should be put in the Global declaration area of the start routine. The local area of the update rule logic (point 2 above) that contains select statements should be put in 2nd Global part or should it be put in Method Start_routine????? Point 3 above for individual filed mappings will be done through Rule groups. Also can anyone let me know what is the methos inverse_start_routine used for?????
    Thanks.

    Hi,
    Point 1 you mentioned should be put under2nd Global declaration part of start routine.
    Point 2 should be put under Method Start_routine.
    Point 3 as you only mentioned can be done by individual field rule mappings.
    Method inverse_start_routine
          This subroutine needs to be implemented only for direct access
          (for better performance) and for the Report/Report Interface
          (drill through)
    Not very clear though about Inverse routine. But definetly not being used for the case you mentioned.
    Hope it helps.

  • Update rules, different source and target units (0BASE_UOM-- 0QVVMRA)

    Hi,
    I have a problem with update rules as I'm trying to map two keyfigures with different unit-types together. They are both kilograms (KG) but the source figure is defined as 0BASE_UOM and the target keyfigure is 0QVVMRA (Amount of sales).
    How can I make this connection work? Do I have to use the 'Unit calculation in routine' -option or is there a more simple way? I a routine must ne written, please post an example or link to a thread which has one.
    Thx!
    -miikka

    Hi,
    The Problem is that you are trying to connect a Key Fig for Type Quantity with the Key Figure Amount.
    The Amount Key Fig will have either 0CURRENCY or Fixed Currency.
    Using Update Rules Coding you could transfer the Value but you will have problems with the Currency. You cant store a Unit like KG in 0CURRENCY.
    Regards.

  • Update rule routine

    hi all
    i need to write a routine at the update rule level for currency type....
    currency type has data of type 00,01,02 loaded to psa and then to infocube
    i need only 00 data to be loaded into cube, so want to write a routine
    can you please provide the coding for the same so that i can write at the update rule level for curr type field
    Regards

    PROGRAM CONVERSION_ROUTINE.
    Type pools used by conversion program
    TYPE-POOLS: RS, RSARC, RSARR, SBIWA, RSSM.
    Declaration of transfer structure (selected fields only)
    TYPES: BEGIN OF TRANSFER_STRUCTURE ,
      InfoObject 0COMP_CODE: CHAR - 000004
      HEADER_COMP_CO(000004) TYPE C,
      InfoObject 0PLANT: CHAR - 000004
      HEADER_PLANT(000004) TYPE C,
      InfoObject 0MATERIAL: CHAR - 000018
      HEADER_MATERIAL(000018) TYPE C,
      InfoObject 0MATL_TYPE: CHAR - 000004
      HEADER_MAT_TYPE(000004) TYPE C,
      InfoObject 0MATL_GROUP: CHAR - 000009
      HEADER_P_GROUP(000009) TYPE C,
      InfoObject 0LOTSIZE_IT: QUAN - 000013
      LOTSIZE(000007) TYPE P,
      InfoObject 0UNIT: UNIT - 000003
      LOTSIZE_QTY_UNIT(000003) TYPE C,
      InfoObject 0FISCPER: NUMC - 000007
      PERIODE(000007) TYPE N,
      InfoObject 0FISCVARNT: CHAR - 000002
      FISCAL_Y_VARIANT(000002) TYPE C,
      InfoObject 0PCPITEMCAT: CHAR - 000001
      ITEM_CATEGORY(000001) TYPE C,
      InfoObject 0PCP_RES: CHAR - 000035
      COST_ITEM(000035) TYPE C,
      InfoObject 0COMPONENT: CHAR - 000018
      MATERIAL(000018) TYPE C,
      InfoObject 0VAL_CLASS: CHAR - 000004
      VALUATION_CLASS(000004) TYPE C,
      InfoObject 0PLANT_COMP: CHAR - 000004
      PLANT(000004) TYPE C,
      InfoObject 0SEND_CMPC: CHAR - 000004
      COMPANY_CODE(000004) TYPE C,
      InfoObject 0CO_AREA: CHAR - 000004
      CONTROLLING_AREA(000004) TYPE C,
      InfoObject 0COSTCENTER: CHAR - 000010
      COST_CENTER(000010) TYPE C,
      InfoObject 0ACTTYPE: CHAR - 000006
      ACTIVITY_TYPE(000006) TYPE C,
      InfoObject 0WORKCENTER: CHAR - 000008
      WORK_CENTER(000008) TYPE C,
      InfoObject 0VENDOR: CHAR - 000010
      VENDOR(000010) TYPE C,
      InfoObject 0INFO_REC: CHAR - 000010
      INFO_RECORD(000010) TYPE C,
      InfoObject 0ABCPROCESS: CHAR - 000012
      PROCESS(000012) TYPE C,
      InfoObject 0AMOUNT: CURR - 000015
      VALUE(000008) TYPE P,
      InfoObject 0AMOUNTFX: CURR - 000015
      VALUE_FIXED(000008) TYPE P,
      InfoObject 0AMOUNTVR: CURR - 000015
      VALUE_VARIABLE(000008) TYPE P,
      InfoObject 0OI_MENGE: QUAN - 000015
      QUANTITY(000008) TYPE P,
      InfoObject 0BASE_UOM: UNIT - 000003
      QUANTITY_UNIT(000003) TYPE C,
      InfoObject 0PRICEUNIT: DEC - 000005
      PRICE_UNIT(000003) TYPE P,
      InfoObject 0CURRENCY: CUKY - 000005
      CURRENCY(000005) TYPE C,
      InfoObject 0CURTYPE: CHAR - 000002
        CURRENCY_TYPE(000002) TYPE C,
      InfoObject 0COSTELMNT: CHAR - 000010
      COST_ELEMENT(000010) TYPE C,
      InfoObject 0COSTCOMP: NUMC - 000003
      COST_COMPONENT(000003) TYPE N,
      InfoObject 0CCOMPSTRUC: CHAR - 000002
      COST_COMP_STR(000002) TYPE C,
      InfoObject 0SCRAPQTY: QUAN - 000015
      SCRAP_QTY(000008) TYPE P,
      InfoObject 0COMP_SCRAP: QUAN - 000015
      COMP_SCRAP_QTY(000008) TYPE P,
      InfoObject 0COSTVAR: CHAR - 000004
      COSTING_VARIANT(000004) TYPE C,
      InfoObject 0COSTVERS: NUMC - 000002
      COSTING_VERSION(000002) TYPE N,
    END OF TRANSFER_STRUCTURE .
    Global code used by conversion rules
    $$ begin of global - insert your declaration only below this line  -
    TABLES: ...
    DATA:   ...
    $$ end of global - insert your declaration only before this line   -
          FORM COMPUTE_CURTYPE
    Compute value of InfoObject 0CURTYPE
    in communication structure /BIC/CS0CO_PC_PCP_10
    Technical properties:
        field name      = CURTYPE
        data element    = /BI0/OICURTYPE
        data type       = CHAR
        length          = 000002
        decimals        = 000000
        ABAP type       = C
        ABAP length     = 000002
        reference field =
    Parameters:
    -->  RECORD_NO       Record number
    -->  TRAN_STRUCTURE  Transfer structure
    <--  RESULT          Return value of InfoObject
    <->  G_T_ERRORLOG    Error log
    <--  RETURNCODE      Return code (to skip one record)
    <--  ABORT           Abort code (to skip whole data package)
    FORM COMPUTE_CURTYPE
      USING    RECORD_NO LIKE SY-TABIX
               TRAN_STRUCTURE TYPE TRANSFER_STRUCTURE
               G_S_MINFO TYPE RSSM_S_MINFO
      CHANGING RESULT TYPE /BI0/OICURTYPE
               G_T_ERRORLOG TYPE rssm_t_errorlog_int
               RETURNCODE LIKE SY-SUBRC
               ABORT LIKE SY-SUBRC. "set ABORT <> 0 to cancel datapackage
    $$ begin of routine - insert your code only below this line        -
    DATA: l_s_errorlog TYPE rssm_s_errorlog_int.
    If <SOURCE_FIELDS>-CURTYPE NE '00'
    Delete DATA_PACKAGE.
    RESULT = .
    returncode <> 0 means skip this record
      RETURNCODE = 0.
    abort <> 0 means skip whole data package !!!
      ABORT = 0.
    $$ end of routine - insert your code only before this line         -
    ENDFORM.
          FORM INVERT_CURTYPE
          Inversion of selection criteria for InfoObject 0CURTYPE
          This subroutine needs to be implemented only for SAP RemoteCubes
          (for better performance) and for the Report/Report Interface
          (drill through).
    -->  I_RT_CHAVL_CS       Ranges table for current InfoObject
    -->  I_THX_SELECTION_CS  Selection criteria for all other InfoObjects
    <--  C_T_SELECTION       Selection criteria for fields of
                              transfer structure
    <--  E_EXACT             Flag: Inversion was exact
    FORM INVERT_CURTYPE
      USING    I_RT_CHAVL_CS      TYPE RSARC_RT_CHAVL
               I_THX_SELECTION_CS TYPE RSARC_THX_SELCS
      CHANGING C_T_SELECTION      TYPE SBIWA_T_SELECT
               E_EXACT            TYPE RS_BOOL.
    $$ begin of inverse routine - insert your code only below this line-
      DATA:
        L_S_SELECTION LIKE LINE OF C_T_SELECTION.
    An empty selection means all values
      CLEAR C_T_SELECTION.
      L_S_SELECTION-FIELDNM = 'CURRENCY_TYPE'.
    Selection of all values may be not exact
      E_EXACT = RS_C_FALSE.
    $$ end of inverse routine - insert your code only before this line -
    ENDFORM.

  • Error in Update Rule migration using "Create Transformation"

    Hi gurus,
    We are encountering errors in the migration of our 2LIS_03_BF and 2LIS_03_BX update rules into a transformation via URs Context Menu    Additional functions - > Create transformation
    This action creates a new transformation, but is only generating very little Routine assignements in our KF fields. That is, some KF have their old ABAP converted automatically into ABAP OO while the rest (majority) of KF fields have no rule (routine) assigned at all.
    However, the most surprising thing is that after executing the "Create Transformation", the log shows everything correct and warnings (message 652 "Routine created. Verify sintax").
    Have you ever faced this problem?
    Is the automatic migration tool working correctly?
    If not, do we need to manually create all those KF routines that have not been correctly been migrated? Even after two years since new dataflow that was released?
    We are on SP 15...
    Thanks and best regards,
    Enric

    Hi Juanjo,
    In fact, if I understand you correctly, I'm facing the same situation: all FORMS based on OLD individual KFs routine are now available in the global transformation routine in ABAP OO, but what I'm missing is the individual source to target KF field mapping to routine, where the method with the perform to each coding should be done.
    Shall I understand this is a common bug? Manual correction proposed?
    Thanks,
    Enric

  • Update Rule Modification

    Hi Gurus,
             Before two months, I created (Dev box) Update rule (with many ABAP coding) in my InfoCube and it was working fine till 2 pm. When I tried to upload data at 4 pm., I found that my update rules are changed and it shows as under
             Last Changed by : "SAP"
             Date : "03/25/2004"
             Time : "11:59:17"
             Responsible : "SAP"
             I like to know how can I find who has changed my update rule or may be someone by mistake activated business content.
             Is there any system table or Tcode is available that shows us who has changed/activated update rule.
             Thanks in advance...

    Hi Anil,
           I checked in that table and it is also showing user ID as "SAP". My question is in which circumstances user ID "SAP" can be shown????.
           1, if somebody activated Business content that time it shows last changed by "SAP" Or
           2, ??????
           Thank you,

  • ABAP for removing records in update rule

    hello all,
    we have data loading to several infocubes based on sales order type (logical partition).  our entire business and reporting strategy for sales is based on order type.  we have 1 extractor loading these 5 cubes.  we want to code in the update rule to check for each cube a particular value, and if its not this value, remove the record.
    example would be loading order type cube zpt1 we want to check the records coming into this cube that the value for characteristic ziden = z1.  if not, remove the record and do not update the cube.  the other cubes are the same.  cube zpt2 checks if characteristic ziden = z2.  if not, remove all other records.
    can someone inform us how this coding would look like in the update rules?
    thanks so much

    I'm assuming you need code for BW 3.x, since you mentioned Update Rules. There are a couple of ways:
    DELETE
      data_package
    WHERE
      /bic/ziden NE 'Z2'.
    Or
    LOOP AT data_package.
      IF data_package-/bic/ziden NE 'Z2'.
        DELETE data_package.
      ENDIF.
    ENDLOOP.
    If you're on BI 7, then you can create a filter on the DTP to the target so that it only extracts the records needed from the source.
    Edited by: Dennis Scoville on Aug 19, 2009 1:59 PM

  • ABAP Guidelines for transfer rules & Update rules

    Is there any guidelines for abap when using it for transfer rules and update rules? I am looking for some best practise in this area.
    Thank you,

    There is no specific differences in the standards/coding procedure for Transfer Vs. Update Rulse.
    This can only come from a combination of requirement, design and experience! (in no particular order)
    for e.g.
    If the converions are the same for all data targets, you would use the transfer routine, start routine in the Transfer rules.
    If the converions are different for different data targets, you would use the update routine, start routine in the Update rules.
    Key concerns being performance, modularization, reduced effort and ease of maintenance.
    Not sure I have answered you question! Please get back if there is something specific you are interesed in (a scenario perhaps!)
    Rishi

  • Update rule and comm_strucutre error.

    dear all,
    i want to read field 0material from my update rule and do some abap coding with it but i keep getting this error
    E:Field "COMM_STRUCTURE-COMPUTE_0MATERIAL" is unknown. It is neither in
    one of the specified tables nor defined by a "DATA" statement. "DATA"
    statement. "DATA" statement.
    i'm using a virtual infoprovider with direct access to the datasource via DTP. how can this be solve?

    got it, source_fields-material

  • ZSD_C14 - Backorders - Update rules error

    Hi Friends,
    I want to load into (ZSD_C14) from ZSD_O04. Actually when i copy from 0SD_C14, 0SD_O04 Update routines didn't copied. I have copied manually. Once it's done i was trying to load into ZSD_c14 but it's strucking in the Update rules. It's taking lot of time. I notice that it may be update rules problem.
    Kinly give me the solution it's very urgent.
    Siri

    HI Gajendra,
    Thank you for your quick response.. But i'm not very good in Coding..
    pls find the below coding which i have.
    DATA: g_workarea LIKE /bi0/asd_o0100,
          l_/bi0/asd_o0100_itab TYPE HASHED TABLE OF /bi0/asd_o0100 WITH
          UNIQUE KEY doc_number s_ord_item,
          g_doc_number_save LIKE /bi0/asd_o0100-doc_number,
          g_s_ord_item_save LIKE /bi0/asd_o0100-s_ord_item,
          l_days_open TYPE i,
          l_index LIKE sy-tabix.
    FORM check_new_data
    -->  L_DOC_NUMBER
    -->  L_S_ORD_ITEM
    -->  G_WORKAREA
    FORM check_new_data USING    l_doc_number
                                 l_s_ord_item
                        CHANGING g_workarea LIKE /bi0/asd_o0100.
      IF l_doc_number NE g_doc_number_save OR
         l_s_ord_item NE g_s_ord_item_save.
        CLEAR g_workarea.
        SELECT SINGLE * FROM /bi0/asd_o0100
                        INTO CORRESPONDING FIELDS OF g_workarea WHERE
                        doc_number = l_doc_number AND
                        s_ord_item = l_s_ord_item.
        g_doc_number_save = l_doc_number.
        g_s_ord_item_save = l_s_ord_item.
      ENDIF.
    ENDFORM.                    "check_new_data
    $$ end of global - insert your declaration only before this line   -
    FORM compute_data_field
      TABLES   MONITOR STRUCTURE RSMONITOR "user defined monitoring
      USING    COMM_STRUCTURE LIKE /BIC/CS8ZSD_O04
               RECORD_NO LIKE SY-TABIX
               RECORD_ALL LIKE SY-TABIX
               SOURCE_SYSTEM LIKE RSUPDSIMULH-LOGSYS
      CHANGING RESULT LIKE /BIC/VZSD_C14T-OPQTCRGI
               RETURNCODE LIKE SY-SUBRC
               ABORT LIKE SY-SUBRC. "set ABORT <> 0 to cancel update
    $$ begin of routine - insert your code only below this line        -
    fill the internal table "MONITOR", to make monitor entries
    result value of the routine
      IF sy-datum GT COMM_STRUCTURE-dsdel_date AND
         COMM_STRUCTURE-gi_sts NE 'C'.
        RESULT = COMM_STRUCTURE-conf_qty - COMM_STRUCTURE-gis_qty.
      ENDIF.
    if the returncode is not equal zero, the result will not be updated
      RETURNCODE = 0.
    if abort is not equal zero, the update process will be canceled
      ABORT = 0.
    Where i need to change please let me know.
    Siri

Maybe you are looking for