Generic Extraction with delta

Hi Every one,
I use an extractor based on a function module which is copy of the RSAX_BIW_GET_DATA_SIMPLE and gets delta records.
I have  a doubt of how the communication happens between BW and R/3 when delta info package is ran inorder to get delta records.
Can any one explain how this FM RSAX_BIW_GET_DATA_SIMPLE works ie., the input parameters,usage of static var, Cursors etc?
FUNCTION RSAX_BIW_GET_DATA_SIMPLE.
""Lokale Schnittstelle:
*"  IMPORTING
*"     VALUE(I_REQUNR) TYPE  SRSC_S_IF_SIMPLE-REQUNR
*"     VALUE(I_DSOURCE) TYPE  SRSC_S_IF_SIMPLE-DSOURCE OPTIONAL
*"     VALUE(I_MAXSIZE) TYPE  SRSC_S_IF_SIMPLE-MAXSIZE OPTIONAL
*"     VALUE(I_INITFLAG) TYPE  SRSC_S_IF_SIMPLE-INITFLAG OPTIONAL
*"     VALUE(I_READ_ONLY) TYPE  SRSC_S_IF_SIMPLE-READONLY OPTIONAL
*"     VALUE(I_REMOTE_CALL) TYPE  SBIWA_FLAG DEFAULT SBIWA_C_FLAG_OFF
*"  TABLES
*"      I_T_SELECT TYPE  SRSC_S_IF_SIMPLE-T_SELECT OPTIONAL
*"      I_T_FIELDS TYPE  SRSC_S_IF_SIMPLE-T_FIELDS OPTIONAL
*"      E_T_DATA STRUCTURE  SFLIGHT OPTIONAL
*"  EXCEPTIONS
*"      NO_MORE_DATA
*"      ERROR_PASSED_TO_MESS_HANDLER
Example: DataSource for table SFLIGHT
  TABLES: SFLIGHT.
Auxiliary Selection criteria structure
  DATA: L_S_SELECT TYPE SRSC_S_SELECT.
Maximum number of lines for DB table
  STATICS: S_S_IF TYPE SRSC_S_IF_SIMPLE,
counter
          S_COUNTER_DATAPAKID LIKE SY-TABIX,
cursor
          S_CURSOR TYPE CURSOR.
Select ranges
  RANGES: L_R_CARRID  FOR SFLIGHT-CARRID,
          L_R_CONNID  FOR SFLIGHT-CONNID.
Initialization mode (first call by SAPI) or data transfer mode
(following calls) ?
  IF I_INITFLAG = SBIWA_C_FLAG_ON.
Initialization: check input parameters
                buffer input parameters
                prepare data selection
Check DataSource validity
    CASE I_DSOURCE.
      WHEN '0SAPI_SFLIGHT_SIMPLE'.
      WHEN OTHERS.
        IF 1 = 2. MESSAGE E009(R3). ENDIF.
this is a typical log call. Please write every error message like this
        LOG_WRITE 'E'                  "message type
                  'R3'                 "message class
                  '009'                "message number
                  I_DSOURCE   "message variable 1
                  ' '.                 "message variable 2
        RAISE ERROR_PASSED_TO_MESS_HANDLER.
    ENDCASE.
    APPEND LINES OF I_T_SELECT TO S_S_IF-T_SELECT.
Fill parameter buffer for data extraction calls
    S_S_IF-REQUNR    = I_REQUNR.
    S_S_IF-DSOURCE = I_DSOURCE.
    S_S_IF-MAXSIZE   = I_MAXSIZE.
Fill field list table for an optimized select statement
(in case that there is no 1:1 relation between InfoSource fields
and database table fields this may be far from beeing trivial)
    APPEND LINES OF I_T_FIELDS TO S_S_IF-T_FIELDS.
  ELSE.                 "Initialization mode or data extraction ?
Data transfer: First Call      OPEN CURSOR + FETCH
               Following Calls FETCH only
First data package -> OPEN CURSOR
    IF S_COUNTER_DATAPAKID = 0.
Fill range tables BW will only pass down simple selection criteria
of the type SIGN = 'I' and OPTION = 'EQ' or OPTION = 'BT'.
      LOOP AT S_S_IF-T_SELECT INTO L_S_SELECT WHERE FIELDNM = 'CARRID'.
        MOVE-CORRESPONDING L_S_SELECT TO L_R_CARRID.
        APPEND L_R_CARRID.
      ENDLOOP.
      LOOP AT S_S_IF-T_SELECT INTO L_S_SELECT WHERE FIELDNM = 'CONNID'.
        MOVE-CORRESPONDING L_S_SELECT TO L_R_CONNID.
        APPEND L_R_CONNID.
      ENDLOOP.
