The shared object can be "typed" by configuring optional interfaces on it that are instantiated depending on the interfaces on the published objects. These interfaces can then be used on QFind methods to provide menu options for finding published data of different types.
The recommended model for the shared object is:
Class Definition |
SPFTEFSharedObject |
Required Interfaces |
ISPFTEFSharedObject, ISPFTEFPublishedObjectCollection, IObject |
Optional Interfaces |
ISPFTEFSharedEquipment and ISPFTEFSharedInstrument and then extended depending on the customer requirements |
The optional interfaces on the shared object are used for quick find only, and the details about the object are stored on the associated published items. When viewing objects in the data warehouse, they are dynamically consolidated to display the latest values of the published data that is associated to the shared object.
The optional interfaces instantiated as published objects are loaded based on a relationship between an interface on the published object and the shared object. The relationship definition to control the creation of optional interfaces is SPFTEFSharedMappedInterface.
For the equipment list, no new interface is added to the shared object. The following optional interfaces are already on the shared object:
Interface |
Shared object |
---|---|
ISPFTEFSharedArea |
Shared Area |
ISPFTEFSharedEquipment |
Shared Equipment |
ISPFTEFSharedInstrument |
Shared Instrument |
ISPFTEFSharedPipeRun |
Shared Pipe Run |
ISPFTEFSharedPipeline |
Shared Pipeline |
ISPFTEFSharedPipingComponent |
Shared piping component |
ISPFTEFSharedPlant |
Shared Plant |
ISPFTEFSharedProcessCaseData |
Shared Process Case Data |
ISPFTEFSharedSimulatedFacility |
Shared Simulated Facility |
ISPFTEFSharedSimulationModel |
Shared Simulation Model |
ISPFTEFSharedStream |
Shared stream |
ISPFTEFSharedUnit |
Shared Unit |
For example, the published equipment list schema uses the IEquipment interface that is related to the ISPFTEFSharedEquipment interface.
Relationship definitions exposed on SPFTEFSharedObject
The SPFTEFComprisedOf relationship definition links the shared object (ISPFTEFPublishedObjectCollection interface) to the published items (ISPFTEFPublishedItem).