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:



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
public static HRESULT HasContextualLinks(CATDocument* iPartDocument,
int& oHasContextualLinks)
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
    public static HRESULT IsImpactedByInstanceModification(CATDocument* iPartDocument,
    CATIProduct_var& iProductInstance,
    CATBoolean& oIsImpacted)
    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

    Copyright © 2003, Dassault Systèmes. All rights reserved.