Determine number of database records to be read per FETCH statement
from input parameter I_MAXSIZE. If there is a one to one relation
between DataSource table lines and database entries, this is trivial.
In other cases, it may be impossible and some estimated value has to
be determined.
      OPEN CURSOR WITH HOLD S_CURSOR FOR
      SELECT (S_S_IF-T_FIELDS) FROM SFLIGHT
                               WHERE CARRID  IN L_R_CARRID AND
                                     CONNID  IN L_R_CONNID.
    ENDIF.                             "First data package ?
Fetch records into interface table.
  named E_T_'Name of extract structure'.
    FETCH NEXT CURSOR S_CURSOR
               APPENDING CORRESPONDING FIELDS
               OF TABLE E_T_DATA
               PACKAGE SIZE S_S_IF-MAXSIZE.
    IF SY-SUBRC <> 0.
      CLOSE CURSOR S_CURSOR.
      RAISE NO_MORE_DATA.
    ENDIF.
    S_COUNTER_DATAPAKID = S_COUNTER_DATAPAKID + 1.
  ENDIF.              "Initialization mode or data extraction ?
ENDFUNCTION.
Also how the delta queue  is loaded in rsa7 when the delta records made?
When the delta info package is ran, the delta queue in rsa7 is changed to '0'.How is that communication made in between them?
Please clear my doubts?
Regards,
Pra

Hi Suneel,
You can load delta to write optimized DSO. Your Data source will have delta load (through infopackage) and then with DTP (with Extraction Mehtod --> Delta) you can load delta records to this write optimized DSO. So only the new requests, which are not loaded yet will be loaded to WO-DSO. I tried it in system and it works.
They can be used in the following scenarios:
●      You use a write-optimized DataStore object as a temporary storage area for large sets of data if you are executing complex transformations for this data before it is written to the DataStore object. The data can then be updated to further (smaller) InfoProviders. You only have to create the complex transformations once for all data.
●      You use write-optimized DataStore objects as the EDW layer for saving data. Business rules are only applied when the data is updated to additional InfoProviders.
it is used when you don't want to wait for DSO activation and error troubleshooting. It will make raportable data available instantly.
Hope it helps...
Regards,
Ashish
Edited by: Ashish Tewari on May 6, 2009 1:33 PM

