SAP R/3 data extraction

Hi,
We have project requirement to extract the data from SAP R/3 system to load in to DWH and we are using SDS XI 12(BODI) as ETL tool. I am new to SAP and never extracted the data from SAP.
My client SAP source system guys told, they can extract the data either through Services or BAPI/functions.

I need help on which data stores do i need to use to extract the data for the above two options (Services, BAPI/functions) and how ?

Please share the steps to do this , if you have.

Thanks.


manjnandi (BOB member since 2010-06-25)

“Service” is the wrong term, I assume they meant “Service API” (=Extractors). This is not supported yet.

An example for BAPIs is here
https://wiki.sdn.sap.com/wiki/display/BOBJ/Calling+RFCs-BAPIs

The other option would be to read the data via the SAP tables, so to generate(!) with DataServices an ABAP that does a “select … from KNA1 where …” or so. Obviously can be used only if the data actually resides in tables and is not calculated on the fly (and the calculation is not simple to recreate in DataServices).


Werner Daehn :de: (BOB member since 2004-12-17)

Thanks Werner for your suggestions.
Architectural decision is , we have to extract the data calling functions and not tables.
I tried creating SAP datastore and tested extracting the table data. But i am not able to extract the data using functions. I am getting an error states: table doesn’t exist. Its actually referring to structure.
Basically functions are extracting data and writing into structures.
can you please help with an example (if possible) how to extract the data calling a function with structures.

I followed the tech manuals to create my SAP data store, in my installation, i couldn’t able to see ‘R3’ Application type , i have only ‘SAP application’. Do i need to install anything else to get this application type ? or Is SAP application will do. What is the difference between the two application type.
when i checked with the SAP functional consultant he told , no difference and both were same. Is that correct ?

If i adopt the functional call to extract the data , is it possible to write the data to a flat file ? from the Performance perspective which is better calling function or writing to file and extraction ?

Please help me.
Thanks


manjnandi (BOB member since 2010-06-25)

We renamed the “R/3 Application” into “SAP Application” but it’s a rename only.

Why don’t we start slowly. What data from SAP do you want to read? Some examples…


Werner Daehn :de: (BOB member since 2004-12-17)

Hi,

We need to extract loan data from SAP CML . As part of our tes ,We used functional module FVD_RFC_CONTRACT_GETDETAIL. This function modules returns all the data related to loan(s). The functional module expects two input parameters Company code and Loan contract no.

When we are calling this functional module, in the tables, it has updated the structures that are used within the function module but we are not getting data, the message is that’ no table found’.

We are enclosing document, containing the screenshot that could help you in understanding the process we are following.
SAP-function cal_testl.doc (257.0 KB)


manjnandi (BOB member since 2010-06-25)

Almost. Instead of adding the function as a mapping you should call it as new function call.
What you did is you right-clicked the output schema and said “New output column”. Choose “New function call” instead, select the RFC function and all the output columns and table parameters you want.


Werner Daehn :de: (BOB member since 2004-12-17)

Hi,
Thanks, for your suggestion.
Now i am getting the error (attached here)

Basically the function has 3 parameters : char, date and time data types. and the values i entered are

‘FCC’ , 20100630’, ‘21:58’

please let me know the data/time formats are correct are not.

FYR i also attached , how the parameter values which were passed in SAP ERP application and the output
ref.doc (93.0 KB)


manjnandi (BOB member since 2010-06-25)

I would use

to_date(‘20100630’, ‘YYYMMDD’)

as a mapping for the second parameter. For the time parameter I am uncertain myself.


Werner Daehn :de: (BOB member since 2004-12-17)