Difference between ABAP,BAPI and IDoc stages!!

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
Bilwakunj
Participant
Posts: 59
Joined: Fri Sep 10, 2004 7:00 am

Difference between ABAP,BAPI and IDoc stages!!

Post by Bilwakunj »

Hi,
Can someone please help me understand when ABAP stage should be used to extract data vs. BAPI? What is the main difference between these 2 techniques? And when one is supposed to use the IDoc stage?

Thanks !!!
mail2hfz
Premium Member
Premium Member
Posts: 92
Joined: Thu Nov 16, 2006 8:51 am

Post by mail2hfz »

BAPI is synchronous call(constant connection to SAP SYSTEM) to SAP system while IDoc is asynchronous .For few records BAPI works ok but for huge no of rows IDoc is better optiopn.
ABAP stage creates ABAP program which inturn extracts rows
thebird
Participant
Posts: 254
Joined: Thu Jan 06, 2005 12:11 am
Location: India
Contact:

Re: Difference between ABAP,BAPI and IDoc stages!!

Post by thebird »

Bilwakunj wrote:Hi,
Can someone please help me understand when ABAP stage should be used to extract data vs. BAPI? What is the main difference between these 2 techniques?
ABAP Extract stage generates ABAP code from the SQL that you provide for extracting data from the R/3 tables. This ABAP program is then loaded onto the SAP server and when the job is executed this ABP program executes, fetching data from the source table. You have the option to run this ABAP program in the background mode by using the FTP method of data transfer instead of the default CPIC method. By running the ABAP program in the background, you can overcome any time-out that may arise due to the ABAP execution exeeding the timeout set in R/3.

BAPIs are RFC enabled Function Modules that can be used to extract or load data from/to SAP. The BAPI stage does not let you run the BAPI in the background, and so can cause the job to abort mid way if the runtime exceeds the timeout period. For data extraction, BAPI stage is used for low volumes.

For extraction involving multiple/complex joins and huge data volume, ABAP extract in FTP method with the ABAP program running in the background mode is employed.
And when one is supposed to use the IDoc stage?
When the data volume to be extracted is huge and is available in Idocs, an Idoc stage can be used.

Aneesh
Post Reply