Data Object-Internal Key
Mapping
Each data object has one root node and can have multiple child nodes. Each of these nodes has a synchronization key (SyncKey) as the unique Data Orchestration Engine (DOE) key, child nodes have an additional field called PSYNCKEY, which stores the parent node’s SyncKey. This makes sure the child node can be associated with its parent node in the consolidated data store (CDS) and the device inventory.
When you model a data object, DOE enforces that each node has fields mapped to the root node’s back-end key and the immediate parent node’s back-end keys. If this is not sufficient to ensure referential integrity, the user must map more fields, for example to grandparent node, great-grandparent node and so on. Otherwise information pertaining to a child node that is modified in the back end and sent back to DOE might not be identified uniquely in the CDS.
There are different ways that this mapping can occur:
· Standard case
If the back-end key fields of the nodes higher up in the data object hierarchy are not contained in the child nodes, the system performs the following activities:
...
a. Creates extra fields in the node tables in the CDS
b. Performs the key mapping implicitly when you activate the data object.
The standard case works for data objects with a maximum of two hierarchy levels and when the back-end adapter uses the get detail function module (not get bulk detail) to get the details of a business object instance.
This option can be used if the back-end key fields of the nodes higher up in the data object hierarchy are contained in the child nodes as back-end fields and have the same names and data types. In this case, the system maps the back-end keys of the different nodes within a data object automatically. By default, automatic key mapping is not activated.
This option can be used if the back-end key fields of the nodes higher up in the data object hierarchy are contained in the child nodes but do not have the same names and data types. In this case, you can map the back-end keys within a data object explicitly.