Sie sind auf Seite 1von 16

How does a datasource communicates "DELTA"

with BW?
Posted by swapna gollakota in swapna.gollakota on 27-Dec-2007 10:10:43
inShare

Is it not interesting to observe the data source behavior which is having delta capability on how it
sends the data to BW?
If you say yes....Here is the blog which has captured the entire movie on how a data source
communicates the delta with BW.

What is Delta?

It is a feature of the extractor which refers to the changes(new/modified entries)occured in the


sourcesytem.

How to identify?

In ROOSOURCE table, key in the data source name and check the field "DELTA".
If the field is left blank,it implies that the datasource is not delta capable.

The field 0RECORDMODE in BW determines how a record is updated in the delta process.

Now the question is how this delta will be brought to BW?


Using one of the following ways:
ABR: After before and Reverse image
AIE: After image
ADD: Additive image

ABR: After before and Reverse image

Example: Logistics
What is it?
Once a new entry was posted or an exiting posting was changed at R/3 side, an after image shows the
status after the change, a before image shows the status before the change with a negative sign and
the reverse image also shows the negative sign next to the record while indicating it for deletion. This
serializes the delta packets.
What update type ( for key figures) it supports?

Addition
Overwrite
Does it support loading to both infocube and ODS (DSO)?
YES
Technical name of the delta process:ABR
Brief overview:
You will find two types of ABR delta processes in RODELTAM table depending on serialization.

ABR with serialization "2" means serialization is required between requests while sending data
but not necessarily at data package level.
ABR1 with serialization "1" means no serialization.

Since it can be used for both infocube and ODS, let's consider a scenario where in the loading
happens directly to ODS (Advantage: we can track the record changes in change log table)
For ODS/DSO, the field ROCANCEL which is part of the data source holds the changes from R/3 side.
ROCANCEL serves the same purpose at R/3 side which its counterpart 0RECORDMODE does at BW
side. This field for the Data Source is assigned to the Info Object 0RECORDMODE in the BW system.
Check the mapping in Transfer rules(applicable to BW 3.5):

Note:0STORNO AND 0ROCANCEL both are one and same.


In our case, ODS is set to additive mode so that the data source sends both before and after image
Incase if it is set to overwrite, it sends only after image
How it works?
Let's check the new entry in ODS.

Note:I have taken an example of ODS which contains CRM data.


Now in the source sytem, the value of CRM gross weight (CRM_GWEIGH) has been changed to 5360
In order to reflect this change, data source will send two entries to BW:
One is before image with negative sign to nullify the initial value

And the other one is after image entry (modified value)

Upon activation , the after image goes to active table.

After image delta process:

Example: FI-AP/AR
What update type (for key figures) it supports?
Overwrite Only
Does it support loading to both infocube and ODS (DSO)?
No, only ODS/DSO
Technical name of the delta process: AIE
Brief overview:
We have after images with (AIM/AIMD) or without delta queue (AIE/AIED) .

Here, serialization is required between requests, because the same key can be transferred a number of
times within a request.

How it works?
Initially the target (ODS) was loaded as shown:

The value of CRM gross weight (CRM_GWEIGH) has been changed to 5360 in the source sytem.
This time,data source sends only one entry i.e. after image which will hold the change.

The final entry after activation in the active table:

Additive delta process:

Example: LIS datasources


What update type( for key figures) it supports?
Addition Only
Does it support loading to both infocube and ODS (DSO)?
YES
Technical name of the delta process: ADD
Brief overview:
In RODELTAM table,we have two types of additive delta processes:

ADD without delta queue and

ADDD with delta queue

The extractor provides additive deltas that are serialized on a request basis.
This serialization is necessary since the extractor provides each key once in a request, and changes to
the non-key fields would otherwise not be transferred correctly.
How it works?
Check the initial entry in ODS.

The value of CRM gross weight (CRM_GWEIGH) has changed to 5360


Here, the data source sends an entry with value 1,267 with + sign.

Upon activation, check the final entry in active table which is the result of (4093+1267=5360) KG

9733 Views

