cancel
Showing results for 
Search instead for 
Did you mean: 

ABAP CDS extractor on NSDM_E_MCHBH (replacement of MCHBH) in not getting delta in Datasphere

vinaylohakare
Explorer
0 Kudos
225

Hello Experts,

We have created a ABAP CDS delta extractor on NSDM_E_MCHBH (replacement of MCHBH) using CDC. SAP recommends to use replacement if available. When the extractor is used in DataSphere Replication flow, the delta load is failing. 

Error - CDS view is Inconsistent and Definition of the view is too complex for automatic CDC

Note - We are getting warning "Definition of view is too complex for automatic CDS" and "Data extraction of CDS entity not possible" in ABAP perspective. We ignored the warning as it was for other extractor's as well and they are fine.

Note , even extractor on MCHBH we faced the same issue.

Please let me know how we can get delta from table MCHBH using ABAP CDS view extractor.

Thanks,

Accepted Solutions (0)

Answers (2)

Answers (2)

bheemeshRao
Explorer

Hello Vinay,

Hope you are doing good.

The aggregate tables MCHB, MARD etc are not filled up in S/4, so getting delta based on these tables is not possible. they are used only as master data tables.  

mchbh.png

I think you have built a wrapper view on top of NSDM_E_MCHBH and provided the annotations

@analytics.dataExtraction.enabled: true

@analytics.dataExtraction.delta.changeDataCapture.automatic: true

With this the delta is not possible because

  1. Data is aggregated.
  2. Delta is possible only if the keys of the cds views matches the keys of the base table on top of which we are planning to perform delta, in this case the keys of matoc_extract is different from that of the cds view.
  3. MATDOC_EXTRACT is mainly used to improve the performance of on the fly calculations of the stocks and it gets refreshed with the latest stock. MATDOC_EXTRACT should not be used for data extraction, if you enable delta you will always see that the records will be overwritten with the latest details. 

My solution would be

  1. Extract MATDOC table using replication flow, rebuild the logic in your target based on NSDM_E_MCHBH. (i.e aggregation and filters)
  2. Or refer to the link Current Stock Quantity and Value (Interface) | SAP Help Portal see if this helps (the cds view mentioned is not delta enabled, its a cube.)

 

vinaylohakare
Explorer
0 Kudos

Hello bheemeshRao,

Thanks for the reply.

 

Martin_Kuma
Active Participant
0 Kudos
Custom CDS. Check in the source if it runs at all. ABAP will give only this simple warning. 
ABAP: RODPS_REPL_TEST. Go to Last Delta for CDC and execute. You will get a clear error/message: ".... does not support delta"
 
You could simplify with one table of course, but ... there you have to have a date in the table. Maybe you can create something like I did for such cases - generic delta like. Use fisc. year / period instead of date.