I am working though an issue we have with the 2LIS extractors where delta records come though in the wrong order. Sap Support believe the issue is on the data services side where it derives the DI_* columns which are used for the map CDC operation.
As a workaround, I was wondering if it is possible to run these extractors in query mode. I know for the initial load there is a set-up process, but would that also apply if we weren’t enabling deltas ?
Does anyone have any other suggestions ? This is preventing out project going live, so its quite a big deal.
Every Extractor can be used in Query mode, that mode is essentially like calling the rsa3 transaction in full mode.
How did you proof the data is coming in the wrong order from the Extractor reader object of DataServices?
Can you post the entire dataflow as screenshot and the MapCDC settings?
What extractor are we talking about so I can lookup its delta type, if MapCDC is the proper transform even?
When I say it can’t be used it query mode, I don’t mean it will not run from a technical point of view, I mean it won’t provide a current view of the data. The 2LIS extractors run off static setup tables for full loads/query loads.
FYI -for your reference here is the case I have open with support. Its into its 6th week now… ( 564503 / 2012 )
The attached screen shot should show you both the dataflow and the issue.
Note this was obtained in debug mode by clicking the first magnifying glass before it even gets to the query.
Document (VBELN) 0000304022 is a new document. It wasn’t present prior to this delta (we created it for the test case). If you follow the secuence highlighted you will see:
51 - tried to send a delete for a non-existent record (0000304022 , C, 40)
52 - inserts this record
53 - delete this record
54 - inserts this record
55 - inserts again - This caused a primary key violation.
Not when we run the same delta though open-hub, the records come though in a different (and presumably correct) order.
You did all correct from a DS perspective, even the include-in-transaction.
Why do we see two Insert records, I guess that is the important question. Can you show the other 2 to 3 delta related columns returned by the extractor and their values (the last two columns in the extractor and maybe a BW related field).
Oh that. But here again, is it a problem inside DS when the Extractor tells us it knows all about the transaction sequence and btw, the user inserted the same PK twice?
Openhub can call the same extractors in ECC and is not just for BW (although the licencing is tied to BW). My project is replacing Openhub and generally Data Services is faster and easier to use than Openhub, but so far less stable.