Map Identification Attributes
This section describes how to map the identification attributes.
Required baseline access roles: Author, Leader.
One of the PLM_ExternalID or V_Name attributes are defined to retain the identification of the supplier in a customized attribute during the first import. You can determine and map the identification values of PLM_ExternalID and V_Name of the imported object through business rules. Administrator defines business rules by default, and these get executed during Import As Reference or synchronization of a PLM Channel.
Business Logic
The tables below demonstrates the business logic and context object parameters for customization of Identification during import:
| PLM Opening ID | PLMImportExportAttributesValuation
|
| Operation Id |
BriefcaseImport
|
| Customization Intent | Computation |
Context Object Parameters
| Parameter Names | Description |
|---|---|
| Operation Id | Used for identifying the context of mapping |
| First Import | Used for initializing the customized attribute values during first import |
| This Object | Used for retrieving the original attribute values |
| Id String | Used for evaluating the identifier attribute |
| iFileId | Used for prevaluating the identifier attribute |
| Exchange Info | Used for describing additional information on an exported PLM object |
| oReferenceId | Used for evaluating the identifier attribute |
| File Name | Used for evaluating the identifier attribute |
| File Type | Used for evaluating the identifier attribute |
| NativeV5Properties | Used for evaluating the identifier attribute |
| UserV5Properties | Used for evaluating the identifier attribute |
As an example, here is the
PLMImportExportAttributesValuation.CATRule delivered
to customize the identification attribute during import:
Let ExInfo (feature)
Let vSupplierName (string)
Let vExternalId (string)
vSupplierName = ""
vExternalId = ""
if( Parameters->HasAttribute("ExchangeInfo") == true )
{
ExInfo = Parameters->GetAttributeObject("ExchangeInfo")
if( Parameters->HasAttribute("FirstImport")== true )
{
if( Parameters->GetAttributeBoolean("FirstImport") == true )
{
if( ThisObject->HasAttribute("PLM_ExternalID") == true )
{
vExternalId = ThisObject->GetAttributeString("PLM_ExternalID")
vSupplierName = "Old: " + ThisObject->GetAttributeString("PLM_ExternalID")
if( ExInfo->HasAttribute("PLM_ExternalID") == true )
{
vExternalId = "New_" + vExternalId
ExInfo->SetAttributeString( "PLM_ExternalID" , vExternalId )
}
}
ThisObject->SetAttributeString( "V_SupplierName" , vSupplierName )
}
}
}