Average User Rating


(22 ratings)
My Rating:
inShare

37 Comments

Aravinda Ganguri 28-Dec-2007 05:15

Hi Swapna,
its intresting. I have one simple question.sounds silly,
are we using the 0recordmode in 3.5 version???
Like (0)

o
Raj Bharatpur 28-Dec-2007 10:40 (in response to Aravinda Ganguri)

Yes, we have 0RECORDMODE in 3.5.


Like (0)

Vasu Mullapudi 22-Apr-2010 07:08 (in response to Raj Bharatpur)

Very Useful. I got many of my doubts cleared with this blog. Particularly I
wasnt clear how FI extraction uses 0Recordmode until I read this blog.
Thank you very much
Like (0)

o
swapna gollakota 28-Dec-2007 17:46 (in response to Aravinda Ganguri)

Hi Aravinda,
Sorry for the delay in reply.since i was in off i couldn't able to answer you.
the answer is YES,0recordmode is the fundmental requirement to carry on delta.It
helps in identifying delta .You can check the different types of it as explained in this
blog.
Like (1)

Sreedhar M 28-Dec-2007 22:11

Hi Swapna,
Nice blog, i have few doubts, as you mentioned in delta type ABR (After, Before, Reverse)
images, in the example you have shown the datasource only sends two records one is after
image and the other is before image, then my doubt is where is the reverse image.
The second one is you also mentioned that based on the ODS/ DSO update of key figures like if
we set it to overwrite then the datasource will send After image and if we set it to addition it
will send after and before image.
if based on the ODS settings the datasource sends the images then whether the datasource is
having AIE or ABR the records it will send depend on the ODS settings.

Please clarify.
thanks and regards
Sreedhar
Like (0)

o
swapna gollakota 08-Jan-2008 04:51 (in response to Sreedhar M)

Hi sreedhar,
A1:Reverse image comes into picture when there is a requirement to delete the
request.
say, in our case we have the record as shown below:
RECORD CRM_SALESORG RECORDMODE CRM_GWEIGHT
203
14000420
N
4,093
Now in the source sytem the record was deleted,this change will be reflected in BW as
shown below.
RECORD CRM_SALESORG RECORDMODE CRM_GWEIGHT
203
14000420
R
4,093if you observe closely,you will see this is some what resembles before image (observe
the negative sign) BUT with record mode "R"

A2:Based on ODS keyfigure update mode(overwrite/addtion) the datsource sends the


after/after and before images.
This flexibility is only possible if the datasource is ABR capable.
incase of After image,it is mandatory that the ODS update mode should be set to
"overwrite"

Hope you are clear..


please post if you have any other query.
Regards,
Swapna.G
Like (0)

Prince Joseph 15-Apr-2008 08:32 (in response to swapna gollakota)

Hi Swapna,
I notice that for certain Master data attributes, there are 2 datasources
available. The difference I could notice is that, the Delta process for one would
be 'A - ALE Update Pointer (Master Data)' and for the other one, it would be
AIMD.
For example, for Business Partner there are 2 datasources.
0UCBU_PART_ATTR - Delta process = A
0UCBU_PART_ATTR_2 - Delta process = AIMD.
Since I think that the DS, 0UCBU_PART_ATTR_2 is the more recent version, I
activate that. And while doing that I get a warning message saying
'Datasource with Delta process AMID requires a cancellation field.'
What is this message? In your experience, which one would you chose? Are
there any implications? Your opinion would be helpful.

Regards,
Prince
Like (0)

swapna gollakota 18-Apr-2008 02:29 (in response to Prince Joseph)

Hi Prince,
ususally for masterdata the conventional delta update was ALE
the problem with this delta mode is ,we don't have repeat delta
option incase if the delta fails ,here we are forced to do init with data

with AIMD :After Images with Deletion ID Using Delta Queue (e.g.
BtB)
as the description suggests the delta process uses delta queue
and here you need to specify the deletion ID/cancellation
field(INVFIELD)as well

check this sap note:


