PLM Integration

Now reading version 5.5. For the latest, read: PLM Integration for version 7.0
 

The Enterprise Server Workspace can be hooked up to one or more PLM instances, with direct support for Windchill®, Arena®, Oracle® Agile™, Aras Innovator®, and Siemens Teamcenter® (with additional setup). The interface configuration is performed through the Workspace browser interface, with most configurations defined within an XML-based configuration file (uploaded through the Workspace). With the interface set up and working, features and functionality are provided when working in the following distinct areas:

  • Library (components) – catering for the uni- or bi-directional synchronization of your components, component parameters, and part choices, between your Workspace and your PLM instance. Configuration allows you to specify which parameters are mastered in which system. In addition, item parameters enable you to update properties on the Workspace side (configurable per field), without having to formally release a new revision of that Component Item. A dedicated Part Request workflow is also available that supports the automatic creation of a Component in your PLM instance, and also the propagation generated PLM part numbers back to components in Workspace.
  • Design (projects) – a dedicated Project Creations workflow is available that supports the automatic creation of part numbers in your PLM instance, and then propagation of these as parameters of the Altium Designer project. Such parameters can be used in special strings (e.g., for sheet border annotations). You have the ability to publish your design to your PLM instance, as part of running the Project Releaser in the Altium Designer. The publishing operation uses a publishing template – defined as part of the PLM instance integration configuration – to control how data should be propagated to the PLM. And if you're publishing for the first time and part numbers (on the PLM side) are not yet associated with the project, those part numbers will be created in the PLM and associated with the project as part of that initial publication. You also have the ability to define component entries for Workspace library components in the PLM instance, as part of the publishing operation (optional, based on configuration). And you'll always be able to see exactly what has been created, such as part numbers in the PLM instance, as part of the process workflow's history (History tab).

PLM Support

The Enterprise Server Workspace provides direct support for the following PLM systems:

  • PTC Windchill® PLM version 12
  • Arena® PLM
  • Oracle® Agile™ PLM
  • Aras Innovator® release 12.0 SP18
  • Siemens Teamcenter®, with additional integration setup.

    • Note that the current support for Siemens Teamcenter PLM is based on the Teamcenter EDA (Electronic Design Automation) Gateway interface and is in Closed Beta. The previous version of the Teamcenter interface (using the SOAP-based API) will remain functional until Beta testing is completed for the new Teamcenter interface.
    • Integration with Siemens Teamcenter PLM requires the installation and configuration of the Teamcenter EDA Gateway software. A Workspace Teamcenter PLM Addon license is also required to enable this capability in the Workspace.

    For full details see Additional Installation and Setup for Teamcenter EDA Gateway.

  • The Workspace also offers a Configuration Generator that creates a PLM configuration by analyzing the data model of the current Workspace. The resulting configuration includes all elements (component types and parameters, etc) that are available in the current Workspace, and is directed to a specified (and supported) target PLM system.
In situations where it is not possible to connect between the Enterprise Server Workspace and a company enterprise system, component data exported from that system may be imported into the Workspace using its supplied CSV Import command line tool.

Connecting to Your PLM Instance

Connection to your PLM instance is performed from the Admin – PLM Integration page of the Workspace browser interface. This involves uploading the applicable XML-based configuration file and publishing template, and enabling/configuring synchronization of your PLM components with those in the Workspace.

To create a new PLM interface instance, click the  button. As many instances can be defined as required, to interface your Workspace to various different PLM instances. For example, your components might reside in one PLM instance, with the generated output from released design projects in another, or perhaps different divisions are using different instances (of the same or differing PLM system). Each instance must be uniquely named, have a configuration file and one or more defined publishing templates. To test the connection for a defined instance, click the  button – see Connection Validation below.

Sample configuration files and publishing templates are provided as part of the installation – expand the sections below for more information:

When adding a new PLM entry from the  button, use the  button to browse to and then apply a suitably saved/modified PLM configuration.

Similarly, a compatible publishing template is added through the  button under the Publish Template tab. In the following Publish Template dialog use the  button to browse to and select the correct template file.

