Defining Property Mapping

Mapping properties between CATIA and SmarTeam is one of the key features of CATIA-SmarTeam integration. Properties can be mapped on both directions: from CATIA to SmarTeam and from SmarTeam to CATIA. Some CATIA actions perform mapping on only one direction, other on both directions. This mapping definition is usually performed by the administrator.

This page deals with the following issues:

 

When are Properties Automatically Mapped?

Once the mapping definition has been done by the administrator, CATIA users can then take benefit of this during their daily works. To be more precise, properties are mapped automatically:

  • during first SmarTeam > Save, properties are mapped on both directions (properties are first mapped from CATIA to SmarTeam, then profile-card are displayed, then properties are mapped from SmarTeam to CATIA) during:

  • next SmarTeam  > Save, properties are mapped only from CATIA to SmarTeam

  • Check In or Release, properties are mapped from CATIA to SmarTeam

  • File  > Open, properties are mapped from SmarTeam to CATIA

  • Check Out or New Release, properties are mapped from SmarTeam to CATIA

  • SmarTeam  > Properties  > Load From Database, properties are mapped from SmarTeam to CATIA

Load From Database

In some scenarios, you may want to update manually CATIA properties from SmarTeam values. For instance, if you have modified some attributes in a SmarTeam profile-card, you may want to update the CATIA properties accordingly.

This is possible by using the SmarTeam  > Properties  > Load From Database. Selecting this capability automatically retrieves all SmarTeam properties of current document and updates corresponding CATIA attributes according to the mapping definition.

Integration Tools Setup Utility

The most commonly used tool to define properties mapping is the Integration Tools Setup utility. This utility defines the settings of the integration between SmarTeam and an external CAD system. One of these settings is the properties mapping.

Using Integration Tools Setup utility, the administrator can define mappings between CATIA information and SmarTeam properties. In addition to this mapping, the direction is also set (mapping only from CATIA to SmarTeam or from SmarTeam to CATIA or both).

Using the Integration Tools Setup Utility to Define Properties Mapping

 

The Integration Tool Setup utility is available on the SmarTeam server (it may also be available on SmarTeam client machines). For reference information about the Integration Tool Setup utility, see the SmarTeam documentation.

  1. To launch it, select Start  > All Programs  > SmarTeam  > Administrative Tools  > Integration Tools Setup.
    After the database selection and the user login, the main window is displayed.

  2. Locate and open the CATIA; section. You will see two categories:

    • Component Types

    • Mapping Group Types: dedicated to the definition of properties mapping.

    Mapping Group Types and Mapping Groups classify all single mappings.
    The Mapping Group Types category contains a list of Mapping Group Types;. Then, each Mapping Group Types groups “Mapping Groups”. Each Mapping Groups groups “Mapping Properties”. Finally a Mapping Property defines:
    • the name of the CATIA information
    • the corresponding SmarTeam attribute
    • the mapping direction
    Each CAD integration (including CATIA integration) need to define their rules for the classification of  “Mapping Properties” under dedicated “Mapping Group Types” and “Mapping Groups”.

Mapping Directions

 

Directions Definition
From SmarTeam to CATIA (unidirectional) Attributes controlled by SmarTeam like revision, state or ID should be mapped in this direction only.
From CATIA to SmarTeam (unidirectional) This is dedicated for CATIA attributes (like product properties) that you want to store in the database (for query purpose for instance)
Both (bidirectional) This kind of mapping is possible but is not recommended because it may be difficult to the user to know where (in CATIA or in SmarTeam) is the official value of the property.

Units Management

CATIA attributes may have units: for instance, a f(x) parameter representing a length my be associated to the “Length” magnitude. Then, the user is able to decide which unit will be used to display the attribute in CATIA dialogs.

Note that changing the displayed unit does not change the value inside the CATIA document: CATIA attributes are always stored with a defined unit (for instance, weights are stored in kilogram)

Unfortunately, SmarTeam attributes cannot be associated to magnitudes or units.

It has been decided that the mapping between CATIA and SmarTeam will be always performed based on the CATIA stored unit.

Rules for Mapping Definitions

We consider that in CATIA there are many groups of attributes, all of them with the same semantics: product properties, drawing sheet properties, user parameters.

We will use Mapping Group Types to define the mapping of each of these groups of attributes. Mapping Group Types correspond to these groups of CATIA attributes. For instance, we will have a Mapping Group Type for the definition of the mapping of all product properties and another one for the definition of all user parameters, a third one for the future document properties;

Some of these Mapping Group Type will be available for all CATIA documents. This is the case for instance for the Mapping Group Type containing the mapping of the user parameters. Other Mapping Group Types will be available only for some specific CATIA documents. For instance, the Mapping Group Type defining the mapping of product properties will be only available for CATProduct and CATPart document.

Even if a Mapping Group Type is dedicated to all CATIA documents, the customer may want to define specific mappings for specific documents and other mapping for other documents. This can be done by defining specific Mapping Groups for specific documents:

  • if mappings are defined in a Mapping Group named “All”, they will be available for all documents

  • if mappings are defined in a Mapping Group which name correspond to a CATIA document type (for instance “CATProduct; or CATPart), they will be available only for this specific type of document.

Following is a subset of known CATIA document types:

  • CATProduct

  • CATProduct_ASMPRODUCT (a specific type dedicated to product internal components)

  • CATPart

  • CATDrawing

  • CATDrawing_Sheet (a specific type dedicated to drawing sheets)

  • CATProcess

Notes:

  • Every document will take benefit of the “All” mapping group and also of the dedicated mapping group corresponding to its document type

  • If the user decides to arrange his mappings in various mapping groups, then a mapping property defined in “All” mapping group should not be declared anywhere else (because both mappings will be run and we cannot know in which order they will be called)

