An eBiss feature, with which you can recognize differences between the mapping of a document and its previous state and map them in such a way that only the parts of the data type that have actually changed or been deleted are passed on from the mapping. This can be used, for example, if two systems are to be integrated, but the referential integrity is to be guaranteed by means of eBiss.
Note: To delete obsolete documents in this context, there is the StatefulDocumentMessageCollector.
Primary application of this functionality is the integration of applications, i.e. A2A1). But it can also be used in the EDI environment.
For example, a given CRM system expects the data on individual end points to be separated for each offer header and item and only for what is to be posted.
On the part of the booking system, this simplifies the interface enormously, because you can now specify directly at each data record whether it is an update/insert or a deletion, without the receiving system having to determine this beforehand and carry out the comparison itself.
The rest is done with eBiss on-board resources. The function LoadDocumentByOid loads the previous state of the document for comparison. The variables with “$$” store the complete trees for query. The simple query whether the position in the old document no longer occurs in the new one does the Delete case.
Does the document have a change? Then:
An example of DiffMapping can be found in the folder ../eBiss3/StandardTemplates/DiffMapping (with comments), as well as sample data for the 3 variants and a repository for testing.