If a DataSource implements a delta process that uses several
characteristic values, the indicator must be a part of the extract
structure and be entered in the DataSource as a cancellation field
(ROOSOURCE-INVFIELD).
cheers,
Swapna.G
Like (0)

krishnamurthy g 18-Oct-2010 04:30 (in response to swapna


gollakota)

Hi Swapna,
we have one standard table with key PO and Item.
created generic data source on this table enabling by generic
delta on date (ERDAT) and given lower limit as 2 days.
we are in BI7.0 version.
we dont have 0STORNO AND 0ROCANCEL fields available in
the data source.
so we are not mapped the 0RECORDMODE.
But delta is working fine.
issue is it is not fetching the deleted records.
ex: we have one PO(1234) item 1 having key-fig value 50.
loaded in to BI DSO.
then we deleted this record in R/3.

created the same PO(1234) with 3 tiems(2,3,4)keyfig values


10,20 and 20.
when extracted data in BI, DSO showing 4 entries. with keyfig total as 100.
Please suggest if i have to do any settings.
Thanks,
Krishna
Like (0)

Sekhar raya 16-Jan-2008 03:36

Hi,
i have a small doubt. i mapped to rocancel 0storno is it wrong or right. we can map either
0storno or 0recordmode.plz give me clarification on this.
my another doubt is when i can use the addition option in ODS setting.
Like (0)

o
swapna gollakota 17-Jan-2008 04:37 (in response to Sekhar raya)

Hi,
In the transfer rules you need to map 0record mode with 0STORNO or 0ROCANCEL
as i mentioned in the blog 0STORNO AND 0ROCANCEL both are one and same
A2:you can use the addition option in two cases;
Datasource supports ABR delta type (which you can check in ROOSOURCE) table
Datasource supporting ADD delta type
Like (0)

Derya Akcakaya 28-Jan-2008 15:27

Thanks for the nice info.


What does 'U' in rocancel means?
Like (0)

Anup Kulkarni 25-Feb-2008 20:45

Hi Swapna,
Please correct me if I am wrong.
All the scenarios explained by you above should run perfectly fine even if 0RECORDMODE is
not mapped in transfer rules as long as ' ' image comes after 'X' image.
Not mapping 0RECORDMODE in transfer rules defaults value ' ' to this field which is nothing
but after image.

0RECORDMODE is useful only when you want to capture deletion. For example, an 'R' image is
not followed by a ' ' image in data source. In such scenario, if 0RECORDMODE is not mapped,
ODS with Overwrite setting overwrites NEGATIVE 'R' value in its existing record which is wrong
result.
So can I conclude that mapping 0RECORDMODE in transfer rules is useful only for ODS with
OVERWRITE setting and only when data source is sending 'R' and 'D' images as well.
Are there any other scenarios where it is useful?
Thanks,
Anup
Like (0)

o
swapna gollakota 28-Feb-2008 22:48 (in response to Anup Kulkarni)

Hi,
one point on which i want to emphssis is irrespective of delta method(ABR/AIE/ADD),in
the transfer rules/transformation 0RECORDMODE needs to be mapped to 0rocancel.
all the changes happened at sourcesytem should be communicated to BW
0rocancel in the sourcstem side and 0record mode from Bw side will serves the
purpose
0RECORDMODE is mandatory and is th one only identifying tooll to capture all the
modifications happened to one particular record.
Regards,
Swapna.G
Like (0)

Anup Kulkarni 29-Feb-2008 00:40 (in response to swapna gollakota)

Yes, I agree that it is always safe to map 0recordmode.


Now consider a scenario in which data source sends only new or changed
records and 0recordmode is not mapped in transfer rules(every record is
interpreted as after image ' ' by data target).
Then I revisit all the scenarios explained by you with this presumption. The
results obtained will still be perfectly fine irrespective of delta
method(ABR/AIE/ADD).
So, mapping of 0recordmode doesn't matter as long as your data source is
sending only new or changed records.
The problem arises when you want to capture the deletion!
Am I right?
Regards,
Anup
Like (0)

swapna gollakota 02-Mar-2008 22:01 (in response to Anup Kulkarni)