CWI Mapping Group Types

Following is the list of all Mapping Group Types recognized by CWI.

Intrinsic Properties

This Mapping Group Type is used to define the mapping of all intrinsic properties of documents or features.

Document and features have some intrinsic properties (properties which are automatically available. Product and Parts have the following intrinsic properties:

 

Properties Availability
  • Part Number
Available on both product and part
  • Revision
Available on both product and part
  • Definition
Available on both product and part
  • Nomenclature

Available on both product and part
  • Source

Available on both product and part
  • Description
Available on both product and part
  • Material

Material is stored on root-product reference. But in case of internal components, it is stored at the instance level
  • Contextual

Available on CATPart document.
In case it is designed in the context of a CATProduct document, the contextual information is the filename of the CATProduct (without the path)
  • Sheet Name
Available on drawing sheets.
  • Sheet Format

Available on drawing sheets.
  •  Minimal Version To read
Available on all CATIA V5 documents.
Indicates the minimal CATIA version necessary for reading the document. The string looks like: CATIAV5R14

Even if some mapping types are only applicable to specific document types, they can be defined in a single Mapping Group named “All” or they can be defined in Mapping Groups dedicated to specific document types. But don’t try to define a Mapping Type named “Sheet Name” in a Mapping Group named “CATProduct”. It will be ignored because “Sheet Name” is not a recognized name in the context of a “CATProduct” document !

Example

In this example, all intrinsic properties are defined in a single Mapping Groups named “All”. It means that these mappings will be applicable to all documents.

Of course, if one MT is not applicable to current in-work document, it will just be skipped for this document.

Product Properties

This Mapping Group Type is used to define the mapping of the Product other properties

These properties are created in CATIA with the Define other properties;; button that is displayed in the  Product tab of the Product properties dialog. Once created, they are displayed on the ;Product; tab of the ;. There are also displayed in the Formulas; dialog with a Properties; prefix in front of their name.

This Mapping Group Types can be applied on CATProduct document, Internal Product of CATProduct and CATPart document.

As usual, mapping properties can be created inside a single Mapping Group named “All” or inside a Mapping Group which name correspond to a specific document type.

Mapping Property name correspond to the exact name of the CATIA property.

Example

In this example, we have one product property called ‘USER_PROP1’ which is applied on all documents.

Then, we have one product property called ‘USER_PROP2’ which is dedicated for CATPart documents.

The two last product properties are dedicated for CATProduct documents.

User Parameters

This Mapping Group Types is used to define the mapping of user parameters.

user parameters = correspond to f(x) parameters created by the user with “New Parameter of type” button of “Formulas” dialog. These properties may be created on various CATIA features (on products for instance).

NOTE: In a CATDrawing document, user parameters are defined only at the level of the document itself.

Mapping Property name correspond to the exact name of the CATIA user parameter.

Note that only parameters created by the user will be allowed for the mapping. If you want to map an internal parameter (for example the pad’s thickness) you will have to create a user parameter that drive this internal parameter and use the name of this user parameter as Mapping Property name.

NOTE:

In CATProduct document, User parameters may be defined on the root-product or on internal components.

Example

In this example, we have one user parameter called FX1 which is dedicated to all documents.

Then we have another user parameter called FX2 which is dedicated to CATProduct documents.

NOTE:

If CWI ExposeMode is set to true, parameter will be read at the feature level, then if not found, at the document level. But parameter will always be written at the feature level.

For instance, if we have defined that FX1 is a user parameter which is mapped between CATIA and SmarTeam and if we are currently working on a document which has this user parameter set at the document level (ie: it is set on the root product) and if we are currently running the mapping on an internal component of this document and if this internal component does not have a FX1 user parameter, then, component profile-card will be filled with FX1 value read from the root-product.

If CWI ExposeMode is set to false, parameters will always be read and written at the document level.

A Reserved Mapping Group Type

In addition to the Mapping Group Types described above, “Revision Block” Mapping Group Type has been defined to drive the behavior of the integration code.

“Revision Block” Mapping Group Type is used to define which SmarTeam attributes will be displayed in drawing revision blocks.

Problematic Mapping Definition

As said previously, mapping can be either defined in Mapping Group named “All” or in a Mapping Groups which name correspond to a specific document type.

Definition of the same mapping on both locations is not recommended because it will produce unpredictable results.

Example

In this example, we see that ‘TITLE’ user parameter is defined twice but with different mappings.

At the ‘All’ level, it is mapped to CATIA Drawing ‘Title’ field.

At the ‘CATDrawing’ level, it is mapped to CATIA Drawing ‘Part Number’ field.

When running a mapping “from CATIA to SmarTeam”, there are no particular problem: the CATIA TITLE value will be stored on both locations.

But the problem will occur when running the mapping “from SmarTeam to CATIA”. During this process, there may be two SmarTeam values (one from ‘Title’ field, the other from ‘Part Number’ field) to be stored in one single CATIA user parameter.

Unfortunately, there is no way to define which Mapping Group will be run first. The ‘All’ one or the ‘CATDrawing’ one. This is the reason why the result will be unpredictable.

Using 'Load From Database'

 

Launching the Load From Database command performs the properties mapping on all objects belonging to the document of the selected object. For instance, if you have selected one component of a product stored in SmarTeam, all components of the document will be treated. You can select any component belonging to the document, even if selected component is not already stored in SmarTeam.

Only properties mapping from SmarTeam to CATIA will be run (use SmarTeam > Save to perform mapping from CATIA to SmarTeam)

After properties mapping has been performed, there is no message indicating that the job has been done.

In the following example, if you want to apply Properties > Load From Database on the root CATProduct document, you need to activate either “Product1” or “Product2”.