Purpose of this document is to showcase the functionality of SAP Business Objects Data Services to extract data from predefined SAP ECC datasources(Extractors) and load it in SAP HANA.

What are Extractors(Datasources) –

  • Extractor is a new object type available in SAP Application Datastores starting with Data Services 4.0
  • This object type represents SAP Business Suite Content.
  • There are two ways to consume the extractors: with the Operational Data Provider (ODP) interface or without.

Types of Extractors –

1     Application Specific-
These are SAP- predefined extractors.
This is predefined combination of different logical fields.
E.g. LO,FI etc.
2      Cross Application-
These are created when none of the SAP- predefined extractors meeting the business requirement.
Generic Data Sources will be created from :
Transparent tables
Database views or SAP query
Functional areas or via a function module

Steps to release the datasource(Extractor) from SAP ECC system :

 

Login to SAP ECC systems.

 

/wp-content/uploads/2014/09/login_534880.png

Use below TCODE to release the datasource(extractors) from ECC :

 

  • RSA5 – To view all supported datasources.
  • RSA6 – To view all activated datasources.

 

RSA56.jpg

LBWE – Activate/Maintain datasource

 

LBWE.jpg

SBIW – Delete/fill setup table

   

SBIW.jpg

RSA3 – to view the specific extractor data(Provide extractor name in datasource)

 

RSA3.jpg

Implementation :

Create Datastores in SAP BODS :

Create two separate datastore connection for SAP ECC and HANA :

DS1.jpgDS2.jpg

ETL steps to load Extractor data in SAP HANA :

Import the source extractor in SAP Application Datastore

Below is the structure for source columns :

  STRUCTURE.jpg

Create/import metadata in HANA.

Import the target table (below is the target table structure) :

 

TGT_Structure.jpg

Create a Batch Job.

 

JOB_DESIGN.jpg

Create a Dataflow and add it to the Batch Job.

Add the extractor to the Dataflow.

Open the extractor.

Make sure the Initial load drop down list box has the value Yes ( As we are doing Full refresh here) :

Extractor_option.jpg

Add a Query transform to the Dataflow and connect it to the extractor.

Add the target table to the Dataflow and connect it to the Query transform.

Open the Query transform and map the fields you want to retrieve.

Open the target table and check the “Delete data from table before loading” checkbox for initial load.

The resulting Dataflow should look something like this…

DF_design.jpg

Delta load :

  • Extract only the changed rows from the source.
  • It is also called incremental extraction.
  • This method is preferred because it improves performance by extracting the least number of rows.
  • When using Business Content Extractors, you have to check to see if the extractor you are using has delta recognition capabilities.
  • When you use an extractor that has delta recognition capabilities, it has the following two fields:
    • I for INSERT
    • B for before-image of an UPDATE
    • U for after-image of an UPDATE
    • D for DELETE

These two columns are used to process delta load :

DI_SEQUENCE_NUMBER – is used to determine the order in which the rows are processed. This is very important since there can be many updates to a single row and the updates on the target need to be applied in the same order as they were applied in the source.

 

DI_OPERATION_TYPE – is used to determine how to process the rows, as described in previous slide.

 

Execute T code in ECC : VF02( to create delta record for billing condition in ECC as we are doing this job for Billing Condition datasource 2LIS_13_VDKON )

/wp-content/uploads/2014/09/createdelta_535634.jpg

Select the ITEM, go to condition tab and make the change in any of the attribute.

Execute T code in ECC : RSA7( to view the delta records) .

In BODS, Make sure the Initial load drop down list box in extractor source has the value No ( As we are processing Delta load here) :

delta_option_EXTRACTOR.jpg

Execute the batch job in BODS.

Provide the extractor name and verify the data and count in ECC using TCODE : RSA3

/wp-content/uploads/2014/09/verify_ecc_535637.jpg

Write a query in SAP HANA to verify the target table data and count :  HANA_verify.jpg



Conclusion

  • With this job, we can conclude that SAP Business Objects Data Services can be used to extract data from ECC datasources(Extractors) and data can be easily loaded to HANA.
  • This can be effectively used in scenarios where predefined datasources needs to be used to load standard extractors data to different targets as per the business requirement.
To report this post you need to login first.

12 Comments

You must be Logged on to comment or reply to a post.

  1. Marcus Harris

    Hi, really good post.

    We are currently trying to do the very same thing although we are encountering an issue and wonder if someone has come across this.

    We are trying use datasources from our ERP system specially;

    – 0EQUIPMENT_ATTR

    – 0EQUIPMENT_HIER

    – 0EQUIPMENT_TEXT

    – 0EQUITYPE_TEXT

    Although we can search for these in DataServices and they show up we cannot “Import” them, we get the error ODP source does not exist. Not sure why this is the case.

    Thanks,

    Mark

    (0) 
    1. Tanvi Ojha Post author

      Hi Mark,

      Please check whether these datasources are released from ECC or not. Before importing the datasource in BODS. Some configurations has to be done at ECC side and datasource should be released.

      Thanks,

      Tanvi

      (0) 
  2. Dirk Venken

    Usng a template table as target in the dataflow will allow you to load the data into HANA without having to manually create the table / import the metadata first.

    (0) 

Leave a Reply