Intervals with generic delta extraction
Hello,
Can some1 explain when do we use intervals in generic delta extraction with a good example?
Thanks in advance.
Regards,
KS
Hi,
Safety Interval Upper Limit
The delta-relevant field is a timestamp.
The timestamp that was read last is 12:00:00. Delta extraction begins at 12:30:00. The safety interval for the upper limit is 120 seconds. The safety interval for the delta request is: 12:00:00 to 12:28:00. Upon completion of the extraction, the pointer is set to 12:28:00.
Safety Interval Lower Limit
The delta-relevant field is a timestamp. After images are transferred. In other words, the record is overwritten with the status after the change in BW, for example for master data. Any duplicate records that appear have no effect upon the BW system.
The last changed timestamp is 12:28:00. Delta extraction begins at 13:00. The safety interval for the lower limit is 180secs. The safety interval for the delta request is: 12:25:00 to 13:00:00. Upon completion of the extraction, the pointer is set to 13:00:00.
refer to this link.
http://help.sap.com/saphelp_nw2004s/helpdata/en/3f/548c9ec754ee4d90188a4f108e0121/frameset.htm
Hareesh
Similar Messages
-
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 via Function Module
Hello,
i need a help for a generic delta extraction based on a Function Module. As an example i take the function module RSVD_BW_GET_DELTA_DATA.
My generic delta extractor based on the field AEDAT - Change Date and i will extract purchase service orders and entry sheets.
In the sample function module the select for the extraction worked with the table ROBWQTSTAT, but this table ist empty after the initialization.
OPEN CURSOR WITH HOLD G_CURSOR FOR
SELECT * FROM ROVERCUBE1
WHERE COUNTRY IN L_R_COUNTRY AND
REGION IN L_R_REGION AND
KUNNR IN L_R_KUNNR AND
TYPE IN L_R_TYPE AND
GJAHR IN L_R_GJAHR AND
Here the timerange calculated in form GET_TIME_INTERVAL is evaluated.
TSTMP IN S_R_TSTMP AND
OBJVERS = 'A'.
I found the table ROOSGENDLM. In this table i found the field DELTAID with the last date of the extraction and the field REPEATID with the date for the repead-Update.
My Questions:
Is this the right way to build an generic delta extraction with an function module or must i install a coding in my function module for an update of the table ROBWQTSTAT?
Which settings are needed in the table ROOSOURCE for a generic delta extraction via function module?
Best regards
UweHi Uwe,
please have a look at https://weblogs.sdn.sap.com/pub/wlg/2415. [original link is broken] [original link is broken] [original link is broken] It might help
kind regards
Siggi
PS: We already had almost the same question here today. -
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 -
Hi,
In Generic delta extraction for function module which generic delta we can use
1)Time stamp 2)CAL day 3)Numeric pointer?
What safety upper limit and safety lower milit in time stamp?
When we use safety upper limit and lower limit in Time stamp and numeric pointer?
If possible give 1 scenario for this question
Thanks,Hi,
Delta with data transfer, you do an init with all the data and marke the requests as delta. The next request will bring the new records and modifications as a normal delta.
Without data transfer, you're only marking the request as delta, the init don't bring any data. Only next deltas will bring new and modified requests.
Normally you'll use init with data transfer and deltas after it.
But imagine you already have an init of a datasource to a Dataprovider, but you'll want to connect that datasource to a new one. Since you already have an init to a first dataprovider, connect it to another new dataprovider, you won't be able to start a new init with data trasnfer to the new dataprovier (without deleting the old one). Therefore, you could bring a full of all the data to the new dataprovider, after that, delete the init flag of the old dataprovider, and create a new init without data. Therefore, the old dataprovider, since already had all the data before, you're only deleting the init flag and create it again, the new dataprovider, you already had sent the data with a full load, so marking the init flag, after that sending deltas will bring new and modified requests to the two dataproviders as what you want.
Please go through the below links,
Re: Generic extraction
Re: Generic Extraction-example
Re: Numeric Pointer Option on Generic Delta Screen
Hope it helps you,
Thanks & Regards,
Ravi. -
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,
AnuradhaHi 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 -
Generic Delta Extraction (Bill Plan Data)
Hi BW Gurus,
We need to cerate data source from Bill plan extractor.
Please note that there is no SAP standard extractor for the bill plan data. So that is the reason we are using generic extractor (RSO2). We were using sales order delta extract program to find out the changes in bill plan data and there was routine in that extract which updated the custom table. But, soon they have to get rid of this design, because they observed that all the changes being done to bill plan were not being captured in the sales order delta extract. So, they have to go ahead with a full extract instead of the delta extract for bill plan data. Now we need to create design so we can do a delta extract on the billing plan data.
Please advice me ASAP.
In Advance Many thanks for your help.
Regards
SAP TeamYou could use the date field instead , you could have a lower safety interval and then when you do the delta again the records included in the lower safety interval are included. As for delta with timestamp , I have a question what is the timestamp used for delta - is it UTC Timestamp or the date and time concatenated together. UTC Timestamp did not seem to work for me and I did not have the luxury of having a concatenated timestamp.
When I checked the base tables for delta maintenance , I found both timestamps and am confused as to what timestamps to use.
Arun
P.S I have a current delta with changed date and a lower safety interval of 1 day and it is working fine so far. -
Safety Intervals for Generic Delta
Hello Gurus,
I want to know about safety upper limit and lower limit for generic delta.
I have gone through the previous threads related to this topic and i am not able to understand completely.
can anybody explains me this in detail with example in terms with Calday, Timestamp & Numeric pointer.
Thanks in advance.There is very good example was exist on wiki.
please search and help yourself.
Use Google search by using search term " wiki generic delta".
You will get what you need. -
Error with Generic delta extractor when checking in RSA3
Hi,
I have created one Test Generic Datasource based on Table MARA.Delta specific field I mentioned is LAEDA(Last changed On). After creating I have generated the datasorce also. But when I check the datasource in RSA3, I am getting error if Update Mode is "D". Error is "An error occurred during extraction". I am not seeing this datasource in RSA7 (Delta Queue).
If I say Update Mode is "F", then extractor is working fine.It is fetching some records.
Your help will be appreciated.
Thanks
Sirineni.Hi Sirneni,
Is your Init load in BW successfull. Only after
successfull completion of init load in BW the data source appears in delta queue RSA7 in R/3. Also check whether any materials are being changed in R/3 because u r delta is based on last changed date.
Regards,
Prakash B -
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. -
Generic Delta with numeric pointer (Without safety interval and no field)
Hi
We have problems with Generic Delta extraction. Our previous Dev has created the data source with numeric pointer as the data source without any safety interval and without any field for numeric pointer selection even we have the date field (creation and change dates in view)....
He created the generic delta with numeric pointer and Additive delta selection on top of view (EKKO,EKPO and EKKN). So we are missing lot of records. Now I need to fix this asap, I have done generic delta with timestamp and cal day with change/creation date.
Now in order to fix our delta loads should I use the cal day as the delta pointer with change or creation date already available or is it ok to use numeric pointer with additive delta and safety lower limit as 10 or 20 with upper limit blank?
Also Should I use any field in the field nm section or is it ok to leave it blank ? Please advice...
Note: I checked the missing delta records in ECC and the change timing is in the afternoon and our load time is only night...We also have several other data sources with same settings (numeric with no safety and no field) but it is not giving any issues.
Thanks
Edited by: ganesh uttitti on Jan 26, 2011 10:33 PMHi Ganesh ,
I'm a little confuse,Why are you not use LO Delata for it? -
Delta Extraction - Generic Datasource
Hello Guys,
I have an issue related with the delta extraction for a generic DS. I have a DS setup with
a generic delta for a calendar day and safety interval upper limit 1. So i think that for some reason no all values are loaded in the
delta load. Please help me to find the best approuch for this.
Regards,
Iván.Hi,
Hope below links are helpful for you to find the best approuch
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/84bf4d68-0601-0010-13b5-b062adbb3e33?quicklink=index&overridelayout=true
Generic delta safty intervals
Regards,
Vinay -
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!
BillyDelete 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. -
Is it possible to work with generic delta with timestamp without time chracterstics , and calday with out date feilds.
PLZ can any one provide reply to my thread.
Edited by: aumdeepa on Aug 5, 2011 11:47 AMIf it failed in BW (request is red) and you do a delta - system will ask to mark it a 'repeat' because the last one failed. When you choose 'repeat', it is going to let the extractor know that it is a repeat delta.
In this case, it will extract data from 25th to current date (both last and current delta).
Repeat delta will work the same, just that the lower and upper limits will be applied to the selection of the delta field.
Lower limit -> adjust back the lower selection value by this value
upper limit ->Adjust back the upper selection value by this much.
upper limit 1, lower limit 1 (by the way lower limit isn't usually applicable in real situations)
Ran delta on 20th first time
Select all data upto 19th (adjusted due to upper limit)
Ran again on 23rd
Select from 19th (ie 20 - 1 due to lower limit 1) upto 22nd (ie 23 - 1 due to upper limit)
Ran on 27th
Select from 21st (22 - 1 due to lower limit 1) upto 26th (27 - 1 due to upper limit) and so on.
Repeat delta will follow this logic but will also bring the selection that was executed in the last delta run.
Hope it clears. -
Problems with Delta Extraction for 0CRM_OPPT_H (no data found)
Hi,
I've some problems with the Delta Extraction of the Infosource 0crm_oppt_h (CRM Opportunities Header). After initialization I get no delta data from the CRM system.
What I already did:
Activated 0crm_oppt_h Data Source (checked functionality with rsa3)
Started Info Package (Init) on BW side (worked fine)
Checked the status of the Data Source on the CRM system using BWA7 ("initial upload" is unmarked; "delta active" is marked and what makes me worry is that the column "Queue exists" in <i>unmarked</i>...)
If I change anything (like Phase, Expected Sales Vol.) in the opportunity, the Delta Extraction get no changes.
Could You help me out, please?
Best regards,
Markus Svechi Markus,
try to check oss note 788172
Release Status Released for Customer
Released on 23.03.2005
Priority Correction with high priority
Category Program error
Symptom
No data exists in delta extraction from the CRM server to the BW system for business transactions, if parallel processing is applied as per note 639072. But Data is extracted if parallel processing is switched off.ie. when BWA_NUMBER_OFF_PROCESSES is set to 1,there is data during delta. This applies to the following DataSources:
0BBP_TD_CONTR_1
0CRM_COMPLAINTS_I
0CRM_LEAD_ATTR
0CRM_LEAD_H
0CRM_LEAD_I
0CRM_OPPT_ATTR
0CRM_OPPT_H
0CRM_OPP T_I
0CRM_QUOTATION_I
0CRM_QUOTA_ORDER_I
0CRM_SALES_ACT_1
0CRM_SALES_CONTR_I
0CRM_SALES_ORDER_I
0CRM_SRV_CODES
0 CRM_SRV_CONFIRM_H
0CRM_SRV_CONFIRM_I
0CRM_SRV_CONTRACT_H
0CRM_SRV_PROCESS_H
0CRM_SRV_PROCESS_I
Other terms
DataSources, BWA, initial extraction, delta init, parallel processing, no data in delta.
Reason and Prerequisites
There is an update on the generated delta table which causes data corruption in running delta initializations as the changed delta sets will be deleted with every further update on documents. An open cursor statement is there without fetch data in SMOX3_GET_DATA.
Solution
The problem is solved with the attached corrections.After applying the corrections a new initialization of the affected datasources is necessary.
Maybe you are looking for
-
Hi all This is without BPM scenario. I am doing a SOAP - XI - RFC - XI - SOAP scenario(this is a sync call)......also at the same time i am writing a file onto a directory in async mode. What exactly i want is ...when i receive file from SOAP...i wan
-
DVD player quit unexpectedly message?
I have a brand new MacBook Pro. When I load in any DVD I get a window saying "DVD Player quit unexpectedly". Is this something I didn't set up or do correctly? Or is there a problem that I need to go back to the store for repair?
-
Webpage won't load in e-Load, but works in e-Tester
I just installed v 8.20.0504, and the script that I created will run fine in e-Tester, but when I try to run it in e-Load, I get the following error at the beginning of each iteration. Driver Error -1, java.io.IOException: connect() failed, https:/<m
-
Hi, i have made user exit program. program logic is as follows. we maintain a 'z' table with material code & WBS element and when ever we create a p.o with account assingment 'q'. it needs to check the 'z' table whether the material code along with w
-
Installing / Configuring BW with miniWAS
Hi... I have a some questions regarding the installation and configuration of MiniWAS and BW, First of all, I have an IDES version of BW and miniWAS 1) Can i configure BW with MiniWAS(SAP DB)? Yes or No ? 2) Can I install BW on an EXTERNAL HARD DISK