Setup for Teamcenter PLM

 

Parent page: PLM Integration

Siemens Teamcenter® PLM integration requires additional setup that is not managed automatically by the Enterprise Server instance installer. Essentially, there are two levels of setup needed, depending on the integration features required. The first level enables Parts Synchronization and is also a prerequisite for the second level, which enables Project Publish/Initialization PLM processes. Nevertheless, it is recommended to perform both setup levels.

  • Note that the support for Siemens Teamcenter PLM through the Teamcenter EDA (Electronic Design Automation) Gateway interface is currently in Closed Beta. The previous version of the Teamcenter interface (using the SOAP-based API) will remain functional until Beta testing is completed.
  • A Workspace Teamcenter PLM Addon license is required for Teamcenter connectivity integration.
For more information about synchronization with Teamcenter, refer to the related configuration and publishing example files that become available when the Teamcenter PLM Addon Workspace license has been added.

Parts Synchronization with Teamcenter

In order to enable library parts synchronization you need to install the Siemens Teamcenter® EDA (Electronic Design Automation) Gateway software on the machine that hosts the Enterprise Server. This document assumes that the Enterprise Server and the Teamcenter server are already installed on separate machines – we would recommend this approach to ensure separation between the two installations, although they could be installed on the same machine.

Teamcenter EDA Installation and Configuration

The entire installation and configuration procedure for EDA Gateway is described in detail in the version-specific EDA Integration documentation available in the Siemens Support Center. Please follow that documentation thoroughly. The instructions here only cover deviations from the Siemens documentation, or specify Altium-side details that are referred to as requirements in the Siemens documentation.

Choose a version of EDA Gateway that supports your Teamcenter server version – you should find compatibility information in Gateway's corresponding TcEDA<version>_README.pdf files available in the download center. You should then consult the Installing and Configuring EDA Gateway for (Non-Mentor) ECAD Applications documentation (example link is for EDA version 5.1), on the topic of Installing and Configuring EDA Gateway for (Non-Mentor) ECAD Applications for part library management to guide you through the setup:

As part of the installation and configuration of the Enterprise Server/Teamcenter interface you must also install (and license etc as necessary) the following Teamcenter features – refer to Setting up EDA Gateway for ECAD applications:

  • Extensions » Mechatronics Process Management » EDA Server Support
  • Extensions » Mechatronics Process Management » EMPS-Foundation
  • Extensions » Mechatronics Process Management » ECAD Library Management
  • Extensions » Mechatronics Process Management » EDA for Business Modeler IDE
  • Extensions » Supplier Relationship Management » Vendor Management
  • Base Install » Active Workspace » Server Extensions » EDA Server Support for Active Workspace
  • Base Install » Active Workspace » Client » Electronic Design Automation for Active Workspace

In addition, perform Install and set up Common Integration Services to support Design Publishing.

Next, follow the steps and install EDA Gateway CLIENT on the Enterprise Server machine. To simplify the process, we suggest using the C:\Siemens\TeamcenterEDA2 folder.

Configure EDA Gateway for Parts Library Management

As above, for this section you should also consult the Installing and Configuring EDA Gateway for (Non-Mentor) ECAD Applications documentation (example link is for EDA version 5.1), on the topic of Installing and Configuring EDA Gateway for (Non-Mentor) ECAD Applications for part library management.

Please refer back to this set of instructions when you reach specific chapters in the Teamcenter documentation. The sections below refer to those chapters by name.

Chapter: 'Configure the EDA client for part library management'

During that step you will be asked to prepare a library gateway configuration file – instead, use one provided by Altium. You can download it with a package of configuration files from Enterprise Server Workspace's browser interface: Open Admin » PLM Integration, use the Add Configuration button to open the Add New Instance view, choose Teamcenter EDA from the Driver drop-down menu, and then select the Download Teamcenter EDA client definition files link associated with the URL field – see example.