Add and configure the interface to your company's PLM system. With a valid connection, you can then publish project release data to the PLM system (using defined process definitions) in accordance with an active publishing template for the instance, and also schedule synchronization of components between that PLM and the Workspace.Add and configure the interface to your company's PLM system. With a valid connection, you can then publish project release data to the PLM system (using defined process definitions) in accordance with an active publishing template for the instance, and also schedule synchronization of components between that PLM and the Workspace.

The setup files for Windchill, Agile and Arena PLM instances also support the formalized Change Order (ECO) workflow, which is enabled in the Publishing Template XML file and defined in the Configuration XML file under the altiumType="ProjectChangeOrder" entity section – see example.

Depending on the PLM instance, configuration definitions include schema for Change Order identification (numbering, location, ID, etc), specific Change Order attributes such as Name/Title, Description and Change Complexity (Windchill only), and option settings such as Change Order creation strategy (none, new or reuse existing) and Lifecycle status promotion (Windchill and Agile only). The defined Change Order is enabled during publishing by the declaration of its publishId reference in the associated Publishing Template – see example.

Once defined in the server's Configuration and Publishing Template XML files, Change Orders are available during Project Creation and Publishing process PLM workflows invoked from Altium Designer or through the Enterprise Server interface. An associated Change Order Form will be presented during the flow, where the Change Order's setup and options are specified.

For information on working with PLM Change Order (ECO) functionality for Windchill, Agile and Arena PLM instances, see the comment notes in their sample Configuration XML files and Publishing Template XML files provided with the Enterprise Server installation.

Rather than using the supplied configuration files to create a new enterprise system instance, the Workspace's internal configuration generator may be used to create an adapted configuration that derives its structure from the Workspace's data model. The generator requests connection information (PLM type and URL), and then interrogates the Workspace for registered component types (Capacitors, Diodes, etc) and their matching Component Templates to construct a base configuration file – click on the following expanding section for more information:

When a configuration file has been edited and then re-uploaded to the PLM instance, make sure that you test (validate) the connection to detect any problems that may have been introduced – see below.

Connection Validation

The Workspace offers a comprehensive PLM Instance connection validation check, which is available from the button in the Add/Edit Instance page. This will perform a range of configuration compatibility checks and immediately report the results.

When the connection validation report is run, the Workspace analyses the current configuration and publishing template settings for compatibility with both the Workspace and target enterprise system data. Configuration issues such as path errors, unmatched component type definitions and parameters, invalid Lifecycle or Revision settings are detected and reported in the following Configuration Validation Report dialog.

If configuration errors are reported – resulting in an overall ERROR status (Status) – these will need to be addressed before the new instance can be created. A WARNING status, which indicates issues such as Workspace components types that are not included in the configuration, or specified attributes that are not available on the enterprise system side, allows the configured instance to be saved and used.

The reported errors and warnings may be then corrected in the applied configuration/publishing files, and/or by making changes in the settings of the Workspace or enterprise system. Be sure to click the  button once your instance is defined successfully. That instance will appear in the current listing of connected instances, back on the main PLM Integration page of the interface.

When a configuration file has been edited and then re-uploaded to the new instance, use the  button again to detect any problems that may have been introduced.

Component Synchronization

Synchronization of components between the Workspace and the connected enterprise system instance – or to be more specific, their parametric data – is based on the LibSync process workflow. The LibSync process is predefined in the Workspace and not accessible (or editable) from the Workspace's Admin - Processes page. However, as a workflow-based process, the results of its synchronization action may be viewed and any errors handled.

Using the synchronization process involves the following:

  • Configuring the synchronization setup for each component type, which in practice is:
    • Determining the direction of synchronization (to the Workspace, or to the PLM).
    • Determining which component types are involved, and where new components are to be created.
    • Configuring the mapping or parameter attributes.
  • Configuring the Part Choices data mapping, if applicable.
  • Performing the synchronization.

The first two item groups above are handled in the configuration file used for the connected enterprise system instance (such as a PLM). The synchronization itself can be performed on-demand, from the PLM Integration page of the Workspace interface, and/or can be scheduled – automated synchronization at periodic intervals, defined when configuring the connection to the PLM instance.

Configuring Synchronization

Within the configuration file, the connectivity with the enterprise system instance is defined between the Instance tags as a specified Driver type and a target URL. When the Configuration Generator has been used to create the configuration file, the included Driver and URL references are those entered in the Generate Configuration dialog during the generation process.

