ABAP Data Flow v. Data Flow

This may be a question of preference, but I’d like to get some expert opinions on this topic. While I’ve worked with ABAP DFs before, this is my first experience with extracting data through an SAP Application Data Store.

As a general practice, would you recommend joining tables within the ABAP Data Flow, or would you recommend extracting the tables in the ABAP Data Flow, then joining the tables in the Data Flow (outside of SAP Application)?

If ‘it depends’, what factors would determine your decision?

I know I should ‘tread lightly’ when running ABAP in an SAP Production environment, but at what point should I move query/processing to DS?


abooth (BOB member since 2011-07-08)

To me, the whole point of using ABAP data flows is so you can join tables. If you are only going to do table pulls, what benefit do you get from ABAP ?

Is just adds move moving parts…


Leigh Kennedy :australia: (BOB member since 2012-01-17)

Thanks Leigh, good point.

In playing around with it more, there are some things that can’t be done in a query within an ABAP data flow (ex: function call).


abooth (BOB member since 2011-07-08)

I’ve found ABAP dataflows to be a bit of a black art. I have built some very complicated ABAP dataflows which worked fine and some simple ones that caused no end of issues. I suspect that the problems are casued by the underlying SAP application layer and/or tables.

Here are some of the oddities that I’ve experienced:-
Moving tables around on the dataflow screen can cause different code to be generated!
Having to add the same table multiple times as the ABAP dataflow seems to ‘forget’ about the table
Extracting from wide tables causing RFC timeouts (so I had to restrict the number of columns I selected)

So it really seems to be a case of ‘suck it and see’.


Nemesis :australia: (BOB member since 2004-06-09)

There are limits to how much data you can pull directly, and it’s memory intensive as well. Also, the job runs in foreground/dialog mode in SAP.

On the flip side, with ABAP you are limited in the functions you can use, the code generated can change in unexpected ways, and the process of going through a transport file is slow and has other potential problems.


craiggsmith (BOB member since 2009-06-01)