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:
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:
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.
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).
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.
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:
CWI Mapping Group Types
Following is the list of all Mapping Group Types recognized by CWI.
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:
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 !
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.
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.
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.
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.
In CATProduct document, User parameters may be defined on the root-product or on internal components.
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.
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.
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.
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.
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”.