Read source system in start routine for BW 7.0

Dear all,
how can I tread a source system in the start routine in BW 7.x?
The input parameter "SOURCE_SYSTEM LIKE RSUPDSIMULH-LOGSYS" has been available in 3.x but no more available in 7.x
Any ideas ?
Thanks
IFR

Hi,
use method p_r_request->get_logsys( ).
regards
Siggi

Similar Messages

  • Start routine for  Update Rules

    I need to write a start routine for the update rules for an DSO with main idea as follows:
    I must compare the record that comes from the infopackage with the record that's already in my DSO. If the X date for the same 0PM_ORDER is the same as one in my DSO - do nothing
    If the X date is previous to the X date in my DSO for the same 0PM_ORDER - the new record must be created and at the same time all the records with subsequent(later) X dates for this 0PM_ORDER must be deleted.
    If the X date is later than the X date in my DSO for the same 0PM_ORDER - the new record must be created.

    Hi,
    Find the below code.
    DATA: BEGIN OF ITAB1,
    ZDATE TYPE /BIC/DATE
    END OF ITAB1.
    SELECT zdate FROM /BI0/QEMPLOYEE INTO corresponding
    fields
    of ITAB1 where employee = SOURCE_FIELDS-EMPLOYEE.
    IF ITAB1-ZDATE COMMUNICATE_STRUCT-DATE
    RESULT = ITAB1-CLM_IPAA.
    ENDIF.
    ENDSELECT.
    There will be an table for each DSO if you go for an manage DSO you will get three table i.e New,Active and Change Log take Active tables date field and compare with the communication structure that comes to routine.
    The above example is just an example table will be different from DSO to DSO.
    Let me know your thoghts.
    Regards,
    Shivu.

  • Start routine for insert a record by each day in a range of dates

    Hi all,
    I need create a start routine for insert 1 record by each day in a range of dates:
    example:
    Actual.
    DATE_I             DATE_F          TIME_I       TIME_F      TIME_minutes
    04/04/2008       05/04/2008     13:40:00     23:00:00        2000
    Result:
    DATE_I             DATE_F          TIME_I       TIME_F      TIME_minutes
    04/04/2008       04/04/2008     13:40:00     24:00:00        X
    05/04/2008       05/04/2008     00:00:00     23:00:00        Y
    I thanks any help.
    regards.
    Alberto.

    Hi Alberto,
    What I understood from your requirement is that you want to split the record into 2 since you have 2 dates coming from the source.
    In the transformations you will have to create new rule group one for each of the dates.
    You can create the new rule group by clicking on the 'Rule Group' button and then clicking on the 'New Rule Group'.
    In the newly created rule groups take care to distribute data for each date separately.
    Hope it is clear.
    All the best...
    Regards,
    Krishna

  • Start Routine for transfer rules

    Hello experts,
    I want to use the SQL DISTINCT keyword to return non-duplicate results from a table in a DataSource (data base) in a the start routine for the transfer rules.
    How do I address that table in the start routine of the TR?
    I thought about something like that.
    TABLES: mytable
    DATA: itab_mytable type table of mytable
    SELECT DISTINCT CUSTID, etc.
    FROM mytable into table i_tab.
    I am new to ABAP so I would be happy to get some suggestions!
    thanx in advance
    Axel

    Hello Oscar,
    as fa as I understood the entire data package in the transfer structure format is used as parameter (DATAPAK) for the routine.
    so I want to perform a SQL statement on DATAPAK!
    But it sais it can't find DATAPAK in ABAP-Dictionary as a table!
    can I actually perform SQL statements on DATAPAK?
    Thanx
    Axel

  • Start routine for base unit

    hi friends
    i need to give a start routine  for my baseunit.
    i need my baseunit always EA,
    i get the data from the flat file , so what ever the unit they mention there in the flat file if it is not equal to 'EA',  then it should take it as EA.
    i gave code like this
    IF COMM_STRUCTURE-0BASE_UOM NE ‘EA’
    APPEND 'EA'
    then i got this error
    E:Field "COMM_STRUCTURE-0BASE_UOM" is unknown. It is neither in one of
    the specified tables nor defined by a "DATA" statement. "DATA" statement.

    Hi Sampath,
    Can you try this and let me know if it works...
    loop at data_package.
    if data_package-base_uom <> 'EA'.
    data_package-base_uom = 'EA'.
    modify data_package.
    endif.
    endloop.
    Cheers,
    Praveen.
    Message was edited by:
            Praveen Mathew

  • Start routine for baseunit

    hi friends
    i need to give a start routine for my baseunit.
    i need my baseunit always EA,
    i get the data from the flat file , so what ever the unit they mention there in the flat file if it is not equal to 'EA', then it should take it as EA.
    i gave code like this
    IF DATA-PAKAGE_STRUCTURE-0BASE_UOM NE ‘EA’
    APPEND 'EA'
    then i got this error
    E:Field "DATA-PAKAGE-0BASE_UOM" is unknown. It is neither in one of
    the specified tables nor defined by a "DATA" statement. "DATA" statement.

    Hi Sampath,
    Can you try this and let me know if it works...
    loop at data_package.
    if data_package-base_uom <> 'EA'.
    data_package-base_uom = 'EA'.
    modify data_package.
    endif.
    endloop.
    Cheers,
    Praveen.
    Message was edited by:
            Praveen Mathew

  • How do you identify the Logical system in start routine of a transformation

    My scenario is this.  I have five r3 systems that I am extracting from.   In the start routine of the transformation from the r3 data source to my data store I  am going to delete data and I need to know the source system id.    How do I identify the logical system or source system id in the transformation.  Is there a system field that contains this information.    I do not want to hard code the source system id in the routine.

    hi
    have a lool at tables rsreqdone and rsbkrequest with a join you should be able to determine the source.
    regards
    Boujema
    How to give points: Mark your thread as a question while creating it. In the answers you get, you can assign the points by clicking on the stars to the left. You also get a point yourself for rewarding (one per thread).
    Edited by: Boujema Bouhazama on May 9, 2008 12:04 AM

  • ABAP Code in Start Routine for restricing the data records from ODS1 - ODS2

    Hi
    I need small ABAP Code in Start Routine Of Update rules Of ODS . Im in BW 3.5 .
    I have records like below in first layer ODS and i want to restrict some records while going to second layer ODS ..
    ODS1 :-
    DocNO   EventType    Date
    123         001             08/08/2008
    123         003             08/08/2008
    123         011              09/08/2008
    I want one record in ODS2 for this document number whose EventType = 001 only and date of third record ... like below
    Doc NO     EventType      From Date          Todate
    123              001               08/08/2008         09/08/2008
    So how can i get like this record in the ODS2 which will get data from ODS1 . So i need to write the code in the start routine of the ODS2 .
    So please give the me the code for start routine ....
    Regards
    Suresh

    Its difficult in BW 3.5 to include this logic in START_ROUTINE as you cannot add the extra to_date field to the DATA_PACKAGE table.
    You need to create a new global internal table with the same structure of DATA_PACKAGE with additional field to_date. then use the logic to fill in the global internal table
    define a internal table new_data_package with the required structure like (docno, eventtype, fromdate todate)
    data: l_w_datapkg_001 type data_package,
    data: l_w_newdatapkg type new_data_package,
    data: l_w_datapkg_011 type data_package
    LOOP AT DATA_PACKAGE INTO l_w_datapkg_001 WHERE event_type = '001'.
    l_w_newdatapkg-docno = l_w_datapkg_001-docno.
    l_w_newdatapkg-event_type = l_w_datapkg_001-event_type.
    l_w_newdatapkg-fromdate = l_w_datapkg_001-date.
    MOVE CORRESPONDING FIELDS OF l_w_datapkg_001 INTO l_w_newdatapkg.
    READ TABLE data_package INTO l_w_datapkg_011
    WITH KEY docno = l_w_datapkg_001-docno
                     event_type = '011'.
    l_w_newdatapkg-to_date = l_w_datapkg_011-date.
    APPEND l_w_newdatapkg TO new_data_package          
    ENDLOOP.
    Now the new datapackage contains the ODS2 data that u needed

  • How to use Start Routine for this requirement

    Hello,
    I am having data in 2 ods and should load that data into cube, but there isn't any common object in both the ods's. I need to analyze based on these ods objects. so I thought of pulling some objects into 1ods which are used for analysis and added some objects to ods and cube. Now I have to write a start routine in update rules to fetch the data from the info objects which are present in another ods. Can any one help me in this?
    Rajesh.

    Hi Surya,
    Extract all info from table BKPF
    select * into it_bkpf
    from bkpf
    where gjahr = p_fisyr.
    Select record based on internal table it_BKPF
    The reason why FOR ALL ENTRIES syntax is used because of its cluster table.
    select * into it_bseg
    from bseg
    for all entries in it_bkpf
    where bukrs = it_bkpf-bukrs
    and belnr = it_bkpf-belnr.
    Delete duplicate record based on Company Code and GL No.
    delete adjacent duplicates from it_bseg
         comparing bukrs belnr.

  • How to debug start routine for the custom code?

    Hi Experts,
    Can anybody tell me how to debug the start routine? Also could you please guide me where to write the custom code in the start routine.
    Thanks in advance.
    Sharat.

    Rajkumar,
    Thank you for your help. but the blog link that you send it to me does not mention anything about ABAP debugger screen.
    What should I do once I get in to the ABAP debugger? the link only tells how to get to the ABAP debugger that I know.
    Also it say that I have to use the infinite loop to debugg the start routine.
    Can anybody tell me how to debugg start routine with the scren shots please. I don't know how to use infinite loop in the start routine. Is their any easy process step by step to see my particular record behavior in the start routine?
    I will assing you the points. again thank you.

  • Why should the source system config be open for restore?

    Good day everyone,
    Every time I do source system restore, I have to open the IMG in the source system. Could someone please explain or provide me with an SAP link that explains the necessity for this step. It is causing me a lot of troubles in production systems.
    Thanks.

    Thanks for your response.
    Funny thing though my has not ran that hot.
    Wither watching Videos or play a game like Fallout 3 everything on the laptop is always cool to my touch on the top.
    Except sometimes by the vent where the fan and exchaust are it maybe lukewarm, I've had other laptops run much hotter.
    But Thanks for the input, I think I'll go ahead and turn it back on though.
    Better Safe then Sorry....

  • Can't get Source System to come up for BBPGETVD

    Hi Guys,
    i can't get the source syst. visible in tx: bbpgetvd.
    i have maintained the ERP system in table BBP_BACKEND_DEST with the following:
    client: 010
    log_sys: FD0CLNT903
    dest: FDoCLNT903
    sys_type: ERP_2.0
    rfc_poss: X
    fi_validation: 2
    also table RFCDES has the entry for the RFC destination of the ERP system.
    Any ideas where did I missed something?
    10x in advance!
    Catalin

    make sure that you have maintained the SPRO setting for "definition of Back-End systems in SAP-SRM" inside the node SRM SERVER->technical basic settings->define system landscape
    here, logsys, description, rfc name, description, sys type, flag for rfc,  SDL name etc etc
    the search help used in bbpgetvd is BBP_BACKEND_DESTINATION_F4 and FM BBP_F4IF_SHLP_EXIT_BACKEND_DES.
    and the code used to pick the fields is below
    SELECT A~DEST A~LOG_SYS B~LOG_DESCRIPTION A~SYS_TYPE
             INTO TABLE LT_SYSTEMS
             FROM BBP_BACKEND_DEST AS A INNER JOIN BBP_BACKEND_TEXT AS B
                  ON B~LOG_SYS = A~LOG_SYS
                  INNER JOIN RFCDES AS C
                        ON C~RFCDEST = A~DEST
             WHERE A~SYS_TYPE IN LR_SYSTEM_TYPE
             AND   A~RFC_POSS = 'X'
             AND   B~SPRAS    = SY-LANGU
             AND   C~RFCTYPE  = LC_RFCTYPE_R3.
    so what you can check in you system are:
    1. system type of you ECC is kept as a R3*** or ERP****
    2.  RFC_POSS thats nothing but the flag(checkbox) in the config table for RFC
    hope this will solve your problem
    yes, prior to that you need to make sure that the logical systems and RFCs are configured properly or not..

  • Start Routine to populate the Logical Source System

    Hi Friends please help me with the below
    1. <b>Requirement</b> : to Populate The system Date , Source System
    in BI for Each load request.
    <b>
    1 Solution:</b> I thought of writing the Start Routine for this but it is giving me error
    syntax Error: END METHOD MISSING?????
    2. Also I have requirement to populate 0sourcsys source system id, can any body help how to populate that.
    Thanks
    Poonam Roy
    <b>ABAP Code.</b>
    I have the End Method. what more to do.
      METHOD start_routine.
    *=== Segments ===
        FIELD-SYMBOLS:
          <SOURCE_FIELDS>    TYPE tys_SC_1.
        DATA:
          MONITOR_REC     TYPE rstmonitor.
    <b>
    $$ begin of routine - insert your code only below this line        -</b>
    ... "insert your code here
    <b>
    FORM STARTROUTINE
    USING G_S_MINFO TYPE RSSM_S_MINFO
    CHANGING DATAPAK type TRANSTRU
    ABORT LIKE SY-SUBRC.
    DATA: ZLOAD_DAT LIKE SY-DATUM
    ZZSOURSYS TYPE RSLOGSYS
    IF G_S_MINFO-DATAPAKID=1
    SOURCE_FIELDS-ZLOAD_DAT = SY-DATE.
    SOURCE_FIELDS-ZZSOURSYS = G_S_MINFO-LOGSYS.
    ENDIF.
    ABORT = 0.
    ENDFORM.
    ENDMETHOD.
    ENDCLASS</b>.
    *--  fill table "MONITOR" with values of structure "MONITOR_REC"
    *-   to make monitor entries
    ... "to cancel the update process
       raise exception type CX_RSROUT_ABORT.
    $$ end of routine - insert your code only before this line         -
      ENDMETHOD.

    Hi,
    Check whether the formula is useful here than Routine. Because you can see the Sy-datum , source system( I Guess) fields as avaialable formula elements .
    With rgds,
    Anil Kumar Sharma .P

  • Start routine to check for BUDAT in 2LIS_02_SCL

    HI,
    I'm pulling data from 2lis_02_scl and 2lis_02_acc datasources into an ODS. I want to write a start routine that will check if there is any value for BUDAT field (posting date) in the 2lis_02_scl datasource. I want to get data into the ODS only if this field is filled.
    I want to write a start routine for it, but don't have any experience in ABAP.
    Would anyone guide me in writing this routine?
    Regards,
    Sam

    Hi,
    After looking around, i found that the solution is pretty simple.
    All I had to do was to write a single line in the start routine.
    DELETE DATA_PACKAGE WHERE PSTNG_DATE = 0.
    0PSTNG_DATE is the object that is linked to BUDAT in the transfer rules.
    Sam

  • Multiple R/3 Source systems for BW(3.5)

    Hi,
       A BW system being linked with multiple R/3 source systems , is a very common scenario. But could someone please help me out with a strategy doc / how -to etc. on the best possible way to install business content for multiple R/3 sources .
    thanks

    Hi Shurobhi,
    This is a common scenario. there is not much difference between single source system and multiple source systems.
    If you have data coming from 3 source systems you dont need to create 3 cubes and update seperately. you can update 3 source systems data into one single cube. For Example: FI AP Line Item data : You have source systems 1 2 and 3. you can use standard business content ODS  and Cube to update FI AP data. Here first, init for source system 1 followed by delta for source system 1, then init for source system 2 followed by delta 2, finally init for 3 followed by delta 3. From here on you can load data to info cube in the above layer.
    Thanks
    Praveen

Maybe you are looking for