<Instance>
    <Driver>[Driver Type]</Driver>
    <Url>[PLM API URL]</Url>
</Instance>
  • When the Arena® PLM driver is specified in the configuration file, an additional entry is available to accommodate the Arena workspaces that are available for an Arena user account. The optional multi-digit ID reference attribute is added to the Instance section between context tags, as shown in the below example.
    • <Instance>
          <Driver>Arena</Driver>
          <Url>https://api.arenasolutions.com/v1/</Url>
          <Context>12345678</Context>
          <!-- If a workspace ID is not defined, the PLM instance will work with Arena's default workspace for that account. -->
          <!-- The server will report an error if another PLM synchronization session is attempting to use a second workspace from the Arena user account. -->
      </Instance>
  • When the connected system is PTC Windchill PLM, it may be necessary to add a configuration line to enable the units of measure for Value readings.
    • <Instance>
          <Driver>Windchill</Driver>
          <Url>URL</Url>
          <EnableUOMRead>true</EnableUOMRead>
      </Instance>

In the following Schema section of the configuration file, you define a section for synchronization mapping for each dedicated part type. On the Workspace, this is the component of type altiumType – its value is one of the type parameters options that can be seen in the Data Management - Component Types page of the Preferences dialog in Altium Designer. On the PLM side, a part is created of type plmType, as determined by its value in the PLM space.

The section is declared as an Entity in the file, an example of which might be, for capacitors:

<Entity altiumType="Capacitor" plmType="Capacitor">
  .
  .
</Entity>
The plmType value may vary, depending on the particular PLM instance you are using.

Within the Entity, two sections are used to control and configure synchronization from the Workspace to the PLM instance, and the PLM instance to the Workspace – allowing for uni- or bi-directional synchronization. Use the following sections, in conjunction with the comments available in the sample configuration files, to learn more. Ultimately, what gets defined in the configuration file will vary, depending on your specific needs, and also the (PLM) attributes that have been defined in the connected enterprise system instance.

The section for defining Part Choices data mapping is found at the end of the sample (or a generated) configuration file.

  • The Parameters, Attributes and Values included in a configuration file are case-sensitive.
  • Other than the common inclusion of a primary sync key (such as PlmPartNumber), it is not recommended to include the same component attribute/parameters in both the ToAltium and ToPlm sections of a configuration file. Bi-directional synchronization occurs in that order (from PLM to Altium first), so the PLM data will always dominate in this situation.
  • Refer to the example configuration and publishing files for information on setting up integration with your enterprise system.

The Enterprise Server supports updating of existing Arena PLM items when working with the Altium Project Releaser and Component Sync processes. This allows newly released project and component data on the Altium side to be pushed to working revisions of Arena BOM part items (PCBA, FAB and Component data).

With the release of an Altium project to Arena PLM – using the Project Release with Publish to PLM process – the previously released Arena Project BOM revision will be updated, and the additional child part updates linked to that parent. In this case the PLM log will include a warning which notes that a working revision has been updated and effective revisions added to the corresponding BOM in Arena.

Performing Component Synchronization

Component (library) synchronization can be performed as a manual or timed process, from the Sync action button of a PLM instance entry on the Workspace PLM Integration page or as an automated cycle specified in the instance setup, respectively. Click the  control associated with the PLM instance that you wish to synchronize. The synchronization process will proceed through the LibSync workflow, in accordance with the settings defined in the associated configuration file.

The control changes to  . If you want to stop the synchronization process, click this control. A confirmation window will appear, where you can click   to cancel the synchronization – all components already synchronized will remain so, but no further synchronization beyond that point will occur.

Component synchronization in progress between the Workspace and the indicated PLM instance.Component synchronization in progress between the Workspace and the indicated PLM instance.

Synchronization will involve only those components that have been modified since the last synchronization was run (i.e. their timestamp is later than the last synchronization date), and which pass the synchronization criteria in the configuration file. This is referred to as Incremental Synchronization.

When component synchronization is run, the LibSync process moves through its predefined Workflow until it completes or encounters an error. Refresh the browser (F5) to show the current state of the sync process. To monitor or review the LibSync process, select the Synchronization status tab and choose the Closed listing option – if a process is still running it will show in the Active listing. The button, available to Administrators, can be used to download a detailed record of all listed synchronization activities in a comma-delimited CSV file format (Synchronisation status.csv).

