Transformation routine for Infoobject lookup

Hey guys,
I am aware of Update rule routines but never done Transformation routine before. I didnt get any related post for my req.
My requirement is on WBS element I have some attributes which is coming from std WBS Attr extractor but I have one custom attribute infooject which I want to populate through an Infoobject which is also a master data Infoprovider. For this I have to write a Tranfer rule routine.
Please note these are transfer rules in BW 3.5 not BI 7. Please provide exact code. Appreciate your help.
Thanks.
BMW M///

Declaration of Types table for your master data object in the declaration area....
Replace your attributes in place of plant, GSRCSYS and CALMONTH
    TYPES: BEGIN OF TY_WBS,
                 /BIC/GPLANT TYPE /BIC/OIGPLANT,
                 /BIC/GSRCSYS TYPE /BIC/OIGSRCSYS,
                 CALMONTH TYPE /BI0/OICALMONTH,
           END OF TY_WBS.
    DATA: IT_WBS TYPE TABLE OF TY_WBS,
                WA_WBS TYPE TY_WBS.
/BIC/AWBS = your master data table name
SELECT * FROM /BIC/AWBS INTO WA_WBS
    WHERE OBJVERS = 'A'.
THen in the transformation Routine on field level use the below code to populate the value
"  /BIC/GPLANT = L_SOURCE_PACKAGE-/BIC/GPLANT.
   substitute your objects here to query the master data object to get values.
READ TABLE IT_WBS INTO WA_WBS WITH KEY
      /BIC/GPLANT = L_SOURCE_PACKAGE-/BIC/GPLANT.
RESULT = WA_WBS-Your object name.
Hope this will help you...

