All Frameworks Class Hierarchy This Framework Next Indexes
ODDDaiPDM Class ODDDAIPDMServices
ODDDAIPDMServices
Usage: you must use this class as is. You should never derive it.
public class ODDDAIPDMServices
Set of services to reconciliate Supplier Product Structure with Smaragd Product Structure.
Role: Set of services to reconciliate Supplier Product Structure with Smaragd Product Structure.
All those APIs work only on session content:
- Products are updated only if they are previously loaded in session. Those APIs never search on disk potential other impacted files.
- Document referencing modified products are updated only if they are previously loaded in session. Those APIs never search on disk potential other impacted files.
List of rerouted links is predefined. Any other links is not supported and will be broken after those APIs. They have to be rerouted manually by users.
After structure modification, an update is requested. If several modifications are performed, update should be launched only one at the end.
Method Index
- o
HasContextualLinks(CATDocument*,int&)
- Identify CATPart with contextual links.
- o
IsImpactedByInstanceModification(CATDocument*,CATIProduct_var&,CATBoolean&)
- Check if a Part with contextual link is impacted by a product.
- o
RerouteMMLLinkAfterReplace(CATDocument*,CATIProduct_var&,CATIProduct_var&)
- Update MML links after product replace.
- o
RerouteMMLLinkAfterReplace(CATDocument*,CATIProduct_var&,CATIProduct_var&,CATIProduct_var&)
- Update MML links after product insertion.
Methods
o HasContextualLinks
-
Identify CATPart with contextual links.
Target of this API is to identify (before any product structure modification) if a part will request contextual links update.
- Parameters:
-
- iPartDocument
- CATPart document to be checked.
- oHasContextualLinks
- output value,
- 0: If no contextual links.
- 1: If some contextual links exist and context is loaded in session.
- 2: If some contextual links exist and context is not loaded in session. In this case, contextual part can be ignored in CATUpdate process because no reroute operation will be possible
o IsImpactedByInstanceModification
-
Check if a Part with contextual link is impacted by a product.
This API checks if a CATPart with contextual link is impacted by a instance which will be modified by CATUpdate (replace by a component/product, inserted product).
- Parameters:
-
- iPartDocument
- CATPart document to be checked.
- iProductInstance
- Instance which will be modified. Any level of instance can be used, API will automatically retrieve right context.
- oIsImpacted
- output value, TRUE if an impact should be managed
o RerouteMMLLinkAfterReplace
public static HRESULT RerouteMMLLinkAfterReplace( | CATDocument* | iPartDocument, |
| CATIProduct_var& | iOldProductInstance, |
| CATIProduct_var& | iNewProductInstance) |
-
Update MML links after product replace.
This APIs can be used after a replace for component replacement or for bad UUID. It will reroute contextual link to new product instance. This API should be used when previous and new instance are both available in product structure
- Parameters:
-
- iPartDocument
- CATPart document to be checked.
- iOldProductInstance
- Previous instance currently used by contextual link. Any level of instance can be used, API will automatically retrieve right context.
- iNewProductInstance
- New instance to be used by contextual link. Any level of instance can be used, API will automatically retrieve right context.
o RerouteMMLLinkAfterReplace
public static HRESULT RerouteMMLLinkAfterReplace( | CATDocument* | iPartDocument, |
| CATIProduct_var& | iOldProductInstance, |
| CATIProduct_var& | iNewProductInstance1, |
| CATIProduct_var& | iNewProductInstance2) |
-
Update MML links after product insertion.
This APIs can be used after insertion of a CATProduct. It will reroute contextual link to new product instance. This API should be used when previous and new instance are both available in product structure. It should be used once for each product inserted (one time for source CATPart and one time for target CATPart). Both orders (source then target or target then source) are supported.
- Parameters:
-
- iPartDocument
- CATPart document to be checked.
- iOldProductInstance
- Previous instance currently used by contextual link
- iNewProductInstance1
- New instance to be used by contextual link (first level). Any level of instance can be used, API will automatically retrieve right context.
- iNewProductInstance2
- New instance to be used by contextual link (second level). Any level of instance can be used, API will automatically retrieve right context.
This object is included in the file: ODDDaiPDMServices.h
If needed, your Imakefile.mk should include the module: ODDDaiPDM