The view’s sub-tabs provide the following information:

  • Diagram – a graphic representing the process workflow, with its current step position highlighted (Competed or the error/failure state).
  • Data – an information summary of the process action, including the success or failure of its steps and a link to the logged process report – see below.
  • History – a time log of the main Workspace synchronization events listed in sequence.

The LibSync process results are also available in the Process Management page (Admin » Processes) under the Browser tab.

The details of the selected LibSync event shown under the Data sub-tab includes a link to the system log file (PLM [date-number].log) for the event.

If a LibSync process fails, a Handle errors task is created with associated error data including summary information and process diagram. Current action tasks are available in the Tasks Management page, accessed from the Tasks option on the main menu.

Scheduled Synchronization

You also have the ability to schedule automated synchronization. To do so, edit the PLM instance (from the main PLM Integration page, click on its name, or the associated control), select the Component Synchronisation tab and enable the Synchronize PLM Components with server on schedule option. Use the Synchronize every controls to set up the automated sync schedule as required. The system is very flexible and allows you to:

  • Set up scheduled synchronization every 15/30/45/60/75/90 minutes.
  • Set up scheduled synchronization every x hours.
  • Set up scheduled daily synchronization, to be performed at a nominated time.

The schedule you define will be reflected back on the main PLM Integration page, in the Sync scheduled column.

Setting up a synchronization schedule.Setting up a synchronization schedule.

To set up scheduled synchronization requires you to provide valid user credentials (for your PLM system). The credentials should have already been registered when setting up the PLM instance, but if not, click the  button and enter your User name and Password into the subsequent PLM Credentials window. Without valid credentials, scheduled synchronization will remain in the OFF state. On-demand synchronization will also not be possible.

You can also run the synchronization process on-demand. Click the  button and choose which mode of sync you need:

  • Incremental – in this mode, only those components that have been modified since the last synchronization was run (i.e. their timestamp is later than the last synchronization date), and that pass the synchronization criteria in the configuration file, will be included in the sync, with changes propagated accordingly. This is the default mode, and is the same mode that is run by clicking the  control for a PLM instance on the main PLM Integration page.
  • Full – this mode forces a full synchronization. All components that pass the synchronization criteria in the configuration file will be included in the sync, with changes propagated accordingly.

Process Workflows

The following process definitions (and underlying workflows) are available through the Workspace, in support of PLM integration:

These process definitions cannot be activated and used as is. Each of these is therefore more like a 'template' – edit to suit your company's requirements, name, and save as a new process definition, which you can then activate and use, along with all other definitions in the respective process theme.
  • Part Requests process theme:
    • Part Request with PLM Part Create – supporting the automatic creation of a Component in your PLM instance, and then propagation of the generated part number back to the component in the Workspace. The workflow diagram is shown below.

One important thing to note is that when you modify this sample definition to create your own, you must specify the PLM instance into which parts are to be created. Select the Create Part in PLM entity in the workflow diagram and choose the PLM instance from the drop-down menu associated with the PLM Instance field. This menu lists all currently defined PLM instances (as defined on the PLM Integration page of the interface).

► See Creating and Managing Processes for more information on working with process workflows.

  • Project Activities process theme:
  • Publish to PLM (User selects) – publish of released Workspace project outputs to the integrated PLM instance, where the user is able to select exactly which outputs get published. The workflow diagram is shown below.

  • Project Releaser with Publish – publish to the integrated PLM instance as an additional stage of the Project Releaser. The workflow diagram is shown below.

  • Project Creations process theme:
    • Project with initialise in PLM – supporting the automatic creation of part numbers in your PLM instance, and then propagation of these as Parameters of the Workspace design project. The workflow diagram is shown below.

Accessing PLM-related Processes

The following sections highlight where to access activated PLM-related processes. And since the samples cannot be used directly as supplied, the following were created from them for the purpose of illustration:

  • PR with PLM Part Create – created from the sample process definition: Part Request with PLM Part Create.
  • Publish to Company PLM – Choose Data – created from the sample process definition: Publish to PLM (User selects).
  • Project Releaser with Publish to Company PLM – created from the sample process definition: Project Releaser with Publish.
  • Create Project with PLM Initialise – created from the sample process definition: Project with Initialise in PLM.
