When a foreign document is retrieved, the SmartPlant Adapter compares the objects in that document to the data in the Intergraph Smart Instrumentation database and generates tasks in the To Do List. A Create task is generated when a new item needs to be created. An Update task is generated when an existing item needs to be modified. A Delete task is generated when an existing item needs to be deleted. The SmartPlant Adapter depends on the data in the Tool Schema to support the retrieve operation.
When a document is retrieved, the SmartPlant Adapter receives several objects / data containers, among which are:
The document container that includes all of the published objects and relationships for that document.
The tombstone container that includes information about deleted objects and relationships.
The SmartPlant Adapter iterates over all of the objects in the document container and performs these actions:
Generate Update Task – The adapter searches for an existing Intergraph Smart Instrumentation item to update. If an item is found, it generates an Update task in the To Do List. The properties of the incoming object are compared against the properties of the existing item. When differences are found, property updates are added to the task. The list of properties to be compared is defined by the properties in the Tool Schema. Properties of type UoM are handled separately.
Generate Create Task – If no item is found to update, a Create task is generated in the To Do List. Property updates are added to the task for each of the incoming property values. The list of properties to be added is defined by the properties in the Tool Schema.
Retrieve Relationships – The Class Retriever defines the types of relationships that are to be retrieved for each data object.
The SmartPlant Adapter iterates over all of the objects in the tombstone container and performs this action:
Generate Delete Task – The SmartPlant Adapter searches for an existing item in the Intergraph Smart Instrumentation database that is correlated to the item that was deleted in the other application. If such an item is found, a Delete task is generated in the To Do List.
If an object exists in Intergraph Smart Instrumentation and in the retrieved document, but the SPI Object_Registry table does not have a Remote UID for that object and there are no mismatched mapped values between the two objects. The Remote UID is updated in the SPI Object_Registry automatically without the creation of an update task.