Inside the downloaded PLMClientConfigurationFiles.zip file there will be an altiumLibrary_edadef.xml file – put this file into the directory pointed to by the system environment variable: %TCEDAECAD_ROOT%. Also add the provided altiumPcb_edadef.xml file to that directory.

  • Note that the ZIP archive also includes a CustomEDACallbacks.jar file. Adding this to the same directory allows Teamcenter to propagate its created identification (ID) references back to the Altium side.  More information.
  • If you are using the previous (non-GUI) PLM Integration interface, these files are available in the Sample Configuration Files download. See the Enterprise Server's version 5.5 documentation for information on the manual XML-centric interface.

Chapter: 'Setting up Teamcenter server for part library management'

Open Teamcenter Rich Client as the infodba user, or as another user with administration privileges.
See information on the Teamcenter Rich Client.

The screenshots below illustrate the steps described in Create external applications for your ECAD tool in Teamcenter. In our case we will add altiumLibrary,15 to the EDALIB_External_Applications preference:

Click the command to add the new value, followed by Save, and then close the preference. Logout and then log back in to the Teamcenter Rich client.

  • Open the Organization application.
  • Navigate to the External Applications section and add an altiumLibrary application as shown below:

  • Select Create.

NOTE: There must not be an Underscore character (_) in the Application Name

NOTE: The Allow deletion of replicated master objects to this site option must be checked.

Chapter: 'Mapping ECAD part attributes to Teamcenter attributes'

Through the Teamcenter command prompt, run the export_attr_mappings utility to output the mapping to a file, for example:

export_attr_mappings.exe -file=mappings.txt -u=infodba -p=infodba

Modify the mappings.txt file according to your requirements to map real Teamcenter attributes on the components. An example working mapping, added to the content of exported mappings.txt:

{ Item type="EDAComPart"
    Cost : Item.GRM(IMAN_master_form).object_desc /description="Cost"
    Tolerance : ItemRevision.GRM(IMAN_master_form).object_desc /description="Tolerance"}

After mapping is complete, import it back to Teamcenter :

import_attr_mappings.exe -file=mappings.txt -u=infodba -p=infodba

To troubleshoot attribute mapping problems you can turn on detailed logs by including the line rootLogger.level= DEBUG in the C:\Program Files\Siemens\TeamcenterEDA2\eda\log4j2.properties file.

Logs from Teamcenter EDA execution can be found in C:\Windows\TEMP\eis_eda_log.log.

Chapter: 'Creating classification mapping for ECAD parts with Teamcenter classes' (optional)

Classification mapping is an optional setup requirement and may not be used or needed for your Teamcenter PLM installation. Note that to use classification attributes, they need to be included in the attribute mapping configuration/file when completing the previous 'Mapping ECAD part attributes to Teamcenter attributes' section above.

Before beginning this setup stage, ensure to have classification functionality enabled. Then follow instructions to set up classification mapping.

Make sure that _eda2tc.csv has columns in order category,classId and _tc2eda.csv has columns in order classId,category. If necessary, swap file names.

To use classification attributes you need to include them in the attribute mapping. An example of classification attribute mapping is:

"SMT attribute" : ItemRevision.ICS(-60262) /description="SMT"

Where number -60262 can be found with the Classification Admin tool in Teamcenter.

Classification mapping in the Enterprise Server

Classification information can be sent with a special Classification attribute included in your XML configuration file of the PLM (typically dm-config.xml or similar). For example:

<common:Attribute>
    <common:Key>Classification</common:Key>
    <common:Value>${parameter.Classification}</common:Value>
</common:Attribute>

The value of this attribute should be a comma-separated path in the classification tree, for example: “Components,SMT,Capacitor”.

Similarly, classification attributes can be referenced by the name that was configured in the attribute mapping on the Teamcenter server, for example:

<common:Attribute>
    <common:Key>SMT attribute</common:Key>
    <common:Value>smt attr value</common:Value>
</common:Attribute>
See the provided sample PLM Configuration file (dm-TeamcenterEda-config-basic.xml) for additional information.