Hi,
Frankly i am not sure the senario where in 0recordmode is not used
,thus causing the system to take after image as defualt value.
(please mention the OSS note /book etc..you referred to cross check
this)
even if we assume the above statement is correct..the filed
value"after image" should be related to some info object..i mean what
is responsibile even for producing after image (what is that default
filed/info object name)...?
Please provide the details..i will verify and let you know?
Regards,
Swapna.G
Like (0)

Anup Kulkarni 03-Mar-2008 21:56 (in response to swapna gollakota)

Every ODS/DSO has a field 'recordmode'. You can verify this


in /BIC/A
Like (0)

swapna gollakota 25-Mar-2008 02:41 (in response to Anup


Kulkarni)

Hi Anup,
sorry for the late reply....
First of all let me appreciate your analysis...it
motivates me to further dig my analysis and unearth
the technical concepts of it...
i will certainly come back to you about the details
..with explanation
Regards,
Swapna.G
Like (0)

Sunmit Bhandari 28-Apr-2008 02:03 (in response to Anup


Kulkarni)

Hi Anup ,
Would having record with ' ' record mode work safely
in case of Additive image process , considering that
the record incoming to the ODS would not be having
'A' in its record mode would it be added to the
previous value.

Regards,
Sunmit.
Like (0)

Rahul Me 28-Feb-2008 01:43

Hi Swapna,
Your blog is very informative. I have a samll doubt, you have mentioned that 0RECORDMODE
needs to be mapped to 0STORNO if the Delta is ABR. You have not mentioned anything as to
which info object it needs to be mapped in case of AIE.I am not sure as I dont have ROCANCEL
in the table on which I have built a custom data source. Please let me know your suggestions...
Thanks a lot.
Like (0)

o
swapna gollakota 28-Feb-2008 22:50 (in response to Rahul Me)

Hi,
one point on which i want to emphssis is irrespective of delta method(ABR/AIE/ADD),in
the transfer rules/transformation 0RECORDMODE needs to be mapped to 0rocancel.
all the changes happened at sourcesytem should be communicated to BW
0rocancel in the sourcstem side and 0record mode from Bw side will serves the
purpose

Regards,
Swapna.G

Like (0)

RAJESH GUNDOJI 26-Apr-2008 18:00

CAn you tell me difference between Delete 'D' & Reverse Image 'R' for 0RECORDMODE. If both
mode s do deletion why they gave us 2 options?
Thanks
Rajesh
Like (0)

o
swapna gollakota 26-Apr-2008 19:09 (in response to RAJESH GUNDOJI)

Hi Rajesh,
Not all datasources are capable of sending reverse images except for ABR
for AIE and ADD delta processes,deletion of a request will be represented by "D"
where as for ABR the deletion process happens by sending a reverse image

cheers,
Swapna.G
Like (0)

RAJESH GUNDOJI 27-Apr-2008 10:57 (in response to swapna gollakota)

please can you tell me why ABR sending Reverse image when there is option
to send Delete ..
any particular reason ?
Thanks
rajesh
Like (0)

Vishnuvadhan K 08-May-2008 01:52

Hi Swapna,
It's a nice blog. I have a different scenario here. We load our ZCUSTOMER/ ZPARTNER from
data source 0CUSTOMER_ATTR . There are some fields added to this data source but this fields
are not delta enabled i.e. when these fields change in R3 it does not write to Change Pointers (
and hence no delta ). For this reason every week we have to do a full load which takes very
long.
Can you suggest how to check & make these new fields delta enabled?
Regards,
vishnu
Like (0)

Vishnuvadhan K 08-May-2008 02:42

If i check the Delta Field status for this Data source 0CUSTOMER_ATTR, it is showing 'E'. please
sugest what it means.
Regards,
Vishnu
Like (0)

o
swapna gollakota 19-May-2008 05:10 (in response to Vishnuvadhan K)

Hi
You can check it in RODELTAM table
E:Unspecific Delta Via Extractor (Not ODS-Compatible)
it is purely your business specific..