Similar Messages

  • Need clarification to write transformation routine for my requirement

    Hi all,
    I have a requirement as mentioned below...
    I have a keyfigure amount which will hold the amount value..now i have been asked to add amount_2000 key figure...it has been done..
    But the real problem is that
    They will give a filter value in DTP selection for the field "area".
    now if they give area as 1000 then the amount field should populat with the respective amount value
    but whereas amount_2000 should populate with only the amount of the area 2000 irrespective of the filter condition given...
    i need to write the routine in the transformation...But the problem is that when we give the filter value in DTP i coudnt get value for amount_2000 as only it gets the value for 1000.
    I hope the requirement is clear...
    can any one help me in this.
    Thanks & Regards,
    Hari.

    Write a routine for the InfoObject amount_2000.
    Use amount and area as source fields.
    Now the coding should look like:
    IF source_fields-area = '2000'.
      RESULT = source_fields-amount.
    ELSE.
      RESULT = 0.
    ENDIF.
    This is independent of the filter values in the DTP.
    Best regards
    Dirk

  • Transformation Routine for checking condition only once

    Hello,
    I would like to perform he calculations based on certain criteria which goes like this...
          LOOP AT ITab WHERE EMPno  = ITAB Empno AND
                            ATYPE = ITAB-stype .
            IF ITAB-LTYP = '1000'.
              CHECK ITab-ABEGIN GE YR_BEGDT AND ITab-ABEGIN LE YR_ENDDT.
              CHECK FLAG_ST <> 1.
              ITAB-PENDING_ST = ITAB-PENDING_ST + ( ( ITab-BAL / 825 ) * 100 ).
            ELSEIF ITAB-STPE = '2000'.
              CHECK FLAG_SL <> 1.
              ITAB-PENDING_SL = ITAB-PENDING_ST + ( ( ITab-BAL  / 825 ) * 100 ).
              ENDLOOP.
          IF ITAB-stype  = '1000'.
            FLAG_ST = 1.
          ENDIF.
          IF ITAB-stype  = '2000'.
            FLAG_SL = 1.
          ENDIF.
          MODIFY ITAB.
    How to implement this logic in Transformation roles ... as this flag checks only once.... to perform the calculation.
    Thanks
        ENDLOOP.

    Hi there,
    You must be aware of start and end routine in a transformation.
    Assumin that you would like to modify the code before sending it to individual( field wise transormation) transformation , you can write your code in start routine tab of the transformations.
    Code written in Start routine in a transformation can manipulate the data data package wise..
    say for eg if u need to fill the values in indivual routine  then u can save all  the values in an internal table ( say for eg ur itab) in the start routine and this data is available for u in the transformation routines.. so anything written in start rotuine shall work as global modification for the transformation routines.
    Similarly code written in end rotuine shall work for chunk of data which is modified individually in transformation routine.
    you ca go thr this link for more clarification
    http://www.sdn.sap.com/irj/scn/index;jsessionid=(J2EE3417700)ID2067718350DB10090875593766856688End?rid=/library/uuid/609eea32-455e-2c10-c08a-c23adf8c934e&overridelayout=true
    http://help.sap.com/saphelp_nw04/helpdata/en/4f/a9ea964a86b04dbe4df20af6e598cf/frameset.htm
    Regards,
    kk

  • Transformation routine for record manipulation DSO to cube

    Hi Experts
    My scenario is this
    1 row going into the transformation will be transformed into 1 or more rows out of the transformation. Same consept as return table in v3.5.
    Does any one have a sample code for this?
    I am thinking this should be put into the start routine and include a loop and manipulation of the the source_package.
    I just can't figure out the syntax. Perhaps this is not even the right way to go. Any suggestions?
    Help will be rewarded with points.
    best regards,
    Nina

    Hi Shambhu ,
    thanks for reply...
    My DSO  key fileds are PR No and PR Line item No
    Data field is Indicator ( R/D ) for every line item .
    per example One PR No contains 3  line ietms and indicators are D / R
            PR No -
    Item No -
    Indicator
             1000            10              D
             1000            20              D
             1000           30              R
    next day i will recieve delta -
    1000 , 30 , D   ---then my data will be in DSO
              PR No -
    Item No -
    Indicator
                1000            10              D
                1000            20              D
                1000           30               D
    i want to report ,  how many PR No are deleted or released  in Calander day ?
    Report conditions :
    if at least one line item indiactor has 'R' then that PR No is called as Released PR.
    if all line item indicator has 'D' then the PR No is called as Deleted PR.
    Plz tell me , how can i write routine ...and where can write ?
    i assign points...
    Regards,
    PSR

  • Target value in transformation routine

    Hi
    How can I get the value of target field, which is already present, in the transformation routine?
    For Example, I have a transformation between ODS DS1 and ODS DS2. DS1 has fields DS1_F1, DS1_F2 and DS2 has fields DS2_F1, DS2_F2. Now I have written a transformation routine for target field DS2_F1 with input DS1_F1. In this routine, I want to get the value of DS2_F1, which is already present, before the result is being updated. How can I get it?
    Thanks & Regards
    Tejo

    Hi,
    Use end routine concept here .
    Regards,
    Anil Kumar Sharma .P

  • REGEX statement not working in transformation routine?

    hi,
    I need to include the REGEX ABAP key word in transformation routine for one of the fields--
    FIND all OCCURRENCEs OF REGEX
    But when i include this statement it says:
    E: statement "REGEX" is not defined.check your spelling--
    but same statement when i copy in SE38 ABAP editor it works very fine--
    May i know what is the reason?
    i had tried with all possible single quotes before posting here

    Is that the entire statement?  It looks like it is interpeting REGEX as a variable.  It should look something like this:
    FIND all OCCURRENCEs OF REGEX '(\b\S+\b)(-?)' IN g_result

  • Test for Permitted Characters in Transformation Routine

    Hello,
    Background: There is a data quality issue when loading 3rd party data to BW, which cannot be solved at source. Therefore, initial transformation rules when loading to data warehouse level DSO, should identify and deal with error values.
    Possible Solution: Test validity of value within transformation routine via a custom function module.
    Execution: Function module would require to check lowercase character handling of target InfoObject (RSDCHABAS-LOWERCASE) and scan source value against permitted character set (RSKC).
    Questions: How can the permitted list of characters be returned within transformation routine? Is there an available delivered function module to handle accessing permitted character set?
    I would appreciate any answers to the above questions or alternative suggestions to the above strategy.
    Thanks -
    Brendan.

    There is a function module "RSKC_ALLOWED_CHAR_GET". Use SE37 to check it out.

  • Transformation routine used for GR as at posting date (0GR_VAL_PD KF)

    HI all,
              I have problem in 2lis_02_scl transformation Routine where i am not getting corect data for GR as at posting date (0GR_Val_pd) KF.
    Can anyone tell me what routine shall i try to use.
    Thanks n Regards,
    Gaurav Sekhri

    HI Gaurav,
    The code which you have given does not specify the desired result which you want. Also one more thing you have written a code as follows:
    IF ( SOURCE_FIELDS-PROCESSKEY = '002' or  "WE-Wert
    SOURCE_FIELDS-PROCESSKEY = '012' or
    SOURCE_FIELDS-PROCESSKEY = '022' )
    AND SOURCE_FIELDS-BWAPPLNM EQ 'MM'.
    RESULT = SOURCE_FIELDS-CPPVLC.
    endif.
    What is the above condition does not satisfy. you need to specify a RESULT if the above condition is not met like.
    IF ( SOURCE_FIELDS-PROCESSKEY = '002' or "WE-Wert
    SOURCE_FIELDS-PROCESSKEY = '012' or
    SOURCE_FIELDS-PROCESSKEY = '022' )
    AND SOURCE_FIELDS-BWAPPLNM EQ 'MM'.
    RESULT = SOURCE_FIELDS-CPPVLC.
    ELSE.
    REULT  = " Your desired result if condition is not met".
    endif.
    Hope it helps.
    Regards,
    Satyam

  • Transformation routine problem - changing 2 infoobjects in 1 routine

    Dear all,
    i have coded a transformation routine which gets data from 4 infoobjects and writes into 1 infoobject.
    routine is like that:
    startdate-starttime-enddate-endtime
    routine  converts data into :  time difference / 0calmonth
    however i need to update also 0calmonth with that routine? how can i do that?
    when i define a rule, i guess it always update only one infoobject?
    thanks in advance.

    Hi John,
    sure you can. It is the same procedure as in update rules, but a start routine will only work if all your required fields are contained in the communication structure and so in the infosource. Otherwise you need to stay with the second routine.
    regards
    Siggi

  • Error in Open Hub Transformation Routine

    Hi,
    I created an Open Hub Destination which has 67 fields.
    In the transformation, i am using 'routine' for one of the transformation rule.
    In the routine, the target field type is not defined automatically and I am not able to change it. When i save the routine, it gives me error: E:The field string "_TY_S_TG_1" contains no fields.
    Please help.
    Thanks,
    CH
    CLASS routine DEFINITION.
      PUBLIC SECTION.
        TYPES:
          BEGIN OF tys_SC_1,
         InfoObject: 0MATERIAL Product.
            MATERIAL           TYPE /BI0/OIMATERIAL,
          END   OF tys_SC_1.
        TYPES:
          <b><i>BEGIN OF tys_TG_1,
         Field: TXTLG.
          END   OF tys_TG_1.</i></b> 
          PRIVATE SECTION.
        TYPE-POOLS: rsd, rstr.

    Hi,
    In the transformation, have you connected that rule to any target field of your destination? If not, then do that and then try to create the routine.
    Regards,
    Vaibhav

  • Syntax error in Transformation routine

    Hi Folks,
    We are In SP 17.
    I have migrated standard 0bpartner_attr transfer rules to a transformation with syntax errors.
    I have a routine for a gender, Valid From and Valid To its giving the following erorr.
    E:Field "TRAN_STRUCTURE-VALID_FROM" is unknown. It is neither in one of
    the specified tables nor defined by a "DATA" statement. "DATA"
    statement.
    the following is the routine code for Gender.
    PROGRAM trans_routine.
          CLASS routine DEFINITION
    CLASS lcl_transform DEFINITION.
      PUBLIC SECTION.
    Attributs
        DATA:
          p_check_master_data_exist
                TYPE RSODSOCHECKONLY READ-ONLY,
    *-    Instance for getting request runtime attributs;
        Available information: Refer to methods of
        interface 'if_rsbk_request_admintab_view'
          p_r_request
                TYPE REF TO if_rsbk_request_admintab_view READ-ONLY.
      PRIVATE SECTION.
        TYPE-POOLS: rsd, rstr.
      Rule specific types
        TYPES:
          BEGIN OF tys_SC_1,
         Field: XSEXM Male.
            XSEXM           TYPE C LENGTH 1,
         Field: XSEXF Female.
            XSEXF           TYPE C LENGTH 1,
         Field: XSEXU Unknown.
            XSEXU           TYPE C LENGTH 1,
         Field: RECORD.
            RECORD           TYPE RSARECORD,
          END   OF tys_SC_1.
        TYPES:
          BEGIN OF tys_TG_1,
         InfoObject: 0GENDER Gender.
            GENDER           TYPE /BI0/OIGENDER,
          END   OF tys_TG_1.
    $$ begin of global - insert your declaration only below this line  -
    ... "insert your code here
    $$ end of global - insert your declaration only before this line   -
        METHODS
          compute_0GENDER
            IMPORTING
              request                  type rsrequest
              datapackid               type rsdatapid
              SOURCE_FIELDS              type tys_SC_1
            EXPORTING
              RESULT                   type tys_TG_1-GENDER
              monitor                  type rstr_ty_t_monitor
            RAISING
              cx_rsrout_abort
              cx_rsrout_skip_record
              cx_rsrout_skip_val.
        METHODS
          invert_0GENDER
            IMPORTING
              i_th_fields_outbound         TYPE rstran_t_field_inv
              i_r_selset_outbound          TYPE REF TO cl_rsmds_set
              i_is_main_selection          TYPE rs_bool
              i_r_selset_outbound_complete TYPE REF TO cl_rsmds_set
              i_r_universe_inbound         TYPE REF TO cl_rsmds_universe
            CHANGING
              c_th_fields_inbound          TYPE rstran_t_field_inv
              c_r_selset_inbound           TYPE REF TO cl_rsmds_set
              c_exact                      TYPE rs_bool.
    ENDCLASS.                    "routine DEFINITION
    $$ begin of 2nd part global - insert your code only below this line  *
    $$ end of rule type
        TYPES:
          BEGIN OF tys_TG_1_full,
         InfoObject: 0BPARTNER Business Partner.
            BPARTNER           TYPE /BI0/OIBPARTNER,
         InfoObject: 0BP_ACTITL1 First Academic Title.
            BP_ACTITL1           TYPE /BI0/OIBP_ACTITL1,
         InfoObject: 0BP_ACTITL2 Second Academic Title.
            BP_ACTITL2           TYPE /BI0/OIBP_ACTITL2,
         InfoObject: 0BP_BTHNAME BP: Person's Name at Birth.
            BP_BTHNAME           TYPE /BI0/OIBP_BTHNAME,
         InfoObject: 0BP_CAT Business Partner Category.
            BP_CAT           TYPE /BI0/OIBP_CAT,
         InfoObject: 0BP_CONS Business Partner (Consolidated/Cleansing).
            BP_CONS           TYPE /BI0/OIBP_CONS,
         InfoObject: 0BP_CONTACT BP: Contact Permission.
            BP_CONTACT           TYPE /BI0/OIBP_CONTACT,
         InfoObject: 0BP_EXTERN BP Number in External System.
            BP_EXTERN           TYPE /BI0/OIBP_EXTERN,
         InfoObject: 0BP_FSTNAME BP: Person's First Name.
            BP_FSTNAME           TYPE /BI0/OIBP_FSTNAME,
         InfoObject: 0BP_GROUP Business Partner Grouping.
            BP_GROUP           TYPE /BI0/OIBP_GROUP,
         InfoObject: 0BP_GRPNAM1 BP: Name 1 (Group).
            BP_GRPNAM1           TYPE /BI0/OIBP_GRPNAM1,
         InfoObject: 0BP_GRPNAM2 BP: Name 2 (Group).
            BP_GRPNAM2           TYPE /BI0/OIBP_GRPNAM2,
         InfoObject: 0BP_GRPTYPE BP: Group Type.
            BP_GRPTYPE           TYPE /BI0/OIBP_GRPTYPE,
         InfoObject: 0BP_LSTNAME BP: Person's Surname.
            BP_LSTNAME           TYPE /BI0/OIBP_LSTNAME,
         InfoObject: 0BP_MAR_STA BP: Marital Status.
            BP_MAR_STA           TYPE /BI0/OIBP_MAR_STA,
         InfoObject: 0BP_MDLNAME BP: Person's Middle Name or Second First
    *Name.
            BP_MDLNAME           TYPE /BI0/OIBP_MDLNAME,
         InfoObject: 0BP_SECNAME BP: Person's Second Surname.
            BP_SECNAME           TYPE /BI0/OIBP_SECNAME,
         InfoObject: 0CHANGEDBY Changed by.
            CHANGEDBY           TYPE /BI0/OICHANGEDBY,
         InfoObject: 0CH_AT Time of Last Change.
            CH_AT           TYPE /BI0/OICH_AT,
         InfoObject: 0CH_ON Last changed on.
            CH_ON           TYPE /BI0/OICH_ON,
         InfoObject: 0CREATEDBY Name of person who created the object.
            CREATEDBY           TYPE /BI0/OICREATEDBY,
         InfoObject: 0CREATEDON Date on which the record was created.
            CREATEDON           TYPE /BI0/OICREATEDON,
         InfoObject: 0CREA_TIME Time Created.
            CREA_TIME           TYPE /BI0/OICREA_TIME,
         InfoObject: 0GENDER Gender.
            GENDER           TYPE /BI0/OIGENDER,
         InfoObject: 0LEGALFORM Legal Status of Organization.
            LEGALFORM           TYPE /BI0/OILEGALFORM,
         InfoObject: 0NAME_ORG1 BP: Organization Name 1.
            NAME_ORG1           TYPE /BI0/OINAME_ORG1,
         InfoObject: 0NAME_ORG2 BP: Organization Name 2.
            NAME_ORG2           TYPE /BI0/OINAME_ORG2,
         InfoObject: 0NAME_ORG3 BP: Organization Name 3.
            NAME_ORG3           TYPE /BI0/OINAME_ORG3,
         InfoObject: 0NAME_ORG4 BP: Organization Name 4.
            NAME_ORG4           TYPE /BI0/OINAME_ORG4,
         InfoObject: 0NATION Nationality.
            NATION           TYPE /BI0/OINATION,
         InfoObject: 0TITLE_SPPL Name Supplement, for example, Noble Title
            TITLE_SPPL           TYPE /BI0/OITITLE_SPPL,
         InfoObject: 0BP_TYPE Partner:Partner Type.
            BP_TYPE           TYPE /BI0/OIBP_TYPE,
         InfoObject: 0GN_PAR_SSY Source System of a Partner.
            GN_PAR_SSY           TYPE /BI0/OIGN_PAR_SSY,
         InfoObject: 0LOGSYS Source System.
            LOGSYS           TYPE RSDLOGSYS,
         InfoObject: 0RECORDMODE BW Delta Process: Record Mode.
            RECORDMODE           TYPE RODMUPDMOD,
         InfoObject: 0BP_GUID GUID of Business Partner.
            BP_GUID           TYPE /BI0/OIBP_GUID,
         InfoObject: 0BPDATEFROM GP Attributes Valid from.
            BPDATEFROM           TYPE /BI0/OIBPDATEFROM,
         InfoObject: 0BPDATETO GP Attributes Valid to.
            BPDATETO           TYPE /BI0/OIBPDATETO,
         Field: RECORD Data record number.
            RECORD           TYPE RSARECORD,
          END   OF tys_TG_1_full.
    Additional declaration for transfer rule interface
      DATA:
        g_t_errorlog TYPE rssm_t_errorlog_int,
        RECORD_ALL   LIKE SY-TABIX.
    global definitions from transfer rules
    DATA: gs_cob_pro TYPE rsd_s_cob_pro,
          gt_viobj   TYPE rsd_t_viobj,
          gs_viobj   TYPE rsd_s_viobj.
    DATA:   l_s_errorlog TYPE rssm_s_errorlog_int,
            l_text TYPE string.
    FORM compute_BPDATEFROM
       CHANGING
        RESULT         TYPE tys_TG_1_full-BPDATEFROM
        RETURNCODE     LIKE sy-subrc
        ABORT          LIKE sy-subrc
      RAISING
        cx_sy_arithmetic_error
        cx_sy_conversion_error.
      INCLUDE rs_bct_bupa_form_valid_from.
    ENDFORM.                    "BPDATEFROM
    FORM compute_BPDATETO
       CHANGING
        RESULT         TYPE tys_TG_1_full-BPDATETO
        RETURNCODE     LIKE sy-subrc
        ABORT          LIKE sy-subrc
      RAISING
        cx_sy_arithmetic_error
        cx_sy_conversion_error.
      INCLUDE rs_bct_bupa_form_valid_to.
    ENDFORM.                    "BPDATETO
    FORM compute_GENDER
       CHANGING
        RESULT         TYPE tys_TG_1_full-GENDER
        RETURNCODE     LIKE sy-subrc
        ABORT          LIKE sy-subrc
      RAISING
        cx_sy_arithmetic_error
        cx_sy_conversion_error.
    INCLUDE rs_bct_bupa_form_gender.
    ENDFORM.                    "GENDER
    FORM compute_GN_PAR_SSY
       CHANGING
        RESULT         TYPE tys_TG_1_full-GN_PAR_SSY
        RETURNCODE     LIKE sy-subrc
        ABORT          LIKE sy-subrc
      RAISING
        cx_sy_arithmetic_error
        cx_sy_conversion_error.
    INCLUDE rs_bct_bupa_form_gn_par_ssy.
    ENDFORM.                    "GN_PAR_SSY
    $$ end of 2nd part global - insert your code only before this line   *
          CLASS routine IMPLEMENTATION
    CLASS lcl_transform IMPLEMENTATION.
      METHOD compute_0GENDER.
      IMPORTING
        request     type rsrequest
        datapackid  type rsdatapid
        SOURCE_FIELDS-XSEXM TYPE C LENGTH 000001
        SOURCE_FIELDS-XSEXF TYPE C LENGTH 000001
        SOURCE_FIELDS-XSEXU TYPE C LENGTH 000001
       EXPORTING
         RESULT type tys_TG_1-GENDER
        DATA:
          MONITOR_REC    TYPE rsmonitor.
    *$*$ begin of routine - insert your code only below this line        *-*
      Data:
        l_s_error_log    type rssm_s_errorlog_int,
        l_subrc          type sy-tabix,
        l_abort          type sy-tabix,
        ls_monitor       TYPE rsmonitor,
        ls_monitor_recno TYPE rsmonitors.
    REFRESH:
      monitor,
      monitor_recno.
    Migrated transfer rule call
      Perform compute_GENDER
        CHANGING
          RESULT
          l_subrc
          l_abort.
    *-- Convert Messages in Transformation format
        LOOP AT G_T_ERRORLOG INTO l_s_error_log.
          move-CORRESPONDING l_s_error_log to MONITOR_REC.
          append monitor_rec to MONITOR.
        ENDLOOP.
        IF l_subrc <> 0.
          RAISE EXCEPTION TYPE cx_rsrout_skip_val.
        ENDIF.
        IF l_abort <> 0.
          RAISE EXCEPTION TYPE CX_RSROUT_ABORT.
        ENDIF.
    $$ end of routine - insert your code only before this line         -
      ENDMETHOD.                    "compute_0GENDER
          Method invert_0GENDER
          This subroutine needs to be implemented only for direct access
          (for better performance) and for the Report/Report Interface
          (drill through).
          The inverse routine should transform a projection and
          a selection for the target to a projection and a selection
          for the source, respectively.
          If the implementation remains empty all fields are filled and
          all values are selected.
      METHOD invert_0GENDER.
    $$ begin of inverse routine - insert your code only below this line-
    ... "insert your code here
    $$ end of inverse routine - insert your code only before this line -
      ENDMETHOD.                    "invert_0GENDER
    ENDCLASS.                    "routine IMPLEMENTATION
    let me know how to correct the above code.
    thanks

    Hi,
    the field tran_structure is no more available. The name changed to source_fields. Additionally there is no datapak available. It is now source_fields_table. You might need to use field symbols to access the fields.
    regards
    Siggi

  • Help with Transformation routine

    Hi,
    I have a transformation routine from a DSO to a cube. The DSO contains two infoobjects ( Form, Brand ) which are mapped to infoobject Material in the cube. My requirement is that i need to populate the material number based on the brand and form available in the DSO. Can you please help me with the routine to be written for material ?
    Regards
    Snehith.

    Hi,
    perform below steps in start routine .
    create one internal  as t_material having 3 fields
    and then write select query as :
    SELECT material
               brand
              form
         FROM /BIC/PGPUMATL
         INTO TABLE t_material
          FOR ALL ENTRIES IN SOURCE_PACKAGE
        WHERE brand EQ SOURCE_PACKAGE-brand
      form EQ SOURCE_PACKAGE-  form
    In transformation routine of material:
    write below logic :
    FIELD-SYMBOLS  :<fs_ t_material >    TYPE y_ t_material .
    *" Get material class value from table /bic/agpud009900
        READ TABLE  t_material
          ASSIGNING <fs_ t_material >
          WITH KEY brand = SOURCE_FIELDS-brand
                             form = SOURCE_FIELDS- form
        IF  sy-subrc EQ 0
        AND <fs_ t_material >  IS ASSIGNED.
          MOVE <fs_ t_material >material  TO RESULT.
        ENDIF.
    Hope this helps you
    Thanks .

  • End routine for Currency conversion

    Hi,
    I have a requirement in which i have to convert sales and cost into three types of currency as GBP, INR and EUR in cube. i made 3 different fields for sales as well as for cost. But i am unable to write end routine for it.
    Can anyone please help me that how can i solve this problem.
    Roma

    Hi,
    In transformation itself you can do your currency conversion.
    http://help.sap.com/saphelp_nw70/helpdata/en/de/6372426f0f9041e10000000a1550b0/content.htm
    If you want to write a routine in to do conversion, you have to go for start routine instead of end routine.
    Thanks
    BVR

  • Routine for multiple selection in infopackage???

    hello guys
    I thought of creating one routine for Multiple selections aT Infopackage level....in Selections screen in infopackage,I found one option 'Use Conversion routine' with a check box and it is inactive.....Is it here I need to write my routine inorder to get multiple selection for a infoobject....or is it somehwhere else?How to activate thisoption?
    Thanks,
    Regards,
    S

    Hi,
    Conversion routines are used in the BI system so that the characteristic values (key) of an InfoObject can be displayed or used in a different format to how they are stored in the database. They can also be stored in the database in a different format to how they are in their original form, and supposedly different values can be consolidated into one.
    This will be there at info object level.
    Eg : ALPHA: Fills purely numeric fields from the left with zeroes (0).
    For multiple selections at info package , in data selection tab under type , u need to select 6 and write the code to select the value.When info package runs it takes the value from routine dynamically and extracts the data based on selection.
    Eg: There is a field FISCAL PERIOD For data selection, if u write the code to select current fiscal period. then whenever info package runs it extracts the data for current fiscal period from data source to PSA.
    Thanks,
    Joseph.

  • How to Delete the Junk data in Transformation Routines

    Hi,
    I had scenario like infoobject for 0CUSTOMER master data is bringing the values
    C123456_RECEIPTS.
    C12345_RECEIPTS.
    So when i extract the data from R/3 for this 0CUSTOMER master data it is bringing the SOME JUNK DATA
    I would require delete the C12345_RECIEPTS it should allow only C123456_RECIEPTS.
    I have to do in the routines for the deletion of this.
    Requesting send some sample code on how to delete it the BI 7.

    Hello,
    If the data is like after every C5* or C6* there is an underscroll sign (_), then below code will work in start routine:
    Data: wa_source_package like line of source_package,
              itab_sp type standard table of tys_SC_1,
              a(6) type c,
              b(10) type c.
    loop at source_package into wa_source_package.
       split wa_source_package at '_' into a and b.
       if strlen( a ) = 7.
          append wa_source_package to itab_sp.
       endif.
    endloop.
    refresh source_package.
    source_package = itab_sp.
    Regards,
    Shashank