Define Library on the Enterprise Server

Before synchronization is possible with the Enterprise Server, it is necessary to create a library with the eda_cli.bat command (located in the directory of %TCEDAECAD_ROOT% in the Enterprise Server machine), and also ensure that the created files are accessible to the Enterprise Server:

edacli.bat -configureLibrary -application altiumLibrary -status %userprofile%\status.xml

At this stage it should be possible to perform an Enterprise Server Component Sync and an Enterprise Server Part Request with PLM Part Create process.

Additional Library Part Sync Information:

  • Synchronization of Released/Unreleased Teamcenter parts – By default only components marked with release_status_list.name = ‘TCM Released’ will be synchronized from Teamcenter to Altium. This can be changed in the Teamcenter Query Builder by modifying the query used by Teamcenter to select components (see example).

The name of the query is stored in the EDALIB_Sync_FindNewParts preference. The default query is __EDALIB_find_newparts and is shown below.

The last condition can be removed to synchronize components that are not “TCM Released” as yet.

Refer to the related Siemens Teamcenter documentation for more information.

  • Multisite synchronization – It is also possible for Teamcenter to be used as a source of component information for multiple sites (one of them being Enterprise Server). Note that this requires a special setup that is described in the documentation.
  • Unit-of-measure parameter synchronization – The Workspace Teamcenter integration supports unit-aware parameter mapping through the additional Data Type and SiPrefix data columns in the Component Parameter Mapping table of the user interface. Use an entry’s drop-down menu options to select a suitable data type (see options) and unit prefix (see options).

  • Destination folder for parts – Target folder for parts synchronized from Altium to Teamcenter can be set per site/user by the EDALIB_SaveAsFolderDefault Teamcenter preference.
  • Current Part Synchronization limitations:
    • PLM part numbers are generated on the Enterprise Server side only.
    • The destination folder cannot be specified for components in the configuration file – there is a global setting on the Teamcenter side. A destination folder setting in the PLM XML Configuration file (dm-config.xml) will be ignored without warning. The target folder is taken from the Teamcenter user level, or the site level option EDALIB_SaveAsFolderDefault for all component types.
    • Native part choices (Approved Manufacturer/Vendor List, or AML/AVL) is not supported. As previously, only component parameter-based part choices are supported.

See the main PLM Integration document for more information on Component Synchronization configurations and methods.

Design Publishing with Teamcenter EDA

Design publishing from Altium to Teamcenter is only possible through Altium Designer. In order to enable design publishing you need to install Teamcenter EDA (Electronic Design Automation) Gateway on the machine where Altium Designer is installed. You will also need access to both the Enterprise Server and the Teamcenter server.

The installation and configuration procedure for EDA Gateway is described in detail in the version-specific EDA Integration documentation available in the Siemens Support Center. Please follow that documentation thoroughly. The instructions here only cover deviations from the Siemens documentation, or specify Altium-side details that are referred to as requirements in the Siemens documentation.

Choose a version of EDA Gateway that supports your Teamcenter server version – you should find compatibility information in Gateway's corresponding TcEDA<version>_README.pdf files available in the download center. You should then consult the Installing and Configuring EDA Gateway for (Non-Mentor) ECAD Applications documentation (example link is for EDA version 5.1), on the topic of Installing and Configuring EDA Gateway for (Non-Mentor) ECAD Applications for design management to guide you through the setup:

If the creation of components during project publish is to be supported, then part of the library configuration must be performed on the server. This applies to the default section strategy <pt:BomStrategy>CreateNewAndLink</pt:BomStrategy> in the publish template.

The destination folder for designs can be set by the site/user options: EDA_SaveAsFolderDefault.

As noted in the above Configure Library Management chapter above, the altiumPCB_edadef.xml file (sourced from the downloaded configuration files) must be added to the %TCEDAECAD_ROOT% directory in the Altium Designer machine, so that project creation/publish initiated through Altium Designer can be carried out.

