Problem in extracting Generic Delta Records

Hi BW Experts,
I have an issue. I am using Generic Extractor using View from Tables CATSCO and CATSDB. At the time of  Generic Delta, I am using the field PERNR(Personal Number) to use Generic Delta. I am using Time Stamp. For this I have selected Safety Interval Upper Limit 100 seconds.But now I am testing whether we get delta records or not. But I am not getting records to BW. They are changed in R/3. So please guide me whether I should use Calday or Time Stamp . How can  I get delta records to BW.For testing , I am executing InfoPackage immediately after changes in R/3 like for two or three minutes. Once I will be sure on getting records to BW, then I can move to Production where we execute process chain at 1:00 a.m
there I can use Calday giving Safety Interval Upper Limit as 1 day. Considering the above factors please guide me .
I will be thankful for solving my issue.

PERNR doesn't contain a date right?  so timestamp tells the system PERNR is a date field...  That will never work.
What kind of value does PERNR contain, is it an incremental value that adds up at every new entry?
Generic delta needs a field that changes in a way that can be predicted.

Similar Messages

  • Problem in getting Generic Delta records to BW

    Hi BW Gurus,
    I have got one issues with which I have been struggling a lot for several days . i.e
    I am extracting data from R/3 using Generic Extractor (View) from CATSCO and CATSDB. At the time of delta, I tried using Personal  No with Time Stamp giving Upper limit as 1800 seconds. I executed Infopackage in BW immediately. But it didn't work out. So plz guide me how I can get Delta Records to BW. Or should I do any  necessary factors apart from these in Generic Delta Screen (RSO2).
    It is very urgent.
    I will be thankful for solving this issue.

    Hey I am "Intros" again,,
    I am sorry man for giving the wrong T-code mistakenly in my last reply..
    To solve the proble...the whole process is same what I told u before..
    But... you got to go to T-Code :  BD87   , then execute the IDocs manually to bring them in to BW
    identify your IDocs which are missing in Monitor screen, then goto BD87 and select those IDocs and click execute... )you can search the IDoc's based on selection conditions)
    I hope this will help u...
    cheers man..
    ---Intros

  • Problem with functioning Generic Delta

    Hi Expert !
    I Have Created a Generic Delta and has Scheduled the Delta Load By Means of Process Chain In BI Side.
    Although it is showing Green(OK) status for the respected Request at PSA(saying No Data Exists FOR PSA) and ODS Lavel but no data is loaded at ODS.
    although the data for the same crieria is available in R/3 side.
    please share your idea what is reason behind........
    Regards
    Prakash

    Hii I have created Generic Delta On Function Module, also i had checked in RSA3 and it is showing data. Also I have checked the Function Module and the field on which i had created Delta, the Delta Parameters is coming.
    I am not able to find what actually the problem is........
    Please share your idea if you have any.
    Regards
    Prakash

  • Issue with generic extraction (Generic Delta)

    I have one more issue with Generic Delta Extraction. Here I selected the field related to my requirement but when I am trying to save I am getting error Still OLTP have errors.
    I need some help when we select generic delta wht are the settings. Like now I am working on Inventory Management.
    Please Some one help me as soon as possible.
    Thanks In advance.....
    Regds
    SDR.

    Hi ,
    I think there are some of the Keyfigure fields which needs 0Unit or 0Currency field to be present in the Extract Structure but they are not present . Check All unit of measure and Currency unit fields are not hidden .
    Regards,
    Vijay.

  • Incorrect TimeStamp in Generic Delta (UTC Issue)

    Hi,
    I have a problem regarding a generic delta extractor. The pointer stored in rsa7 (ROOSGENDLM table) is not UTC but system time. As standard tables store the timestamp using UTC format the delta extractor is not picking up the correct data.
    Do you know a solution for this?

    Hi,
    Thanks for your reply. However I think that unfortunately this solution is not enough
    For example:
    I execute a delta. My TimeStamp is registered as UTC +2: 20080612160000. (Here I have the error, it should be in UTC)
    Now I modify a record in R3 and it is registered with timestamp UTC: 20080612140000.
    If I execute a delta it will take all the records higher than 20080612160000. Therefore my modification will never be uploaded.

  • Generic delta

    Hi experts
    i have problem in loading generic delta , Generic delta have three parameters
    1.Time Stamp
    2.Numeric pointer
    3.Calender day
    and also upperlimit and lower limit
    can any one explain me about this parameters and how it works in generic delta
    Thanks in in advance

    hi,
    Yes we have these 3 delta types.
    timestamp is used when the requiement of data load is depends on time ie hourly based.
    0calday is is used when the requiement of data load is depends on date ie daily based.
    Numeric pointer is uesed if u want to load delta based on some fields like sales order,material order.
    Lower limit and upper limit used for not to miss the records.
    regards,
    kundan

  • How SAP determines Delta records?

    Dear Experts,
    I have a standard extractor 2LIS_02_ITM. It works like this.
    1. when a sales order is saved, a customized program creates a new PO and updates a field in the PO using direct update, the abap 'update' command.
    2. in BI, this record created is loaded as delta.
    3. We notice that sometimes this when delta loaded, this field is blank and sometimes its not.
    A. We suspect the delta did not capture program-created PO if this field value is populated as blank by the program.
    B. If the program-created PO is opened and edited by user and then saved, SAP would generate a Delta record?
    If this delta is created and BI reloads delta, this delta would be loaded into BI and the report would show the field value.
    So, I need to check with experts here if using customized program to create a PO and update a field in it at the same time, would this be captured by the Delta mechanism?
    Normally, if manually created, the PO would, i assume, be captured in the delta queue. But what about using program?
    Please advise how delta is or can be affected by programs and how exactly is delta determined in this case. This standard extractor is set to use delta, i think using numeric field.
    So, I am not sure if its due to R/3 or BW. For BW, its a direct mapping of the updated field. So, I do not think there is an issue on BW side.
    regards
    Pascal

    Dear Debjani,
    On your reply to point 2 about the timing of LIS V3 update run, I like to seek clarification how the timing could cause the problem given that many delta records have successfully been loaded with existing way where a collection run is scheduled to run every around 15 minutes and is able to capture the delta except in some cases which is the problem? How can the field value change be missed due to this?   On your point 3 reply, the PO is created by program and it can be created by user.
    I still require some clarification . Hope you can kindly bear with me.
    1. For most of the delta records loaded into BI from R/3, there is no problem with the data. The program-created PO records can be loaded. But for some cases, even when this field is populated by program or EDI, after auto-creation of the PO. This delta is loaded into BI with this field being blank.
    2. This suggests to me, for most cases of the auto-PO creation, the BI Delta mechanism in R/3 is able to handle PO created by automated program in R/3.
    3. So, seems to me, regardless of how the PO is created : user created / by program / by EDI, the delta mechanism seems to work. So, I like to learn more how exactly can TIMING difference (asynchronous) between the creation of PO records and the LIS V3 update delta queue creation batch job have resulted in the field update from not being extracted into the delta queue ?
    Solutions (i think):
    1. Is it possible to Change the current delta queue update extraction method from periodic (every x minutes) V3 update batch run to the Direct / Unserialised V3 update  extraction method as mentioned by Arvind earlier? Would this mean every time PO is created by any means, even by program or field updated by EDI, the delta queue is immediately created to capture the change? This sounds like a solution?
    2. Have the auto-PO creation program Trigger an R/3 event to run the V3 update whenever it has completed an update or PO creation to generate the delta queue. Would this load the r/3 too much if run frequently? Or since frequent run would mean also less delta queue created which means shorter run time?
    Dear Sven,
    would it be good idea to use the program for ME22N to update the particular field After the PO is auto-created by the ME21N program? Would this mean, using these programs will assure that delta is captured?
    Best regards
    Pascal
    Edited by: Pascal Gabin on May 11, 2011 9:24 AM

  • Urgent: Problems in Generic Deltas by Function Module

    Hi BW Experts,
    My requirement is to extract text from CRM to BW using Zfunction module, copy of RSAX_BIW_GET_SIMPLE_DATA
    which works fine for full loads but the problem arises only when i go for generic deltas. My code in FM for Deltas is:
    LOOP AT s_s_if-t_select INTO l_s_select.
    CASE l_s_select-fieldnm.
    WHEN 'ZDATE'.
    s_date_from = l_s_select-low.
    s_date_to = l_s_select-high.
    WHEN OTHERS.
    ENDCASE.
    ENDLOOP.
    IF s_date_from IS INITIAL.
    s_date_from = '20060401'.
    ENDIF.
    IF s_date_to IS INITIAL.
    s_date_to = '99991231'.
    ENDIF.
    OPEN CURSOR WITH HOLD S_CURSOR FOR
    SELECT * FROM STXH
    WHERE TDOBJECT = 'CRM_ORDERH'
    AND TDID = 'A002'
    AND TDSPRAS = sy-langu
    and TDLDATE between s_date_from and s_date_to
    or tdfdate between s_date_from and s_date_to.
    ENDIF.
    FETCH NEXT CURSOR S_CURSOR
    APPENDING CORRESPONDING FIELDS
    OF TABLE wa_stxh
    PACKAGE SIZE S_S_IF-MAXSIZE.
    TDFDATE is creation date and TDLDATE is changed on
    My extract structure contains Zdate(TDLDATE), Ztext1,2,3, Key field and langu in RSO2 I have selected calday in generic delta and Zdate as field Nm and upper limit as 1 and lower limit as space in settings and new status for changed records button.
    Did I missed something because when i check in RSA7 i didnot see any changed records under totals column and i tried to load without it into BW than i didnot received single record evenafter changes.Would anyone suggest me the good solution for it I appreciate it in advance. I have seen lot of posts in SDN but I didnot find this type of secenario anywhere.
    Thanks in advance
    Regards
    Kishore

    Kishore,
    go through the thread... which i provided for Generic DS using function for CRM Texts.
    Re: Urgent: Extraction through function module
    Any questions please let me know. If you have any questions update the thread with your mail id.
    Replace the code with ...
    LOOP AT S_S_IF-T_SELECT INTO L_S_SELECT WHERE FIELDNM = 'ZDATE'.
    MOVE-CORRESPONDING L_S_SELECT TO L_R_TDLDATE.
    APPEND L_R_TDLDATE.
    ENDLOOP.
    OPEN CURSOR WITH HOLD S_CURSOR FOR
    SELECT * FROM STXH
    WHERE TDOBJECT = <Text Object>
    AND TDID = <Text ID >
    AND TDSPRAS = sy-langu
    AND (TDLDATE IN L_R_TDLDATE
    or TDFDATE IN L_R_TDLDATE).
    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 wa_stxh
    PACKAGE SIZE S_S_IF-MAXSIZE.
    L_R_TDLDATE will be calculted by the system. Internally, system will save the Last Delta date(you need to enable this field for Generic delta).
    all the best.
    Regards,
    Nagesh Ganisetti.

  • Generic Delta extraction by Function module issue

    Hello Experts,
    Please help !!!
    I have problem for delta extraction by Function module.  For the full load, I wrote function module based on RSAX_BIW_GET_DATA_SIMPLE. It works fine.
    But I would like to have the delta load enabled. Therefore, I modified the datasource, add a delta specific field u2018ztimestampu2019, which type is calendar day.
    Then I create a function module based on template u2018RSAX_BIW_GET_DATAu2019, as this support the upload mode. But when I test this datasource in RSA3, no matter itu2019s full load or initial delta load, it always send me an error, u201CErrors occurred during the extractionu201D.
    I had some debug, and found that there is no value  for i_isource when my function module is called. Therefore it raised the exception.
    But I do not have the chance to debug my code for the delta logic, can somebody help to check?
    I also check the entries in ROOSOURCE,
    For my datasource ZTRNREC_FM_DELTA, The DELTA value is u2018AIEu2019, and extraction method is u2018F2u2019, should I change them to DELTA= u2018Du2019 and extraction method to u2018F1u2019? Where to change?
    FUNCTION ZRSAX_TRAININGREC_DELTA.
    ""Local Interface:
    *"  IMPORTING
    *"     VALUE(I_REQUNR) TYPE  SBIWA_S_INTERFACE-REQUNR
    *"     VALUE(I_ISOURCE) TYPE  SBIWA_S_INTERFACE-ISOURCE OPTIONAL
    *"     VALUE(I_MAXSIZE) TYPE  SBIWA_S_INTERFACE-MAXSIZE OPTIONAL
    *"     VALUE(I_INITFLAG) TYPE  SBIWA_S_INTERFACE-INITFLAG OPTIONAL
    *"     VALUE(I_UPDMODE) TYPE  SBIWA_S_INTERFACE-UPDMODE OPTIONAL
    *"     VALUE(I_DATAPAKID) TYPE  SBIWA_S_INTERFACE-DATAPAKID OPTIONAL
    *"     VALUE(I_PRIVATE_MODE) OPTIONAL
    *"     VALUE(I_CALLMODE) LIKE  ROARCHD200-CALLMODE OPTIONAL
    *"     VALUE(I_REMOTE_CALL) TYPE  SBIWA_FLAG DEFAULT SBIWA_C_FLAG_OFF
    *"  TABLES
    *"      I_T_SELECT TYPE  SBIWA_T_SELECT OPTIONAL
    *"      I_T_FIELDS TYPE  SBIWA_T_FIELDS OPTIONAL
    *"      E_T_DATA STRUCTURE  ZTRN_REC_TIME OPTIONAL
    *"      E_T_SOURCE_STRUCTURE_NAME OPTIONAL
    *"  EXCEPTIONS
    *"      NO_MORE_DATA
    *"      ERROR_PASSED_TO_MESS_HANDLER
    The input parameter I_DATAPAKID is not supported yet !
    Example: InfoSource containing TADIR objects
    Auxiliary Selection criteria structure
      DATA: l_s_select TYPE sbiwa_s_select.
    Maximum number of lines for DB table
      STATICS: l_maxsize TYPE sbiwa_s_interface-maxsize,
              S_S_IF TYPE SRSC_S_IF_SIMPLE,
              S_COUNTER_DATAPAKID LIKE SY-TABIX.
    Parameter I_PRIVATE_MODE:
    Some applications might want to use this function module for other
    purposes as well (e.g. data supply for OLTP reporting tools). If the
    processing logic has to be different in this case, use the optional
    parameter I_PRIVATE_MODE (not supplied by BIW !) to distinguish
    between BIW calls (I_PRIVATE_MODE = SPACE) and other calls
    (I_PRIVATE_MODE = X).
    If the message handling has to be different as well, define Your own
    messaging macro which interprets parameter I_PRIVATE_MODE. When
    called by BIW, it should use the LOG_WRITE macro, otherwise do what
    You want.
    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
    The input parameter I_DATAPAKID is not supported yet !
    Invalid second initialization call -> error exit
        IF NOT g_flag_interface_initialized IS INITIAL.
          IF 1 = 2. MESSAGE e008(r3). ENDIF.
          log_write 'E'                    "message type
                    'R3'                   "message class
                    '008'                  "message number
                    ' '                    "message variable 1
                    ' '.                   "message variable 2
          RAISE error_passed_to_mess_handler.
        ENDIF.
    Check InfoSource validity
        CASE i_isource.
          WHEN 'ZTRNREC_FM_DELTA'.
          WHEN OTHERS.
            IF 1 = 2. MESSAGE e009(r3). ENDIF.
            log_write 'E'                  "message type
                      'R3'                 "message class
                      '009'                "message number
                      i_isource            "message variable 1
                      ' '.                 "message variable 2
            RAISE error_passed_to_mess_handler.
        ENDCASE.
    Check for supported update mode
        CASE i_updmode.
          WHEN 'F'.
          WHEN 'D'.
          WHEN 'R'.
          WHEN OTHERS.
            IF 1 = 2. MESSAGE e011(r3). ENDIF.
            log_write 'E'                  "message type
                      'R3'                 "message class
                      '011'                "message number
                      i_updmode            "message variable 1
                      ' '.                 "message variable 2
            RAISE error_passed_to_mess_handler.
        ENDCASE.
    Check for obligatory selection criteria
        APPEND LINES OF i_t_select TO g_t_select.
    Fill parameter buffer for data extraction calls
        g_s_interface-requnr    = i_requnr.
        g_s_interface-isource   = i_isource.
        g_s_interface-maxsize   = i_maxsize.
        g_s_interface-initflag  = i_initflag.
        g_s_interface-updmode   = i_updmode.
        g_s_interface-datapakid = i_datapakid.
        g_flag_interface_initialized = sbiwa_c_flag_on.
    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 g_t_segfields.
      ELSE.                 "Initialization mode or data extraction ?
    Data transfer: First Call      OPEN CURSOR + FETCH
                   Following Calls FETCH only
      LOOP AT G_T_SELECT INTO L_S_SELECT
            WHERE FIELDNM = 'ZTIMESTAMP'.
      ENDLOOP.
          IF G_COUNTER_DATAPAKID = 0.
            IF L_S_SELECT-LOW = '' AND L_S_SELECT-HIGH = ''.
            OPEN CURSOR WITH HOLD G_CURSOR FOR
                SELECT (g_t_fields)
                FROM ZTRN_REC_TIME.
            ELSE.
              OPEN CURSOR WITH HOLD G_CURSOR FOR
                SELECT (g_t_fields)
                FROM ZTRN_REC_TIME
                WHERE ZTIMESTAMP >= L_S_SELECT-LOW
                  AND ZTIMESTAMP  <= L_S_SELECT-HIGH.
            ENDIF.
          ENDIF.
      FETCH NEXT CURSOR G_CURSOR
                   APPENDING CORRESPONDING FIELDS
                   OF TABLE E_T_DATA
                   PACKAGE SIZE S_S_IF-MAXSIZE.
        IF SY-SUBRC <> 0.
          CLOSE CURSOR G_CURSOR.
          RAISE NO_MORE_DATA.
        ENDIF.
        S_COUNTER_DATAPAKID = S_COUNTER_DATAPAKID + 1.
      ENDIF.
    ENDFUNCTION.
    I found some similar issue in this forum by link
    Generic Extractor Delta Function Module code, but still I could not get clear answer.
    Can you please help me:
    1)     why there is no value for i_source , how to fix it?
    2)     For the delta logic for ztimestemp, is it correct?
    3)     Need I modify the entries in ROOSOURCE ?
    Thanks a lot !!!

    Hello Andre,
            Thanks a lot for your help. I did some change , but still does not work. Could you please help check.
    Now the source code are the following, It's based on the RSAX_BIW_GET_DATA_SIMPLE, as you confirm that this also supply the update mode (full, initial delta, delta).
    FUNCTION RSAX_BIW_GET_DATA_TRAININGREC1.
    ""Local Interface:
    *"  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  ZTRN_REC_TIME OPTIONAL
    *"  EXCEPTIONS
    *"      NO_MORE_DATA
    *"      ERROR_PASSED_TO_MESS_HANDLER
    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_ZTIMESTAMP FOR ZTRN_REC_TIME-ZTIMESTAMP.
    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 'ZTRNREC_FM'.
          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.
          LOOP AT S_S_IF-T_SELECT INTO L_S_SELECT WHERE FIELDNM = 'ZTIMESTAMP'.
          MOVE-CORRESPONDING L_S_SELECT TO L_R_ZTIMESTAMP.
          APPEND L_R_ZTIMESTAMP.
          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.
         IF L_S_SELECT-LOW = '' AND L_S_SELECT-HIGH = ''.
            OPEN CURSOR WITH HOLD S_CURSOR FOR
            SELECT (S_S_IF-T_FIELDS)
            FROM ZTRN_REC_TIME.
            ELSE.
            OPEN CURSOR WITH HOLD G_CURSOR FOR
            SELECT (S_S_IF-T_FIELDS)
            FROM ZTRN_REC_TIME
            WHERE ZTIMESTAMP >= L_S_SELECT-LOW
            AND ZTIMESTAMP <= L_S_SELECT-HIGH.
         ENDIF.
        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.
    I think it already includes the important statements you suggested.
    I test this FM in RSA3, for the Full load mode, it works fine. Also if I checked the debug mode in execution , it will stop in the code and let me debug.
    But when I choose other mode, like 'initializion of the delta transfer'  or simulation of initial delta, I always get error 'error occurs  during the extraction' .. even I choose debug mode, but it could not enter the code for debug..
    Till now I did not see any parameter or value for the upload mode..
    Another questions is that, in RSO2, I define Ztimestamp as my delta field.. But , can I add other field as selection condition in the datasource definition, and has its range table in this function module ?
    Should I change the entries in ROOSOURCE for this datasource ??
    Please let me know your feedback, do you have some concret example for generic delta extraction ?
    Thanks a lot !

  • Generic delta extraction using function module

    Hi.
    I have a generic datasource , extraction being performed by a function module. The extraction works fine in full update mode. The extract structure has a timestamp field.
    I have enabled generic delta using this field(i.e., marked this field in RSO2). I understand that with this setting, I should be able to get delta data when I do a delta request. But it does not seem to happen.
    I checked the ROOSPRMSC table for the last(local) timestamp stored there. Now when I do the delta upload I expect to see only those records which are younger than the stored timestamp of last upload.
    But I still get the entire set of records.
    Questions are :
    1. Do I need to explicitly code for fetching the delta in the extractor ?
    2. If not, what could be the reason why generic delta is not working ?
    Thanks and regards,
    Anuradha

    Hi GFV,
    I read-up all the forum entries on this topic but could not find anything specifically dealing with my problem. I have browsed through the how-to paper on generic delta as well.
    I am quite sure that we don't need any special coding in the extrator for generating delta generically. Even the how-to paper does not mention that.
    I have used the FM RSAX_BIW_GET_DATA_SIMPLE as a template
    for my extractor(as suggested by F1 help in RSO2). This FM does not even have the i_updmode flag in its interface. 
    Thus this function module always does full extraction and I expect the system to take care of delta using the timestamp field.
    Are these assumptions incorrect ?
    Regards,
    Anuradha

  • Delta Problem while extracting the data by using function module

    Hi Experts,
    I have extracted the data by using Function module, for delta loads I have given Calday and additive delta in Generic delta settings, in BW side I have initialized the data after that I have given delta update option in infopackage and I made process chain also, every day process chain is running successfully but it is showing zero records, but there is a data in Data source (RSA3), means delta is not working.
    What is the problem,
    Is there any another settings for delta loads,
    Please help me to do this,
    Helpful answer will be appreciated with points,
    Regards,
    Venkat

    Hi,
    Try this delta type :NEW STATUS FOR CHANGED RECORDS.
    More information from Nagesh, this information may help
    1. New status for changed Records.
    2. Additive delta.
    New status for changed records means
    New Order
    order no quantity
    1000 10
    order changed to quntity 8. then 2 records will posted 2 BW in first case.
    1000 -10
    1000 8
    if you come to Additve delta.
    for the same case it will send the same record as
    1000 10
    changed records
    1000 -2
    this is the difference. New status with changed records should be used only in association with ODS not cube becoz we don't have overwrite option.
    Additive delta we can use for ODS and Cubes with update mode Addition.
    Regards,
    Satya

  • Generic delta issue - INITIALIZATION - Missing some records

    Hello all,
    We have create a specific table on our SAP system (4.6C) and a specific datasource.
    We have customized a generic delta process (DELTA SPECIFIC FIELD = Last Change Date type DATS).
    The table contains 38 records.
    When we launch a full loading all the records are extracted (that is to say 38 records).
    When we launch a INIT loading (with no selection) only 6 records are extracted.
    The generic TYPE for delta field is CALENDAR DAY.
    Why the init loading doesn't load all the data contain in the table ?
    Some of you have already meet such problem ?
    The table structure can be the reason of this problem ?
    Points will be done
    Edited by: Marc Marquez on Jul 24, 2008 10:56 AM

    This test is already done, the problem is on ECC system.
    On RSA3 side the behaviour is the same than in BW
    FULL loading is ok (all records are extracted)
    INIT loading is ok but most of the records are not loaded (6 instead of 38)
    Christophe
    Edited by: Marc Marquez on Jul 28, 2008 3:18 AM

  • How to deal with delete record in generic delta of generic datasource

    Hi,
       Anyone can give me suggestion about the delete record in generic delta  of generic data. I need extract data with a generic datasource and hope deleted record in datasource also can be "delete" in next delta extraction. I do a test with generic delta. It seem that the delete record can not be updated in ODS. but updated record can be updated in next delta extraction.
    How dose BW generic delta deal with the deleted record with generic delta mechanisim? Or how can I use generic delta mechanisim to realize that BW "delete" the deleted record of source system in ODS with delta extraction?
    Thanks in advance!
    Billy

    Delete is not supported in delta mechanism of generic delta extractor. You will need to add a workaround for that.
    - Capture the deleted records somewhere (maybe enhance the txn deleting the record so the key is written to a Z table). Take these records to BW and manipulate the recordmode to affect deletion of corresponding record from ODS.
    - If your generic delta is based on FM, and if the 'delete' is captured in change document tables, add the logic to check change document tables whether any records are deleted, and if yes, send those to BW with appropriate recordmode to achieve deletion.

  • Generic delta has problem with delts pointer time stamp

    Hi All,
    We have generic delta data source with Delte pointer as Time stamp. We have not used any safety limits. We are loading the data to DSO and using Additive delta. But the problem is when delta flag is set, there might be a case where some records still being inserted to table with lower time stamp. These records are not being fetched in next delta.
    We are planning to keep a safety upper limit of 5 min so that those records can not be missed. But we have a doubt as it is a Additive delta duplicate records will be loaded. If we make the delta to 'new status to changed records', it is going to work?? Any other things we have to check when we make this changes??
    Thanks
    Haaris

    Hi
    If you had selected additive delta then you can load data to DSo with addition mode only. No overwrite possible.
    If you want to select new or changed status then you can load to DSO with overwrite mode only.
    Additive or changed delta depends on your requirement because if you want to add data to the DSO then you can go ahead with additive otherwise you have to use DSO with overwrite mode only.
    You can either give safety upper limit or lower limit but if you give safety lower limit then you can only load data to DSO with overwrite mode because there could be some duplicate records.
    Hope it clarifies.
    Regards
    Sadeesh

  • What are the disadvantages of generic delta extraction

    Hi all,
    what are the disadvantages of generic delta extraction.
    how function module generic extraction works.
    Thanks,
    Madhu.

    hi madhu,
    Pls refer ths,To learn more about Generic Extraction pls read BW350 book.
    Gereric Extraction can be done in 3 ways.
    If you go to transaction RSO2 in R/3 side, provide tech name for data source and click create.
    you will get the 3 options.
    1)From a DB Table
    2)From a DB View
    3)From Functional module/ Infoset Query
    in first option you can directly give a standard or custom build talbe name. in second option you can select the necessary fields from more than one talbe(eiter standard or custom). In third option you will create a function module or Query to extract data. When creating function modules you can use standard function modules as a template e.g. RSAX_BIW_GET_DATA_SIMPLE.
    see weblog : /people/siegfried.szameitat/blog/2005/09/29/generic-extraction-via-function-module
    If you want to enable delta for generic extractor you choose the option delta and provide necessary settings.
    Generic extraction is when your extraction is not satisfied by either BC or LIS/LO. It can be using a view / query/table/FM
    Here the changed records can be isentified by :
    1. Based on the date of creation or last change ( Delta based on 0Calday)
    2. Based on the record number ( Numeric Pointer )
    3. Based on time of change ( Timestamp)
    real time examples would be
    1. Master Record creation like customer ID creation
    2. Timesheets in SAP PS
    3. Invoive details / Sales Order Details.
    Pls check this web logs for clear Idea.
    /people/siegfried.szameitat/blog/2005/09/29/generic-extraction-via-function-module
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/84bf4d68-0601-0010-13b5-b062adbb3e33
    Have a look at these threads too.
    Tables
    Transfer Structure
    The steps for creating extractor using Function Module.
    1. Create new Function group (if you have already not done so) in Se80
    2. Copy Function module "RSAX_BIW_GET_DATA_SIMPLE" with suitable name.
    3. Change the code that populate data.
    Following table may give you the guideline for parameters.
    Parameter Description
    I_REQUNR (import) BW provides this request identifier. It is a system-generated identifier in the form REQU_XXXXXX. BW uses this same identifier in all function module calls that relate to a single load.
    I_DSOURCE (import) The name of the generic extractor
    I_MAXSIZE (import) The maximum number of records that BW expects to be in each data packet
    I_INITFLAG (import) A Boolean flag that indicates if this is the initialization (first) call to the function module
    I_READ_ONLY (import) A test flag not needed in most extraction scenarios
    I_T_SELECT (table) This table holds any selections from the BW InfoPackage. The function module should examine these selections and only return data that matches the selections.
    I_T_FIELD (table) This table holds the fields that BW requests
    E_T_DATA (table) The function module fills this table with data records. These records then return to BW as data packets. This table has the same structure as the extract structure defined in the generic DataSource.
    NO_MORE_DATA (exception) The function module raises this exception when no more data is available
    ERROR_PASSED_TO_MESS_HANDLER (exception) The function module raises this exception if an error occurred during the extraction. It alerts BW to check for error logs.
    Change following code to put the selection fields
    Select ranges
    RANGES: L_R_CARRID FOR SFLIGHT-CARRID,
    L_R_CONNID FOR SFLIGHT-CONNID.
    Change following to populate data
    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.
    Some more links:
    Re: functionmodule
    Re: FM for G. extractor
    with hopes
    Raja Singh

Maybe you are looking for

  • Shared Library with Home Sharing off??

    I am using itunes with 2 different macs (most recent mac pro and most recent MBP). My MBP has the library I am sharing, which I use to play it on my Mac Pro. So when I have home sharing on, I see the little house icon, with my library from my laptop

  • Unexpected error in CreditFlow

    hi...Mike/Edvin... the following error occurred while running my "AsyncCreditFlowBPELProcess" process, in which i followed the "CreditFlow" tutorial it starts down the lines! Oracle BPEL Process Manager Full Cycle An unexpected error has occurred whi

  • SCSCLIENT archive not available for V5R4

    Hi, For WebAS Java standalone Node. According to SAP Note  Note 860538 - Configuring UME against central ABAP system I need to install SCSCLIENT<bit>UC_*.SAR  for my OS We have iSeries V5R4 server and in service market place I couldnt find the file.

  • Fade out effect in applet

    How would i go about making a fade out to white effect in an applet on like an image or something of the such?

  • Syncing with ical

    Please help! I haven't used iCal on my laptop, only on my iPhone. I have downloaded "US Holdiays" on to iCal on my laptop, and now I can't sync them to my phone. When I try to sync, it syncs forever and never ends. Does anyone know what I am doing wr