Maybe you are looking for

  • TO mobileme or not to mobileme

    Hello All, Just wanted to take a guidance from you all which I am sure is a frequently asked question. I have been really impressed by the Iweb functionality but I wanted to understand once I want to post the content whether it is worth posting this

  • Cross Business Group approval

    Hi, I have a situation. In BG-1 there an employee record BG - 1: Mr. X In BG -2: Mr. A Mr. b Mr. C Mr. in BG-1 is a manager of MR, A,B and in in BG-2. if MR A, B and C send any request using Employee Self Service. Will these request goes to Mr.X whos

  • Closing/ending a session in jsp

    Hi guys i need help ending my session. I am using session just for parameter passing, my webpages doesnt need login logout function. These are my basic code: page1.jsp <% String prodlinesel = request.getParameter("prod_line"); session.setAttribute( "

  • _droptarget

    Hi guys, I am just wanting to know how to do, hopefully something simple. I have a logo which I can drag around the screen. When I drop this logo over a particular area I call a fuction to run. This works perfect except the fact it doesnt work, if th

  • Question re deleting OS X

    Hi there I know this may seem a little weird on an Apple forum, but I have just got a Macbook and have installed vista on a 50GB partition as I really need Vista (got the Macbook cheap as x display) to run my sage software and really cant get to grip