Note that Workspace Administrators can start a new instance of any activated process definition – directly from the corresponding process theme tab within the Processes area of the Workspace interface – by clicking the  control.

Part Requests

Access from within Altium Designer from the Explorer panel, after having conducted a search, from within the Details pane of the Manufacturer Part Search panel, or from the link at the bottom of the component listing in the Components panel.

From the Workspace interface, the activated process definition can be accessed from the Part Requests page, by clicking the  button at the top-right of the page.

Project Activities

Project Design data released from Altium Designer to the Enterprise Server Workspace can be propagated to PLM in a controlled way with the Workspace's Publish to PLM processes. The Workspace processes define the interface and methodology for the publish activity, and the specified XML Publishing Template defines how the file data is propagated to the target PLM system.

See Publishing to a PLM for more detailed information on the publishing process.

Standard Publishing Process

On the design side, the standard publish to PLM process can be accessed from within Altium Designer from the Project » Project Activities sub-menu for the active project.

Project related processes are also accessible from the Project Activities context sub-menu, accessed by right-clicking on the entry for the design project in the Projects panel.

From the Workspace interface, the active process definitions can be accessed from the Project Management view by clicking the  button.

Publishing with the Project Releaser

The process for publishing to a PLM instance as part of the Project Releaser can be accessed from within Altium Designer from the Project » Project Releaser sub-menu for the active project.

Release-related processes are also accessible from the Project Releaser context sub-menu, accessed by right-clicking on the entry for the design project in the Projects panel.

The Project Releaser will appear, with an additional stage – 7: Publish to PLM. In addition, a command is available from the menu associated with the  button – Prepare & Release & Publish to PLM – should you wish to run the Project Releaser without stopping to review the generated data, and execution report.

If you run the Project Releaser with the standard Prepare command, after reviewing and releasing the data, the  button will be presented at the Execution Report stage. Click this to continue the underlying workflow for the process, to publish to the PLM. The Login Credentials dialog will appear. Enter the Username and Password for your PLM instance, and select the PLM Template you want to use (which appears in the form <PLMInstance>:<PublishingTemplate>).

If you chose to use the Prepare & Release & Publish to PLM command, you will ultimately be presented with the Login Credentials dialog directly. The Project Releaser will not pause at the Execution Report stage, and no  button will be presented.
Note that your PLM instance login credentials are only required for the first time you publish to that instance. These will then be stored with the Workspace. After that, any publishing of that project to that same PLM instance will proceed directly, in accordance with the defined workflow and chosen publishing template.

Click on the Diagram tab to see the underlying workflow for the process.

Click the  button to proceed with the publishing process, in accordance with that workflow.

If you're publishing for the first time and part numbers (on the PLM side) are not yet associated with the Workspace project, those part numbers will be created in the PLM and associated with the project as part of that initial publication. You also have the ability to define component entries for Workspace library components in the PLM instance, as part of the publishing operation – to get a BOM of components within the PLM (optional, based on the publishing template defined and used when publishing the project to the PLM instance).

Check the status of the publish to PLM process through the Workspace interface by selecting the Activities view from within that project's detailed view -- when the project has been opened from the Projects view. Select the Opened view option to see the status while the process is running, and the Closed activities option to access status information when the process has completed.

You can see exactly what has been created, such as part numbers in the PLM instance, under the process workflow's Data tab.

Project Creations

On the design side, access from within Altium Designer from the main File » New » Project in <Workspace> sub-menu.

From the Workspace interface, the activated process definition can be accessed from the Projects view by clicking the  button.

And also when Cloning a project, accessed from the  menu button in the Projects view.

The process workflow will proceed, with a dialog to enable you to define the project, in terms of its name, description, type, and any Project Template Item that should be used in its creation. After clicking Start, the Login Credentials dialog will appear. Enter the Username and Password for your PLM instance, and select the PLM Template you want to use (which appears in the form <PLMInstance>:<PublishingTemplate>). Then click Submit to proceed with the workflow.

The relevant part numbers will be automatically created for the project in your PLM instance, and then propagated back to the Workspace as Workspace project parameters. These parameters will be available to use as special strings – access from the Properties panel with a placed text string selected in the design editor. Workspace parameters defined for the project can also be viewed on the Parameters tab of the Project Options dialog (Project » Project Options).
If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Content