cancel
Showing results for 
Search instead for 
Did you mean: 

Extract aggregate data from R/3

Former Member
0 Kudos

Hello SDN,

we want to extract data from a table in R/3 which helds detailed data - much more detailed than we like to query in BW. Of course we can do aggregation in BW

but in fact we are not interested in the detailed level so why transfer the detail?

In our case we extract about 5 Mill. records (in one request!) but in the end we are writing only 100.000 to the ICube.

As an example you can imagine AMOUNT to be held at item level but we only want to extract at document level.

I suppose that this is a very frequent requirement and I guess that somebody might have come across it.

Currently I am thinking about using a function module to do it.

What would be the best way to do it in terms of performance?

Using DB Cursors? Collect? Select ...group by?

Thanks for sharing your experience and kind regards

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi Joachim,

if you realy want to implement a generic extractor, I think the best way is a Select ... Group by. This expression works directly on the database. That's in most cases the best way.

Hope this helps.

regards

Alexander

Former Member
0 Kudos

Hi Joachim,

why will you spend a lot of time and money to create your own aggregation within a abap whereas BW, a ODS-Object or a Cube will do that for you. You have to read the data anyway. So the only difference is the number of records transferred from R/3 to BW. So just go and extract the detail and summarize it in BW.

By the way: If do an initial load of COPA data it is easily possible that you will extract 20 and more Million records.

regards

Siggi

Former Member
0 Kudos

Could you not create a view with only fields that are required for level of detail needed? You could then build a generic extractor on this view...