Also, with the addition of the CustomEDACallbacks.jar java source file (available in the configuration files ZIP download), Teamcenter can be set to propagate the identification (ID) references it creates for bare board (PCB/PWB) parts back to Project Parameter entries on the Altium side. Add this java file to the %TCEDAECAD_ROOT% directory and then restart the PC hosting Altium Designer.

In practice this means that when an Altium Designer PCB project has been created/updated in the Teamcenter PLM, its related parts IDs will automatically become available as Altium PLM parameters associated with the project.

BOM line attributes mapping

BOM line Reference Designator and Quantity attributes are handled automatically, but need to be included in the <BOM> section of the PLM connector XML Configuration file:

<BOM>
    <BOMAttributes>
        <!-- "Reference Designator" attribute is mandatory for Teamcenter EDA connector -->
        <common:BOMAttribute>
        <common:Key>Reference Designator</common:Key>
        <common:Value>${parameter.LogicalDesignator}</common:Value>
        </common:BOMAttribute>
        <!-- "Quantity" attribute is mandatory for Teamcenter EDA connector -->
        <common:BOMAttribute>
        <common:Key>Quantity</common:Key>
        <common:Value>${parameter.Quantity}</common:Value>
        </common:BOMAttribute>
    </BOMAttributes>
</BOM>
See the provided sample PLM Configuration file (dm-TeamcenterEda-config-basic.xml) for additional information.

To use other BOM line attributes it is necessary to include them in the BOM line attributes mapping section of the altiumPcb_edadef.xml file. For example, the below entry adds mapping of the Altium attribute part_source to the Teamcenter BOM line attribute bl_part_source:

<RdnAttrMapDefs>
    <RdnAttrDesign cadAttrName="part_source" tcAttrName="bl_part_source"/>
</RdnAttrMapDefs>

When such mapping is added, it is possible to define its value in the <BOMAttributes> section of the PLM connector XML Configuration file:

<!-- You can add any other custom attributes, but these need to be mapped to Teamcenter attribute in altiumPcb_edadef.xml file -->
<common:BOMAttribute>
    <common:Key>part_source</common:Key>
    <common:Value>${parameter.MakeOrBuy}</common:Value>
</common:BOMAttribute>

Configuration for Publishing of BOM Alternate Parts

Altium Designer's ActiveBOM supports adding alternate parts to BOM items (learn more). To support such alternate parts when publishing a design to Teamcenter PLM, an additional configuration of Teamcenter EDA needs to be performed as described below (in Teamcenter's terminology, these alternate components in the scope of a specific BOM are called substitute components). This will enable Altium callbacks with substitute transfer logic.

  1. Locate the soa_client.zip file in the installation files for the Teamcenter server version you currently use.
  2. Locate the following files inside this zip file:

    soa_client\java\libs\TcSoaStructureManagementStrong*.jar

    soa_client\java\libs\TcSoaBomStrong*.jar

  3. Copy these two files to the %TCEDAECAD_ROOT% directory on the PC hosting Teamcenter EDA Gateway and Altium Designer.
  4. Open %TCEDAECAD_ROOT%\setup_eda.bat file and locate the following lines:

    
    rem
    rem Add customer callbacks
    rem
    if exist CustomEDACallbacks.jar (
    	SET EDA_CP=%EDA_CP%;CustomEDACallbacks.jar
    )
    
  5. Add the following lines below:

    
    rem Added for Altium support of BOM substitutes
    set EDA_CP=%EDA_CP%;TcSoaStructureManagementStrong_14000.3.0.jar
    set EDA_CP=%EDA_CP%;TcSoaBomStrong_14000.3.0.jar
    
    Pay attention to the version number (i.e. 14000.3.0 in the example above). It must match the version number included in the file name that was copied in the previous step.
  6. Open %TCEDAECAD_ROOT%\altiumPcb_edadef.xml file. Add the following <callback …/> entries within the <CallbackDefs> section (already exists in the file):

    
    <callback type="java" operation="preSave" command="com.altium.eis.teamcenter.eda.callback.SubstituteCallbacks:checkSubstitutes"/>
    <callback type="java" operation="preSaveAs" command="com.altium.eis.teamcenter.eda.callback.SubstituteCallbacks:checkSubstitutes"/>
    <callback type="java" operation="postSave" command="com.altium.eis.teamcenter.eda.callback.SubstituteCallbacks:updateSubstitutes"/>
    <callback type="java" operation="postSaveAs" command="com.altium.eis.teamcenter.eda.callback.SubstituteCallbacks:updateSubstitutes"/>
    
    The above entries are already present in the altiumPcb_edadef.xml file, in a multi-line comment within the <CallbackDefs> section. You can move these entries from the comment (e.g., by moving them right below the --> part in this section).
  7. Restart the PC to ensure Teamcenter EDA loads new libraries.