cheers,
Swapna.G
Like (0)


Mallikarjuna Edapalapati 19-May-2008 04:18

Hi Swapna
Your Blog is very useful
I have a small doubt: In ur example of ABR,Even if ODS is set to Additive/Overwrite,
Then same result we r getting
Additive:4093->5360
N
4093
X
40935360
----5360
-----Overwrite:N
4093
After Image
5360, which overwrites the previous value
----5360
-----Then when we use Additive ,and when we use Overwrite?
Plz clarify
Thanks
Like (0)

Mallikarjuna Edapalapati 19-May-2008 04:18

Hi Swapna
Your Blog is very useful
I have a small doubt: In ur example of ABR,Even if ODS is set to Additive/Overwrite,
Then same result we r getting
Additive:4093->5360
N
4093
X
40935360
----5360
-----Overwrite:N
4093
After Image
5360, which overwrites the previous value
----5360
-----Then when we use Additive ,and when we use Overwrite?
Plz clarify
Thanks
Like (0)

o
swapna gollakota 19-May-2008 04:33 (in response to Mallikarjuna Edapalapati)

Hi Arjun,

Incase of additive Delta mode,in changelog you will can track all the changes
pertaining to a record as you mentioned
when it comes to decide between Additive/Overwrite,it depends on what type of
target you are loading.
if it is infocube with ABR delta method, you have only one choice i.e additive
Incase od ODS/DSo it is purely based on yor business requirement ,you can select
either of the methods
cheers,
Swapna.G
Like (0)

Vijaya Salagundi 25-Jun-2008 22:35

Hi Swapna,
THis is blog is very much useful.
Thanks & Regards,
Vijaya
Like (0)

Thomas Balle 06-Aug-2008 04:27

Hi,
very nice blog! In this blog the following in stated:
"In our case, ODS is set to additive mode so that the data source sends both before and after
image
In case if it is set to overwrite, it sends only after image"
However, in another blog (The Tech details of Standard ODS / DSO in SAP DWH) it says:
"In the above example Material (1) and Plant (1) has the before image with record mode
"x"(row 3 in the above Fig) And all the key figures will be have the "-" sign as we have opted to
overwrite option and the characteristics will be overwritten always."
In case you choose overwrite, will both before and after images be sent to BW? This blog says
no, the second blog I mentioned says yes...
Thanks for your help!
Thomas
Like (0)

Thomas Balle 06-Aug-2008 04:29

Hi,
very nice blog! In this blog the following in stated:
"In our case, ODS is set to additive mode so that the data source sends both before and after
image
In case if it is set to overwrite, it sends only after image"

However, in another blog (The Tech details of Standard ODS / DSO in SAP DWH) it says:
"In the above example Material (1) and Plant (1) has the before image with record mode
"x"(row 3 in the above Fig) And all the key figures will be have the "-" sign as we have opted to
overwrite option and the characteristics will be overwritten always."
In case you choose overwrite, will both before and after images be sent to BW? This blog says
no, the second blog I mentioned says yes...
Thanks for your help!
Thomas
Like (0)

Brian Yang 10-Feb-2009 17:45

It is a really nice blog and it help me to clarify some technical detail.


Thanks for your kindly sharing. Please keep on your great job!
Like (0)

Dilip Kumar Reddy Thomatam 29-Jun-2009 19:50

Hi Swapna,
Great job!!! very usefull
Like (0)

Handoko Cen 17-Oct-2010 20:04

Hi Swapna,
I have one doubt regarding the blog. Please help to make my understanding clearer.
In delta type ABR, you mentioned :
"In our case, ODS is set to additive mode so that the data source sends both before and after
image
Incase if it is set to overwrite, it sends only after image"
However, in my testing, both additive and overwrite option in ODS update rule gave two
records in ODS change log table.
Please advice. Thanks.
Like (0)

Dileep Kumar Reddy C 05-Feb-2013 19:34

Hi Swapna,
Thanks for sharing the information on delta mechanism.It is very worthful and also useful for
my analysys.

Das könnte Ihnen auch gefallen