IHS Markit Sync - User Documentation



Name Description
Name IHS Markit® Sync
Wex ID com.wincomplm.wex-ihs-sync
Version 1.4


This extension allows a user to synchronize parts with the IHS Markit® database. The extension allows for single or multiple parts to be synced using menu actions or workflows. It can be initiated from a part, a folder page or a search. The seed object is a Part or a SuMa manufacturer part.

An IHS API login is required.

For any questions concerning IHS regarding this integration please contact IHS directly.


  • Communicates with the IHS Markit® API
  • Manages the synchronization of attribute data
  • Mapping management
  • Sync single Part using menu action
  • Sync multiple parts using menu action
  • Sync parts contained in Promotion Request or Baseline object using workflows
  • Last update stored

User Guide

Available Action

Single SuMa Part Synchronization

A new menu action for Manufacturer Parts ‘Synchronize SuMa Part’ will pop up a window with a single button.


The seed object can be a part of a SuMa manufacturer part. If the seed is a part, all its associated SuMa parts are used as as the see


The following table will be displayed.


For each item the is a row for each attribute that is configured to be mapped.

The headings represent represent the following

  • Number - The part number (will be the SuMa part if no CPN was selected)
  • Com ID - The unique ID used in the IHS database
  • Manufacturer - The manufacturer as defined in Windchill
  • Manufacturer Number - The manufacturer number as defined in Windchill
  • Attribute - The soft attribute defined in Windchill
  • Value - The current value held in Windchill
  • Sync Value - The value returned by IHS
  • Icon - This will show if the Com ID is set of the state of the value vs. the sync value
  • Message - Information on the result of the last operation
  • Last Sync - The date and time of the last update of the part using sync

In this case the part have not been sychronized previously. This can been seen as the Com ID is not set

The first action is to Check values.

This will perform the following actions

  1. If the Com ID is not set a query will be sent using the manufacturer data to query for this and set it if found
  2. The Com ID is then used to query all the data based on the mapping (no changes are made)


This above result show that 1 part was not found in the IHS database, thus not Com ID could be retrieved. In the case more that 1 id is found an error will be shown and the data must be altered to establish a unique hit or the user can add the Com ID manually by updating the part in Windchill.

The other results show a valid part that was found. The Value is compared with the Sync Value and the icon show if it is equal of not equal.

The next action can be Set values

  1. If any part has difference the part will be checked out (if it is not already checked out)
  2. All attribute will be updated
  3. The part will be updated and checked in if it was checked out by this operation


Note: For a large number of parts this operation may take some time.

A Set values may be executed without a Check values this will first perform the check e.g. get the Com ID if required, and then the set will be executed.

Multi SuMa Parts Synchronization

A new menu action is contained in the folder actions drop down. A table will show of the parts you selected and their associated parts


Search Parts Synchronization

By searching for either SuMa parts directly or parts that have SuMa associated the user can select a number of parts from Windchill


By adding a search criteria, e.g. Last Sync > 1 month a search can be done to manually update a set of parts

Workflow Part Synchronization

A workflow robot has been created to Sync parts contained in a Promotion Request

com.wincomplm.wex.kernel.api.invoke.WexInvoker.invoke("com.wincomplm.wex-ihs-sync","wex-ihs-sync-workflow.syncFromPromotion", self);

or a Change

com.wincomplm.wex.kernel.api.invoke.WexInvoker.invoke("com.wincomplm.wex-ihs-sync","wex-ihs-sync-workflow.syncFromChangeNotice", self, boolean includeAffected, boolean includeResulting);

These calls will return a string with details of the operation performed

  • Total
  • Updated
  • Not Found
  • Failed
  • Warning



The extension can be configured with the following options


This is the login credentials for you IHS access



  • ID xPath - The xpath to get the Com ID (object id)
  • Request URL - The URL to get the Com ID


Data Mapping

The soft attributes used to hold the Com Id (String) and the Last Sync (Date)

The other attributes and there xPath mapping

The xpath mapping is the root prefixed to all mappings


It is possible to combine multiple xPaths to get a custom value

For excample : ${/Part/@category} => ${/Part/@part-type} will set the value XMLResult/Result/Part/@category => XMLResult/Result/Part/@part-type

NoteIn order to combine values each xPath value has to be encapsulated in ${}. Any constant value should not be encapsulated in $

Note the attribute mapping is doing via a XPath query language giving a high level control


If a group is selected only user in this group and admins have access


This ensures the data returned is valid


Example Configuration

The SuMa part soft type configuration


  • Comm ID = Sync
  • Last Sync = Time and Date


A full diagnostics tools is provide to assist with the configuration


The diagnostic tools will make live queries against the database and allow xPath expressions to be tested on the returned XML data


Was this article helpful? Votes: 0
Article details:
Published date: 23/07/2020 3:24PM
Last updated: 06/03/2023 1:41PM (edouglas@wincom-plm.com - edouglas@wincom-plm.com)
Share article: 
Author: Malik Bekkouche (mbekkouche@wincom-plm.com)
Permalink: https://windchill-extensions.ptc.com/kb/articles/ihs-sync-user-document