Skip to Content

7 Comments

You must be Logged on to comment or reply to a post.

  1. Kenneth Murray
    Great information!  Thanks for passing this on.

    Do you know if there is any SAP Documentation anywhere that might mention some of this kind of detail?  Or how did you pick up on what was available?

    (0) 
    1. Shlomi Weiss Post author
      Hi Kenneth,

      Thanks for your reply.

      I couldn’t find any SAP standard documentation on the subject.
      I searched Google and SDN and came across Michael Hoerisch’s blog which was very useful to start with, and I kept digging afterwards.

      Shlomi

      (0) 
      1. Kenneth Murray
        Thanks for the info!  Great that they have this functionality.  They should really expose it as part of the documentation instead of burying it away in a tiny OSS Note.  Thanks again!
        (0) 
  2. Stan Shuralyov
    Great information. Thanks.
    You can create several DTPs for the same transformation and use this functionality to code different transformation scenario based on a specific DTP you are running. You can even have a dynamic ABAP running based on a specific DTP. Great stuff! 
    (0) 
  3. Shay Lemberger
    Hello Shlomo,

    The same method can be implemented on infopackage when you want to load data from the source system in addition to an existing delta or in case a delta mechanism cannot be created.

    For example: A daily load of data from a DS based on values (in this  case a “0” or “1” boolean in an existing BW DSO ). In this case the range selection (“6” in Data selection Tab) in the infopackage page.

    When executing the infopackage, an internal table stores all records with “1” in DSO and they will be sent to source system for loading the appropriate records.

    Tha advantage in using this method is that the control DSO  can be manipulated for your needs on daily basis.

    In the sample below the control DSO is :/BIC/AZIS_CONT00

    The Code:

    data: l_idx like sy-tabix,
          lv_claim type /BIC/AZIS_CONT00-IS_CLAIM,
          it_claim TYPE STANDARD TABLE OF /BIC/AZIS_CONT00,
          wa_claim LIKE LINE OF it_claim,
          g_msg TYPE string.

    read table l_t_range with key
         fieldname = ‘CLAIM’.

    CLEAR l_t_range[].

    SELECT IS_CLAIM FROM /BIC/AZIS_CONT00 INTO TABLE it_claim
    where /BIC/ZCM_FLAG = ‘1’.

    IF sy-subrc = 0.
      LOOP AT it_claim INTO wa_claim.
      l_t_range-sign = ‘I’.
      l_t_range-option = ‘EQ’.
      l_t_range-low = wa_claim-IS_CLAIM.
      APPEND l_t_range.
    * (Populating filter list)

      ENDLOOP.
    ELSE.

    g_msg = ‘No Claims Found’.
    MESSAGE g_msg TYPE ‘E’.

    endif.

    l_idx = sy-tabix.
    *….
    *modify l_t_range index l_idx.

    p_subrc = 0.

    Shay Lemberger

    (0) 

Leave a Reply