Skip to end of metadata
Go to start of metadata

What is SAP Direct Extractor Connection (DXC)?:

DXC is a batch-driven data provisioning technique that allows you to use BW datasources that are installed in any SAP Business Suite system (SAP NetWeaver 7.0 or higher) to load data into HANA.

How does it work?:

As of SAP NetWeaver version 7.0, SAP Business Warehouse (BW) is part of SAP NetWeaver itself, which means a BW system exists inside any SAP Business Suite system, such as the SAP ERP (ECC 6.0 or higher). This BW system is referred to as an “embedded BW system”. DXC can use the scheduling and monitoring features of this embedded BW system, but not its other features such as storing data, data warehousing, or reporting and BI. The DXC data extraction process essentially bypasses the normal BW data flow and instead sends data to SAP HANA where it is stored in a Datastore Object which has the same structure as the datasource you used to extract the data:

 

If you have an older NetWeaver system or you use the embedded BW in the ERP/Business Suite system for some other purpose you can also use a DXC Sidecar approach for the implementation where you would use a separate BW system that is connected to the ERP/Business Suite system system for scheduling and managing the extraction job that sends the data to the HANA system.

DXC Setup and Configuration:

See the SAP Help Documentation at the link below:

Overview of the SAP HANA Direct Extractor Connection

TROUBLESHOOTING DXC PROBLEMS:

How to analyse common problems?:

In the DXC area the most common problems are with the loading of the data via infopackage from BW to HANA or with the activation of the data in HANA. The data loading is completely controlled by the embedded BW. The activation of the data is completely controlled by the HANA Database.

What do I do if the data activation does not work on HANA and I don't see the data in the active table ( /BIC/A[DataSource][00],?

First check that the data was loaded successfully to the HANA system, you can confirm this by checking that you can find the data in the new data table (activation queue) on the HANA side.

When you activate the datasource on the BW side several tables are created with the naming convention /BIC/A[DataSource][xx], where [xx] is a two-digit number.  00 is the active table that you can use for reporting; 40 is the activation queue into which the BW writes the data. DXC is a two step process, you load the data and if it is successfully loaded you will find it in the table BIC/A[DataSource][40] (this table is all called activation queue or new data table). The second step in the process is the activation of the data, this step should happen automatically on the HANA side after the data load. During the activation step the data is moved from the activation queue to the active data table.

The screen shot below shows the DSO tables that are generated on the HANA Side for the DXC datasource  called SFLIGHT_DS:

 

In the above case we could preview the data in the activation queue (table that ends with 40) but there was no data in the active table (table that ends with 00). This tells us that the data was successfully loaded to the HANA system but it was not activated since we don't find it in the active data table. When the data is successfully activated and moved to the active data table the new data table(activation queue) is automatically truncated.

We can also confirm there is a problem with the activation using the DXC monitoring view M_EXTRACTORS, you can check the view on HANA using the SQL select * from M_EXTRACTORS:

If the loading and the activation were both successful then the Status column should have the value OK  and the PHASE column should have the value ACTIVATED 

We can get further information on all the requests that were loaded and activated for this datasource from the table /BIC/ASFLIGHT_DSAO shown in the output of the M_EXTRACTORS query.

You can query this table in the following way :

SELECT CLIENT, REQUEST_ID,

case

when STATUS = 1 then 'LOADING'

when STATUS = 2 then 'CONFIRMED'

when STATUS = 3 then 'ACTIVATING'

when STATUS = 4 then 'ROLLING BACK'

when STATUS = 5 then 'ACTIVATED'

when STATUS = 6 then 'ROLLED BACK'

when STATUS = 7 then 'ACTIVATION FAILED'

when STATUS = 8 then 'ROLLBACK FAILED'

else 'Unknown' end as PHASE,

TIMESTAMP, ERROR_MSG

FROM "DESDXCTEST"."/BIC/ASFLIGHT_DSAO"

--where status not in (2,5)

order by request_id desc

The output of this query is:

So from the above output we already have a hint to why the Request ID 568 was not successfully activated, you can see that there were four attempts to load data for this datasource before request ID 568 and since they all have the status LOADING and not CONFIRMED there must have been a problem with these loads on the Embedded BW side.

On the BW side if you go transaction RSA1 and search under datasources you can find the datasource (in this case SFLIGHT_DS) that was used to extract the data to HANA:

   If you right click on the datasource SFLIGHT_DS and select the manage option you can see the requests ID's that were used to load data from the embedded BW to HANA DB:

 

You will notice that the list shows on the Embedded BW side the same request ID's that we seen in the table BIC/ASFLIGHT_DSAO on the HANA Side.

The Red traffic lights for the requests ID's from 564-567 indicate that there was a problem with the data load to HANA for these request ID's and we can see from the time stamps that these failed loads happened before the successful load with the request ID 568. To be able to activate the data on the HANA side we first need to delete (rollback) all the request ID's again including the successful request ID 568. We start first with the Request ID 568.

So to solve the problem delete the requests from newest to oldest in the PSA and then reload:

When all requests are deleted from the datasource you will notice that the data is automatically deleted from the activation queue (new data table) on the HANA Side and also that in the status table BIC/ASFLIGHT_DSAO now shows ROLLBACK status for the request ID's :

Once you execute the Infopackage that belongs to the datasource SFLIGHT_DS in the embedded BW you are able to successfully load the data and it is automatically activated in HANA.

New Request ID loaded for the datasource SFLIGHT_DS:

Data is now available in the active table (/BIC/A[DataSource][00]) for the datasource SFLIGHT_DS on the HANA Side:

 The Monitoring view on the HANA Side (M_EXTRACTORS) now shows the correct Status and Phase:

 

IMPORTANT DXC SAP NOTES:

1710236 - SAP HANA DXC: DataSource Restrictions

2148186 - DXC Data Activation Fails: Could not find update operations for activation xx

 

 

  • No labels