Parent page: Altium 365 Workspace
With an active Altium Designer Enterprise Subscription, the composite design solution of Altium Designer and an Altium 365 Workspace offers configurable PLM Integration with support available for Windchill®, Arena®, Oracle® Agile™, Aras Innovator®, and Siemens Teamcenter® (with additional setup). The PLM integration setup is performed through the Altium 365 Workspace browser interface, which provides an automated interface for easily configuring the interconnection, mapping parameter data, and specifying the direction of data synchronization. With the interface set up and configured, the PLM integration 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 Altium 365 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 of generated PLM part numbers back to components on the Workspace side.
- Design (projects) – a dedicated Project Creations workflow is available that also supports the automatic creation of part numbers in your PLM instance, and then the propagation of these parameters back to the design 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 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 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).
The Altium 365 Workspace provides support for the following PLM systems:
- PTC Windchill® PLM version 12, and PTC Windchill+ (Windchill's SaaS variant).
- Arena® PLM.
- Oracle® Agile™ PLM.
- Aras Innovator® release 12.0 SP18.
To achieve PLM integration with Aras Innovator, your Altium Workspace server needs to be registered with the Aras Authentication setup by adding a new node section to its client registry. Once registered, a unique OAuth token is granted for your connected Workspace to authenticate access.
The required changes to the Aras Innovator configuration are made by editing its OAuth client registry file:
- On the Aras host machine, open the
\OAuthServer\OAuth.config file for editing.
- Locate and copy the IOMApp section – from the line
<clientRegistry id="IOMApp" enabled="true"> to the line
- Paste the copied IOMApp section immediately after to create a new (duplicated) section.
- In this new node section, rename
NEXUS – resulting in
<clientRegistry id="NEXUS" enabled="true">. See example.
- Save and then restart the Aras machine.
Choice of PLM Setup Interface
The Altium 365 Workspace connection to a supported PLM system can be established through an advanced semi-automated user interface, as detailed below, or by using a manual process based on editing PLM configuration XML files. The latter requires knowledge of the target PLM system data structures and familiarity with the XML format, while the updated system presented below automatically pulls in the required data from the PLM and Altium Workspace to populate menu choices in the interface.
You can reconfigure the Workplace to present the previous PLM interface – based on the manual editing of XML files – by unchecking the Enable new PLM Configuration page option in the Admin – Settings – PLM Integration page of the Workspace interface. Make sure you save the change, and then sign out and back in again.
Connecting to Your PLM Instance
PLM Configurations are created and managed in the Admin – PLM Integration page of the Workspace browser interface. When you have successfully connected to the PLM system the configuration interface will provide a range of integration options based on data drawn in from both the Workspace and the connected PLM.
Use the button to begin the connection process and proceed as outlined in the below slideshow.
Any connectivity errors will be highlighted in red when signing into the target PLM system. The lower border of the highlight box will include the error details – view example.
The ability to use Single Sign On (SSO) authorization when connecting to a Windchill PLM system is available and is set up through the Workspace interface. This provides a simplified and secure connection authorization method when performing Workspace PLM processes such as Project Creation and Publish to PLM. In practice, the arrangement allows Windchill access to be granted using the OAuth delegation standard via an identity provider service such as PingFederate.
Access to the SSO setup is available under the OAuth tab in the Workspace PLM Integration page (Admin - PLM Integration), where multiple OAuth provider instances can be added.
The OAuth provider authorization setup is completed from data available from your configured identity provider. Enter a name and the information required by the Workspace – IDs, tokens, URLs, etc – in the page fields. and then save the completed configuration.
The information required to set up a new SSO OAuth instance is sourced from the existing OAuth provider configuration.
The new OAuth Provider instance becomes available when the OAuth Connection option is enabled in a Windchill PLM configuration. Select from the OAuth Provider dropdown list where multiple providers are available. Complete the connection setup with the button and follow the provider's prompts if required.
Third Party PLM Support
The Altium 365 Workspace provides additional support for 'non-native' PLM systems configurations developed by third parties. This support is enabled by Altium's Generic Connector, which requires the Altium 365 PLM Generic Connector Addon license.
When adding a Workspace PLM Instance for such a system, pre-configured XML files provided by the third-party are uploaded to that PLM Instance configuration through the PLM Integration interface.
After a successful connection to a PLM instance, the Workspace PLM interface offers configuration settings for defining how component synchronization is performed, the inter-mapping of component parameters, and the transfer approach used for Part Choices data. These synchronization options are available under the Configuration tab of the interface.
The configuration setting options available to you (and their labels/functionality) are determined by the type of PLM system, and the parametric data drawn from both the Workspace and the connected PLM instance.
This PLM interface section defines which component types will be synchronized, where and how new components are to be created/updated, and any constraints based on parameter criteria.
How components are synchronized is specified individually:
- Select an Altium Component Type in the parameter list and set its Sync Direction option as needed (To Altium/PLM or both) – the component type options are sourced from the current Workspace component data.
- Choose a related PLM attribute name from the PLM Type menu – the available options are sourced from the connected PLM instance.
- In the Altium Target Folder field (under Sync to Altium) browse to and select a Workspace component folder as the synchronization location for this component.
- Specify a Sync Mode to determine if new components will be created during synchronization, or only existing components are updated – or both.
- Set the Component Template that will be used to define component parameter types when synchronizing this component. This setting will default to the selected Altium Component Type (for example;
Capacitors) if an associated Workspace template is available.
- Use the Add Parameter Criteria option to specify a parameter value that synchronization will be constrained by. A component will not be synchronized unless it satisfies this criterion. Add further parameter criteria as needed.
Additional options are available when connected to a PTC Windchill PLM that support Windchill's PartsLInk system. The PartsLink system allows parts to be classified in groups for more convenient and faster targeting, and can include associated Attribute/Value pairs to provide further definition within that Classification. See the collapsible section below for more information.
- Select the Add Classification Name Criteria from the Filter Criteria menu to add a classification filter. Use the name menu to choose a classification group the synchronization will be filtered by.
- For finer control, select the Add Classification Attribute Criteria option and specify a classification's Attribute and its associated Value. In the example shown here, only Capacitors from the
102-Capcitors class with a
Capacitance value of
10uF will be synchronized.
Within Windchill itself, a PartsLink Classification is defined by creating a binding attribute that can be applied to a part type. A part Classification Attribute is then added to a defined Classification class.
Component entries in Windchill will incorporate their defined Classification and any specified Classification Attribute parameters, which in turn are available to the Workspace PLM component sync process.
When a component entry is synchronized from Windchill to the Workspace and PartsLink interaction has been specified in the Workspace's PLM configuration, Windchill's Configuration Attributes for that part will propagate to Altium Designer.
When Sync Direction is set as
To PLM or for bi-directional synchronization (
To PLM & To Altium) an Add Filter Criteria option is presented under Sync To PLM. Use this option to set Parameter or Folder criteria that will control which Workspace components are propagated to the PLM system.
Multiple Parameter criteria can be added to tightly constrain the synchronization of Workspace components to PLM. The available criteria also include OR and NOT clause options for establishing more precise control over the filtering of accepted components for synchronization to PLM.
The Sync to PLM section provides additional part numbering and prefix/suffix options when targeting an Arena PLM system. These predefined PLM schemes are made available for selection in the Numbering Scheme and Code menus, and will determine the Item Number format of parts uploaded to Arena.
Component Parameter Mapping
Continue the same process as above to specify the sync parameter configuration for all components that you wish to synchronize with PLM. Since component parameters on the Workspace side do not necessarily match those on the PLM side, the Component Parameter Mapping interface section can be used to map parameters between the two. Note that when parameters are mapped, their value will be synchronized from one to the other as if they are the same parameter.
Use the section's Add Parameter command to create an entry for mapping a Workspace/PLM parameter that applies to the currently selected Altium Component Type (as selected under Sync Parameters). The PLM and Altium Parameter Name options are those available in the respective systems. A
Revision setting in the Item/Revision column causes a new component revision to be created when the parameter has changed, whereas with the
Item setting only the component parameter will be updated during synchronization.
Use the associated icon to remove a mapping entry.
Any number of parameters can be mapped in this way, however there is likely to be a range of common Workspace/PLM parameters that need to be mapped for all components. This global mapping approach is available when
All Types is selected as the Altium Component Type.
Create mapping entries (Add Parameter) that will apply to all components by including known common parameter matches. and set the Item/Revision and Sync Direction options as required. It is also important to specify a mapped parameter entry as the Primary Key – this is a common parameter pair that serves as the reference index between the two sets of parametric data. When this is a PLM Part Number (recommended), the number created on the PLM side is propagated back to the Altium side creating a known reference link between the sets of synchronized component data.
PLM Classification Attributes
For a connected PTC Windchill PLM, which supports component grouping as Classifications, the related PLM attributes and values can be mapped to Workspace component parameters in this section.
To extract a specific Classification Attribute value from Windchill – for example the capacitance value for Capacitors in the
102-Capacitor class – add the Classification and its Value (
Capacitance) as the PLM Parameter Name and the target Altium component parameter (
Value) as the Altium Parameter Name. Definitions can be added for all Component Types, including multiple definitions for the same component type.
► See the above PartsLink information for more on Windchill Classifications.
Use the Sync Direction dropdown menu to specify in which direction manufacturer Part Choices data will synchronize between the Workspace and PLM system, or disable Part Choices synchronization with the
Depending on the connected PLM type, the Part Choice information option will offer synchronization in a format that is compatible with the PLM's own approved manufacturing parts (
Native PLM Manufacturer Parts) or as conventional component parameter data (
PLM Part Attributes). The latter can be multiple sets of Manufacturer:PartNumber parameter attributes –
MFR2:MPN2, for example.
Examples of 'native' (or built-in) PLM manufacturer parts include Vendor Parts in Arena and Manufacturer Parts in Windchill.
Project Configuration XML
This section provides a listing of the base XML configuration that defines the initial PLM configuration for the connected PLM system. The downloaded version of this base setup XML (Download Sample Configuration) includes detailed comments that highlight the function of most Entity and Attribute sections.
Ultimately the configuration setup you define in the PLM Integration interface is stored as system XML files, which can be saved locally from the Export Configuration command associated with the Server Connection details at the top of the configuration page.
An Import Configuration option is also included. This allows you to apply an existing configuration XML file to a new (or edited) PLM configuration, which will then duplicate that PLM configuration setup. Also, for the situation when specialized changes need to be made to an existing PLM configuration, its exported XML file would be manually edited and then imported back into the configuration. Note that the Parameters, Attributes and Values included in a configuration file are case-sensitive.
Publish Template Addition
The PLM configuration requires the addition of an XML-based Publishing Template to support Workspace processes that send full project data – design files, component and manufacturing output data – to the PLM system in a single 'publish' action. These processes include Publish to PLM, where the user specifies the output data to be sent, and Project Releaser with Publish which sends the generated data to PLM as the final step in Altium Designer's Project Release process.
Add a suitable Publishing Template XML file under the Publish Template tab when creating or editing your PLM configuration. Use the Sample Project Configurations link to download an archived collection of templates for supported PLM systems.
A Publishing Template includes references for project details, component data transfer, data source locations, and file distributions of Design, Assembly and Fabrication data. The downloaded examples include templates for all supported PLMs, where each will include any additional Publishing Rules that apply to that specific PLM type and detailed comments to help guide you in what to configure, and how.
Modify an example XLM template as required and upload the file to your PLM configuration via the Add Publish Template window, opened from the button. Note that a PLM configuration supports multiple Publish Templates.
The synchronization of component data between your Altium 365 Workspace and the connected PLM system is determined by the enabled parameter mapping and direction outlined above, and will occur when the sync process is triggered manually or automatically at a scheduled time. The synchronization process itself is driven by a built-in
LibSync process Workflow.
Within a PLM configuration instance, the related synchronization options are accessed under the Component Synchronization tab, where the process can be manually triggered or set to a schedule. For the latter, enable the Synchronize on a schedule option and select a time interval from the associated dropdown menu.
You can use the menu options to manually trigger a
LibSync process as either an Incremental or Full synchronization event:
- Incremental – applies only those components that have been modified since the last synchronization was run (that is, their timestamp is later than the last synchronization date), and that pass the synchronization criteria in the configuration. Note that this is the mode used when a synchronization event is triggered from the control on the main PLM Integration page – see below.
- Full – this mode forces a full synchronization. All components that pass the synchronization criteria in the configuration will be included.
Performing Component Synchronization
Component (library) synchronization can be performed as a manual process from a PLM instance entry on the Workspace PLM Integration page, or as an automated cycle specified in the instance setup – see above. Click the control associated with the PLM instance to manually invoke the synchronization process, which will proceed through the
LibSync workflow using the settings defined in the associated PLM configuration.
The Actions control will change to , allowing you to stop the synchronization process if necessary, and the Sync Status entry will indicate that a process is underway. The Status will change to
Completed when the synchronization process has finished.
When component synchronization is run, either manually or as a timed event, the
LibSync process moves through its predefined Workflow until it completes or encounters an error. You can refresh the browser (F5) to show the current state of the sync process.
To access details of a completed sync event, click the icon in the Last Sync column to download the related log file (view example), or select the associated date to open the event entry in the Synchronization Status tab. Note that in this view, completed sync events are listed when the Closed option is selected, and any running or suspended events appear when the Active view mode is selected.
The Status 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 – view example.
- History – a time log of the main Workspace synchronization events listed in sequence.
Any sync events that have prematurely stopped, such as when an error was encountered, will be listed when the view is in Active mode. These entries can be removed from the list with the Terminate control (), or more correctly, assessed and resolved from the associated Task tile created in the Workspace Tasks view. Note that a terminated/resolved sync event will be moved to the Synchronization Status view's Closed list with an indicative Status, such as
Sample Process workflows that relate to a connected PLM system are available under the process theme tabs on the Workspace Processes page. In general, the samples cannot be used directly, but must be resaved under a different name to become active.
► See the Processes & Workflow documentation for more information.
A Workspace Administrator can start a new instance of any activated process definition directly from the processes listing on the Processes page by clicking the control. Non-administrator Workspace users also can initiate active Processes from the Workspace, such as:
In practice however, the PLM-related processes are usually invoked from Altium Designer during project design and development. The PLM-related processes are accessed from Altium Designer in the following ways:
- Part Request with PLM Part Create – Accessed from Altium Designer's Explorer, Manufacturer Part Search and Components panels.
► See Process-based Part Requests for detailed information.
- Publish to PLM (User selects) – Accessed from the Project » Project Activities sub-menu for the active Altium Designer project.
► See Publishing to a PLM – user-selects for detailed information.
- Project Releaser with Publish – Accessed as the final Project Releaser stage from the Project » Project Releaser sub-menu for the active Altium Designer project.
► See Board Design Release – publishing to PLM for detailed information.
- Project with initialise in PLM – Accessed when creating a new Altium Designer project from the File » New » Project in <Workspace> sub-menu, or when Cloning a project.
► See Publishing to a PLM – initialize in PLM for detailed information.
The following process definitions (and underlying workflows) are available through the Workspace, in support of PLM integration:
- 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 Workspace component. 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 managed 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.