Similar Messages

  • Generice extracttion with delta

    if we do generic extraction with delta in which table luws will be stored

    LUW's for generic delta can be monitored in RSA7.
    BW Delta queue is based on queue functions in the RFC technology for SAP Web Application servers (qRFC). The data is stored in the following 3 tables:
    1. TRFCQOUT (Client Dependent pointer table per queue name and destination.
    2. ARFCSSTATE: Likn between TRFCQOUT and ARFCSDARA
    3. ARFCSDATA: Compressed data for tRFC/qRFC
    refer following: http://help.sap.com/saphelp_nw04/helpdata/en/6f/66bca6ae43744283d74f1e456ff6c0/content.htm for delta queue maintenance.

  • Generic Datasource with Delta and functionmodule

    Hi together,
    who can help me ??
    Ihave created a generic datasource with function module and
    delta.
    the extractor runs well while i use full update and also initialization.
    If i start the delta extraction, the extractor crashed with short-dump.
    the message is SAPSQL_INVALID_FIELDNAME
    What can i do, and what is wrong.
    regards
    thorsten Weiss

    Hi Roberto,
    here is the code from the function-module:
    FUNCTION zbw_mm_get_eket.
    ""Lokale Schnittstelle:
    *"  IMPORTING
    *"     VALUE(I_REQUNR) TYPE  SBIWA_S_INTERFACE-REQUNR
    *"     VALUE(I_DSOURCE) TYPE  SBIWA_S_INTERFACE-ISOURCE OPTIONAL
    *"     VALUE(I_MAXSIZE) TYPE  SBIWA_S_INTERFACE-MAXSIZE DEFAULT 1000
    *"     VALUE(I_INITFLAG) TYPE  SBIWA_S_INTERFACE-INITFLAG OPTIONAL
    *"     VALUE(I_READ_ONLY) TYPE  SBIW_BOOL DEFAULT SBIW_C_FALSE
    *"  TABLES
    *"      I_T_SELECT TYPE  SBIWA_T_SELECT OPTIONAL
    *"      I_T_FIELDS TYPE  SBIWA_T_FIELDS OPTIONAL
    *"      E_T_DATA OPTIONAL
    *"  EXCEPTIONS
    *"      NO_MORE_DATA
    *"      ERROR_PASSED_TO_MESS_HANDLER
      INCLUDE lrsalk01.
    DataSource for table EKET
      TABLES: zv_mm_eket.
    interne Tabelle für Bearbeitung
      DATA:   itab_0 TYPE TABLE OF zstr_eket WITH HEADER LINE.
      TYPES: BEGIN OF typ_categ,
              j_4kbwef    TYPE atnam,
              /afs/bwel   TYPE j_4kbwef,
             END OF typ_categ.
      DATA: l_s_data_eket  TYPE zstr_eket,
            ld_cat_struct  TYPE j_4kcsgr,
            lt_cat_fields  TYPE TABLE OF j_4kcif001,
            ls_cat_fields  TYPE j_4kcif001,
            ls_mara        TYPE mara,
            l_tabix        LIKE sy-tabix,
            itab_cat       TYPE TABLE OF typ_categ ,
            ls_cat         TYPE typ_categ,
            h_feldsize1(8)        TYPE c,"wegen Typ-konflikt im FB
            h_feldsize2(8)        TYPE c."wegen Typ-konflikt im FB
    Auxiliary Selection criteria structure
      DATA: l_s_select TYPE rsselect.
    Maximum number of lines for DB table
      STATICS: s_t_select     LIKE rsselect OCCURS 0 WITH HEADER LINE,
               s_t_fields     LIKE rsfieldsel OCCURS 0 WITH HEADER LINE,
    counter
              s_counter_datapakid LIKE sy-tabix,
    cursor
              s_cursor TYPE cursor.
    Select ranges
      RANGES: l_r_ebeln       FOR zv_mm_eket-ebeln,
              l_r_ebelp       FOR zv_mm_eket-ebelp,
              l_r_bsart       FOR zv_mm_eket-bsart.
    Initialization mode (first call by SAPI) or data transfer mode
    (following calls) ?
      IF i_initflag = sbiwa_c_flag_on.
    Initialization: check input parameters
                    buffer input parameters
                    prepare data selection
    Check DataSource validity
        CASE i_dsource.
          WHEN 'ZDS_V_MM_EKET'.
          WHEN OTHERS.
            IF 1 = 2. MESSAGE e009(r3). ENDIF.
    this is a typical log call. Please write every error message like this
            log_write 'E'                  "message type
                      'R3'                 "message class
                      '009'                "message number
                      i_dsource            "message variable 1
                      ' function modul was created for DS ' &
                      'ZDS_V_MM_EKET"!'.
            "message variable 2
            RAISE error_passed_to_mess_handler.
        ENDCASE.
        APPEND LINES OF i_t_select TO s_t_select.
    Fill parameter buffer for data extraction calls
       S_T_SELECT-REQUNR    = I_REQUNR.
       S_T_SELECT-DSOURCE   = I_DSOURCE.
       S_T_SELECT-MAXSIZE   = I_MAXSIZE.
    Fill field list table for an optimized select statement
    (in case that there is no 1:1 relation between InfoSource fields
    and database table fields this may be far from beeing trivial)
        APPEND LINES OF i_t_fields TO s_t_fields.
      ELSE.                 "Initialization mode or data extraction ?
    Data transfer: First Call      OPEN CURSOR + FETCH
                   Following Calls FETCH only
    First data package -> OPEN CURSOR
        IF s_counter_datapakid = 0.
    Fill range tables BW will only pass down simple selection criteria
    of the type SIGN = 'I' and OPTION = 'EQ' or OPTION = 'BT'.
          LOOP AT s_t_select INTO l_s_select WHERE fieldnm = 'EBELN'.
            MOVE-CORRESPONDING l_s_select TO l_r_ebeln.
            APPEND l_r_ebeln.
          ENDLOOP.
          LOOP AT s_t_select INTO l_s_select WHERE fieldnm = 'EBELP'.
            MOVE-CORRESPONDING l_s_select TO l_r_ebelp.
            APPEND l_r_ebelp.
          ENDLOOP.
          LOOP AT s_t_select INTO l_s_select WHERE fieldnm = 'BSART'.
            MOVE-CORRESPONDING l_s_select TO l_r_bsart.
            APPEND l_r_bsart.
          ENDLOOP.
    Determine number of database records to be read per FETCH statement
    from input parameter I_MAXSIZE. If there is a one to one relation
    between DataSource table lines and database entries, this is trivial.
    In other cases, it may be impossible and some estimated value has to
    be determined.
          OPEN CURSOR WITH HOLD s_cursor FOR
          SELECT (s_t_fields) FROM zv_mm_eket
          WHERE
          ebeln      IN               l_r_ebeln           AND
          ebelp      IN               l_r_ebelp         AND
          bsart    IN             l_r_bsart.
        ENDIF.                             "First data package ?
    Fetch records into interface table.
      named E_T_'Name of extract structure'.
       FETCH NEXT CURSOR s_cursor
                  APPENDING CORRESPONDING FIELDS
                  OF TABLE e_t_data
                  PACKAGE SIZE i_maxsize.
        FETCH NEXT CURSOR s_cursor
                   APPENDING CORRESPONDING FIELDS
                   OF TABLE itab_0
                   PACKAGE SIZE i_maxsize.
        LOOP AT itab_0 INTO l_s_data_eket.
          l_tabix = sy-tabix.
    Lesen Erstellungsdatum aus EKKO
          SELECT SINGLE aedat FROM ekko INTO l_s_data_eket-sydat
                         WHERE ebeln = l_s_data_eket-ebeln.
    Lesen Partner aus EKPA
          SELECT SINGLE lifn2 FROM ekpa INTO l_s_data_eket-plief
                         WHERE ebeln = l_s_data_eket-ebeln AND
                               ebelp = l_s_data_eket-ebelp AND
                               ekorg = l_s_data_eket-ekorg AND
                               werks = l_s_data_eket-werks .
          IF NOT l_s_data_eket-matnr IS INITIAL .
    *A Lesen material für Kategoriestruktur j_4kcsgr(F001 oder R002)
            CLEAR ls_mara.
            CALL FUNCTION 'J_3A1_LESEN_MARA_SINGLE'
                 EXPORTING
                      i_matnr         = l_s_data_eket-matnr
                 IMPORTING
                      e_mara          = ls_mara
                 EXCEPTIONS
                      param_not_valid = 1
                      OTHERS          = 2.
            IF sy-subrc NE 0.
            ENDIF.
    *E Lesen material für Kategoriestruktur j_4kcsgr(F001 oder R002)
    *A Aufsplitten Bestandskategorie
            REFRESH lt_cat_fields.
            CALL FUNCTION 'J_4KG_SPLIT_CAT'
              EXPORTING
                client                            = sy-mandt
                csgr                              = ls_mara-j_4kcsgr
                cat_appl                          = 'S'
                cat_value                         = l_s_data_eket-j_4kscat
      NECESSARY_SPECIFIED               = ' '
              TABLES
                cat_fields_tab                    = lt_cat_fields
              EXCEPTIONS
                no_category_structure_found       = 1
              OTHERS                            = 2.
            IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
            ELSE."sy-subrc <> 0
    Verarbeitung der Ergebnisse
              LOOP AT lt_cat_fields INTO ls_cat_fields.
                IF ls_cat_fields-j_4kbwef EQ 'BW_CAT_SCONFIG'.
                  l_s_data_eket-zz_bwel_sconfig = ls_cat_fields-j_4kcatv.
                ENDIF.
                IF ls_cat_fields-j_4kbwef EQ 'BW_CAT_CONFIG'.
                  l_s_data_eket-zz_bwel_config = ls_cat_fields-j_4kcatv.
                ENDIF.
                IF ls_cat_fields-j_4kbwef EQ 'BW_CAT_COUNTRY'.
                  l_s_data_eket-j_3abwel_country = ls_cat_fields-j_4kcatv.
                ENDIF.
                IF ls_cat_fields-j_4kbwef EQ 'BW_CAT_COUNTRYGRP'.
                  l_s_data_eket-zz_bwel_coungrp = ls_cat_fields-j_4kcatv.
                ENDIF.
                IF ls_cat_fields-j_4kbwef EQ 'BW_CAT_STOCKTYPE'.
                  l_s_data_eket-zz_bwel_stktype = ls_cat_fields-j_4kcatv.
                ENDIF.
                IF ls_cat_fields-j_4kbwef EQ 'BW_CAT_ORDER'.
                  l_s_data_eket-zz_bwel_order = ls_cat_fields-j_4kcatv.
                ENDIF.
                IF ls_cat_fields-j_4kbwef EQ 'BW_CAT_QUALITY'.
                  l_s_data_eket-j_3abwel_qual = ls_cat_fields-j_4kcatv.
                ENDIF.
              ENDLOOP."lt_cat_fields
            ENDIF.
    *E Aufsplitten Bestandskategorie
    *A Aufsplitten MAtrix
            IF NOT l_s_data_eket-j_3asize IS INITIAL.
              CALL FUNCTION 'J_3A_SPLIT_SIZES'
                   EXPORTING
                        matnr              = l_s_data_eket-matnr
                        j_3asize           = l_s_data_eket-j_3asize
                   IMPORTING
                        j_3akord1          = l_s_data_eket-j_3abwel_color
                        j_3akord2          = h_feldsize1
                        j_3akord3          = h_feldsize2
                   EXCEPTIONS
                        no_grid_determined = 1
                        OTHERS             = 2.
              IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
              ELSE.
                l_s_data_eket-zz_bwel_size1 = h_feldsize1.
                l_s_data_eket-zz_bwel_size2 = h_feldsize2.
              ENDIF.
            ENDIF."not l_s_data_eket-J_3ASIZE is initial
    *E Aufsplitten MAtrix
            MODIFY itab_0 FROM l_s_data_eket INDEX l_tabix.
          ENDIF."not l_s_data_eket-matnr is initial
        ENDLOOP.                                                "itab_0
      An Ausgabe-Tabelle übergeben
        APPEND LINES OF itab_0 TO e_t_data.
        IF sy-subrc <> 0.
          CLOSE CURSOR s_cursor.
          RAISE no_more_data.
        ENDIF.
        s_counter_datapakid = s_counter_datapakid + 1.
      ENDIF.              "Initialization mode or data extraction ?
    ENDFUNCTION.
    regards
    thorsten

  • No BERDATUM while generic extraction with LDB ADA

    We do a generic extraction to BW with LDB ADA. Therefore it was created an additional field in InfoSet on note ANLAV, where BERDATE=BERDATUM. BERDATUM is a selection parameter in LDB ADA. In extractor checker BERDATE is not filled.
    Does anybody have an idea what the problem is?
    Regards
    Pramid Mehta

    Hi,
    thanks for that hint. I checked this already. DataSource is ok and the field is not hidden.
    Regards
    Pramid

  • RESB Extraction with Delta

    Hi All,
    I have a requirement to extract data from RESB(Reservation) table. There is no create Date or Date field in the table.
    My Question is:
    1. How to extract data from RESB table with Delta option.
    2. Is there any standard data source to extract data from RESB table.
    Your earliest response will be highly appreciated.
    Thanks,
    Bsreddy

    Hi,
    well I'm not sure if there is a standard extractor but anyway, you can goto table aufk. There you have a creation as well as a change date. This might help.
    regards
    Siggi
    PS: Additionally you might look here: http://help.sap.com/saphelp_nw04/helpdata/en/28/500b3c56488e6be10000000a114084/frameset.htm

  • Generic extraction with function module

    hai experts,
    can u please forward the material about Generic extraction using FM
    and  infoset query with step by step and real-time requirements to my
    mail id.([email protected])
    Regards
    DJReddy

    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a0f46157-e1c4-2910-27aa-e3f4a9c8df33

  • Generic Extraction with RDA

    Hi,
    What scenarios you use RDA when you are extracting data from Generic Extraction among table, view, FM, or SAP Query.  Could you please explain with your experiences with examples.
    Regards,

    I got your question .
    There are datasources delivered by SAP and those cab be used by for doing the RDA .
    The way to check which datasource are RDA enabled .
    1. Go to Se11 . Tabele name - ROOSOURCE
    2. Give the name of the datasource and see the value in REALTIME . if it supports the box you fill find
        filled in the table entries /
    You use real-time data acquisition if you want to transfer data to BI at frequent
    intervals (every hour or minute) and access this data in reporting frequently or
    regularly (several times a day, at least). The DataSource has to support real-time
    data acquisition. The option to support real-time data acquisition is a property of
    a DataSource.
    DataSources that are released for real-time data acquisition cannot be
    used for standard data transfer (scheduled staging).
    Rest i am not sure we can create a generic data source and make that RDA enabled .
    Assign marks is the best way to appreciate help

  • Generic datasource with Delta queue

    Hi All,
    I 've created a generic datasource on prices tables A* and KONP. Next, I used HowTo document "create generic datasource that uses delta queue", finding the right BTE that could catch prices modification. Up to this point, everything works fine.
    I've extracted an Init delta to BW and now, on R/3, in RSA7, I can see a delta queue for my generic datasource.
    When I modify price conditions in VK12, BTE works fine and I can see the counter in RSA7 increasing. I also can see new entries in table TRFCQOUT with status READY. (either in SE16 or in SMQ1 )
    The problem is :
    - in RSA7, if I want to display the posted data, system returns an empty list (whereas the counter is different from 0)
    - when I run a delta InfoPackage, no data is sent to BW, but in table TRFCQOUT, status has been changed to READ for entries that previously had status READY (and old entries that had status READ due to a previous delta upload are deleted)
    Does anyone has any idea about the reason of the issue ?
    Thanks for any help
    AJ

    Sure, I can.
    The problem was in the specific coding that update the delta queue : not all the fields were updated and some of these fields were used as selection criteria in th delta infopackage...
    in RSA7, when you try to see the data in the queue, the system only shows you the records that match the selection criterias of your delta IP...so in our case, because of those empty fields, no records were selected...
    AJ

  • Generic extractors with delta

    hi all,
    can any one please provide any thing on generic extractors particular to delta (time-stamp)
    VRKR

    Hi,
    please search the forums. This question has been asked already a lot of times. Additionally you might check my business card --> there is a link to a weblog related to that issue.
    Siggi

  • Extraction, Flat File, Generic Data Source, Delta Initialization

    Extraction, Flat File, Generic Data Source, Delta Initialization
    I have couple of questions regarding data extraction.
    1.     If you have Data Source a Flat File e.g. Excel file I know that you have to create Data Source at BW side. How do you upload updates, by selecting Delta Update when executing next Data Load? Do you ever u201Cconvertu201D this Excel file into Application Tables to become SAP Source 
    2.     Can you please give me example of situation where you had to create Generic Data Source? What is difference between Time Stamp, Calend. Day and Numeric Pointer. Which one is most common to select?
    3.     I read somewhere that Generic Data Source does not have Setup Table. I thought that you have to have Setup Table in order to load transaction Data otherwise you will lock the Application Tables. Where am I going wrong im my thinking please?
    4.     What are steps in terms of IP before, under and after Delta Initialization. I belive that you can do two ways:
    Full Update - Initialize Delta Process (without Data Transfer) u2013 Delta Update  or
    Initialize Delta Process (with Data Transfer) u2013 Delta Update
    Am I right? What is most common method and why?
    5.     If you want to add a filed in Data Source after 6 month using it, you want to do it without re-init Delta Queue. You add field in RSA6, then provide info for ABAP to populate new filed (info u2013 name of Data Source, Extract Structure, field added, name of Application Table which contains the field). How does it work now as there is no SetUp table it has been deleted after Initialisation? How does Delta Queue know that it is going to receive data which has been  expanded by one field or it may does not need to know at all?
    THANKSSSSSSSSSs

    Hi,
    1. If you have Data Source a Flat File e.g. Excel file I know that you have to create Data Source at BW side. How do you upload updates, by selecting Delta Update when executing next Data Load? Do you ever u201Cconvertu201D this Excel file into Application Tables to become SAP Source
    Once you create Datasource for A flat file extraction then it is file source system specific hence you cont change to Application table source Data source
    In info package you can change the source as application server instead of desktop no need to change the DS
    2. Can you please give me example of situation where you had to create Generic Data Source? What is difference between Time Stamp, Calend. Day and Numeric Pointer. Which one is most common to select?
    When we don't find any standard extractor then we can go for Generic(if i want information sales along with finance information in a data source then generally we dont get standard one hence we can go for generic DS)
    Check the below link for More about generic DS .
    http://wiki.sdn.sap.com/wiki/display/BI/Generic+Extraction
    for Delta capturing you can use
    Timestamp(if the table has time stamp filed  so it can stamp the last changed record in that table hence it is easy to get delta based on the time stamp)
    Calday- (If the table doesn't have the Timestamp filed then search for Calday where you can stamp the delta based on the date when documents are changed )
    Numericpointer : If the table doesn't above both then we go for this option where you can the numeric value change stamp )
    3. I read somewhere that Generic Data Source does not have Setup Table. I thought that you have to have Setup Table in order to load transaction Data otherwise you will lock the Application Tables. Where am I going wrong im my thinking please?
    Generic datasource nothing but we extracting data directly from the database table without any interface between the application/systems
    4. What are steps in terms of IP before, under and after Delta Initialization. I belive that you can do two ways:
    Full Update - Initialize Delta Process (without Data Transfer) u2013 Delta Update or
    Initialize Delta Process (with Data Transfer) u2013 Delta Update
    Am I right? What is most common method and why?
    Correct
    5. If you want to add a filed in Data Source after 6 month using it, you want to do it without re-init Delta Queue. You add field in RSA6, then provide info for ABAP to populate new filed (info u2013 name of Data Source, Extract Structure, field added, name of Application Table which contains the field). How does it work now as there is no SetUp table it has been deleted after Initialisation? How does Delta Queue know that it is going to receive data which has been expanded by one field or it may does not need to know at all?
    Once you add the new field to structure(DS) you will get the data as on date onwards not historical data hence what is the concept of setup table  ( delta records come from the Delta Que not from the setup table )
    If you want histaric data to new field then you need to setp table deletion ...etc...
    Hope it is clear..
    Regards,
    Satya

  • GENERIC EXTRACTION DELTA SETTINGS

    HI Everyone,
                        I need to know how we set up Generic Delta in the following scenarios.
    1) When we have a Generic Extractor based on a View and this View has multiple table(For Example 2 Tables to start with).
    Then how wil you have the Generic Delta based on which field from which table? FOr example Table 1 has Header Data and Table2 has Item  Data.Our Functional  Consultant says Header can change or Item data can change.So we need to pick  up the record based on the change in each of the tables. For Example , there is a field called CHANGED DATE(AENDT) which is present in both the tables. Now , in the view if I add AENDT from Table1, then Table1's chnages will only be updated i guess. What if the change occurs in TABLE2 (ITEM).
    I dont know how to go about this. The solution is I created two Generic Extractors with two views (The only difference between the views is AENDT field coming from TABLE1 in the first extractor and AENDT field coming from  TABEL2 in the second Extractor).But I think  this  is not the best way and there must be an alternative for this
    2) The other issue is If I have a Function Module which Brings data from Multiple Tables, then how to select the field on which Delta is set.Do we need to write some Logic. After writing the logic, can we directly set the Generic Delta in RSO2 or is there any other way to do it.
    Regards,
    Samir

    Hi Samir,
    We too had a simliar requirement. In your case you can create a FM generic datasource on top of the view. The view in your case will get the intersection of the Header and Item level data.  the main challenge was to get the delta records as we can have both Orders created and changed , and in Delta can be maintained on only one field.
    To overcome this issue in the FM coding, Steps:
    create Generic datasource, with Delta on changed on date (AENDT)
    So during extraction you get the date on which the last Load was succesfully completed using the (AENDT).
    So in the selection part use the statement similar to this:
          select * from vbap into table  it_order where
                                 ( erdat  in l_r_erdat or aedat in l_r_zaedat ) and
                                 ( erdat in l_r_aedat or aedat in l_r_aedat )
    Sample generic datasource for your reference:
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/403b299b-94e5-2c10-a3b4-e2cecb8ee869?quicklink=index&overridelayout=true
    Hope this helps.
    Regards,
    Umesh.

  • Generic Extractor using FM with Delta Logic

    Hi,
    i want to create a generic extractor with Delta Logic based on a FM.
    The extractor works fine for full loads (extractor method "F" or "C"), but delivers no record for the extractor method "D" (Delta). I placed a hard coded break-point in the FM, so that the processing should stop while testing it with TC "rsa3". Using the extractor method "D" the debugger doesn't stop. So it seems, that this FM will not be processed for method "D". What could be wrong?
    I tried different ways to create the generic extractor:
    First i copied the template "RSAX_BIW_GET_DATA_SIMPLE" and tried to get the information for delta-run by "LOOP AT i_t_select INTO l_s_select WHERE fieldnm = 'DATE_FIELD'." But as the processing for method "D" does not consider the FM, there is no chance to get delta data.
    On second try i used the template "RSAX_BIW_GET_DATA" and changed "EXMETHOD" from "F1" to "F2" in table ROOSOURCE for the Data Source. In this case i get information about the Update mode (Parameter i_updmode). But the processing leaves the FM for extractor method "D" out too.
    Does anybody know, why the FM is not processed for extractor method "D"?
    Is there another way to get delta capable extractors based on FMs?
    Thanks for help in advance!

    Hello
    See this blog which uses the same FM with explanation
    /people/siegfried.szameitat/blog/2005/09/29/generic-extraction-via-function-module
    See this forum too
    Generic Delta Function Module
    Other docs
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/84bf4d68-0601-0010-13b5-b062adbb3e33
    http://help.sap.com/saphelp_nw04/helpdata/en/37/4f3ca8b672a34082ab3085d3c22145/content.htm
    Thanks
    Chandran

  • Generic extraction using table

    Hello friends,
    We have three methods in Generic extraction, as we know.
    1. Using view/Table
    2. Using FM
    3. Using Infoset Query
    I know pretty well the extraction using View, but when do we use "Table"?
    Is there a specific method to perform generic extraction using TABLE?
    Please clarify

    Thanks for the replies.
    In case of a generic extraction with view, i've followed the below procedure.
    1. RSO2.
    2.create a generic datasource by giving a view name and selecting the fields for selection criteria, save and generate.
    3. replicate data sources in BW.
    4. create an infosource and assign the data source, mapping and create an infopackage to load data.
    Now ,
    1. how do we enable Delta for this method?
    2. Is  this possible at all? if yes, how?
    3. How do we proceed after the replication of DataSources in BI? specifically, procedure in BI?
    Pls clarify.

  • How to extract data by using function module in generic extraction please

    how to extract data by using function module in generic extraction please  give me steps  required

    Dear Deba,
    Generic Extraction via Function Module
    /people/siegfried.szameitat/blog/2005/09/29/generic-extraction-via-function-module
    If the requirement is like extracting data from multiple tables with some complex logic then views cannot be used..so u cna go for FM is used where it can be achieved.
    Chk these
    /people/siegfried.szameitat/blog/2005/09/29/generic-extraction-via-function-module
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a0f46157-e1c4-2910-27aa-e3f4a9c8df33
    check the following thread
    generic extraction with function module
    Generic Extraction with function module
    Regards,
    Ram.

  • Generic Extraction creation

    HI All,
    I want to extract data from two tables from CRM(Z tables).
    When I goto RSO2 to create a generic data source it is giving me the options of Extract from View,Extract from Info Set and Extract BY FM.
    But when I select Extraction from View it is giving me an option to select from one table only.
    HOw can I extract data from two tables?
    Please help me
    Sridath

    Hi,
    Check the below links, you will get more info on Generic Extraction.
    Generic Extraction:
    http://help.sap.com/saphelp_nw70/helpdata/en/28/4c553c42360a40e10000000a114084/frameset.htm
    Check the link.
    http://www.erpgenie.com/sapgenie/docs/MySAP%20BW%20Cookbook%20Vol%202.pdf
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/84bf4d68-0601-0010-13b5-b062adbb3e33
    Refer:
    /people/siegfried.szameitat/blog/2005/09/29/generic-extraction-via-function-module
    Generic Extraction with Table, View, FM & Infoset
    Creating a datasource for generic extraction
    Generic Extraction
    Customer and Generic extraction difference ?
    generic extraction
    Re: Generic extractors
    generic extraction
    Reg
    Pra

Maybe you are looking for

  • To Convert Adobe Form In another Language

    Hi, I have a Adobe form which i have created in English. I want to convert whole of the form in Spanish. Please help me on this as how to convert it. Is it Possible that when we enter any information then it is also conver it into spanish. With Regar

  • Can you watch TV on the N80?

    Like the 6280?

  • Can't play videos on a newly upgraded iBook

    I have recently upgraded my iBook G3 to 10.4.11. I also added an Airport card and a 512 MB RAM card. I can do pretty much anything on the internet (Safari 4.0.4) but can't play videos. The picture is really jumpy & laggy and the sound continues out o

  • Value Mapping Replication for Mass Data

    Hi SDN, I have to design an interface in XI 3.0 (SP14 on AIX) for replicating mass data from file databse etc to the XI runtime cache. I went thru the follwing weblog which proved to be helpful:<b>/people/sreekanth.babu2/blog/2005/02/23/value-mapping

  • Best way to get a "Clean" OS 9?

    Hi all, I have a G3 iBook 366Mhz in a very lovely shade of Key Lime. It's running OS 9.2. I inherited this from a family member and I am currently in the process of "maxing it out" just to see how good it can be. I've done the firmware update and pop