Notes:

  • Teamcenter EDA must be configured to run on Java 11.
  • If you use Teamcenter 13, ensure you use versions of the additional libraries from your Teamcenter 13 installation.
  • Make sure to update CustomEDACallbacks.jar and altiumPcb_edadef.xml files in the %TCEDAECAD_ROOT% directory.
  • In Altium Designer, all design variants share the same set of substitutes, i.e. it is not possible to have different substitutes defined for the same BOM item across variants.
  • The list of substitute components in Teamcenter is a list of component revisions. Entries of substitute components do not create BOM lines and cannot have BOM line properties assigned to them. In Altium Designer, it is possible to have a BOM column with a different value for substitutes, but only properties from the base component will be transferred to Teamcenter BOM line properties.
  • If a project with substitutes in the BOM has been published to Teamcenter and then a substitute from the project BOM has been removed and the project has been published again, the substitute will also be removed from the BOM in Teamcenter.
  • If a project with substitutes in the BOM has been published to Teamcenter and then the BOM has been manually modified in Teamcenter, the BOM in Teamcenter will be overridden upon the next publication of this project, i.e. the changes made manually will be lost.
  • Components used as substitutes in ActiveBOM must be synchronized to Teamcenter. This condition is checked by the preSave callback. If there are components that have not been synchronized to Teamcenter, an error message will be shown and the operation will be aborted, so no changes will be made in Teamcenter.

Business Modeler IDE (BMIDE) configuration for derived datasets

After creating a derived data configuration (see references in the altiumPcb_edadef.xml file), you can specify the name of the configuration in the EDA_DerivedDataConfigDefault preference.

  1. In BMIDE, open the Extensions folder.
  2. In the Extensions folder, right-click EDA Derived Data and choose New EDA Derived Data. The New EDA Derived Data wizard is displayed.
  3. In the EDA Derived Data dialog box, enter the information and click Next.
  4. For derived PCB dataset add a new entry under ‘Configure datasets’.

Pathname: $TEMP\Altium\TcEda\Project\pcb\*.*

  1. For derived schematic dataset add a new entry under ‘Configure datasets'.

Pathname: $TEMP\Altium\TcEda\Project\schematic\*.*

  1. Another derived dataset for Variants datasets:

Pathname: $TEMP\Altium\TcEda\Project\$VARIANT\pcb\*.*

  1. To save the changes to the data model, choose File » Save Data Model, or click the Save Data Model button on the main toolbar.
  2. Deploy your changes to the test server. choose Deploy Template on the menu bar, or select the project and then click the Deploy Template button on the main toolbar.
  3. In the Rich Client, set the EDA_DerivedDataConfigDefault preference to point to the EDA derived data configuration you just created.
  4. Choose Edit » Options, click the Search link at the bottom of the Options dialog box, locate the EDA_DerivedDataConfigDefault preference, and change its value to the new configuration.

Additional Design Publishing Information

Current Project Publishing Limitations:

  • Referencing of specific component revisions ('Precise BOM') is not supported by the Siemens EDA Gateway.
  • ECO is not currently supported.
If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Content