Linking to Supply Chain Data for Database and File-based Component Libraries
Parent page: More about Components and Libraries
Altium Designer facilitates the linking of your design components to real-world parts, enabling you to have access to live supplier data at your fingertips, as you design. Through direct connection to Supplier web services, you are able to search across a supported Supplier's entire product catalog. This 'live' data can then be integrated within the design process - at the library design level, during the design, and at design release time. In short, this feature allows Supplier databases to be searched from within Altium Designer, and Altium design components linked to matching Supplier Items.
For any given Supplier Item found through a search, its parameters, data sheet links, pricing, and stock information can also be imported, as parameters of a target library component (SchLib, DbLib, SVNDbLib), or placed component on a schematic sheet. In addition, whole new components can be created in a target library directly from Supplier Items.
The linked supplier data can also be included at design release time, in a Bill of Materials - especially useful from a project costing and procurement perspective.
This document takes a look at linking to supplier data for component management methodologies that utilize SchLib, DbLib, or SVNDbLib as their 'backbone' for component storage. If you are using an Altium Vault - and Vault-based components - a similar, yet distinctly separate and far more powerful link between design component and supply chain is realized, through the notion of Part Choices. For more information, see Adding Supply Chain Information to a Vault Component. For more information on the centralized configuration of Suppliers as part of an Altium Vault installation, see Supply Chain Management.
Supported Suppliers
The cornerstone of this feature to access live supplier data, is the Altium Parts Provider extension. This extension delivers an aggregate supplier data service that provides access to live component information from a comprehensive range of parts suppliers.
While the Altium Parts Provider extension provides a comprehensive and effectively universal supply chain data source, there are individual Supplier extensions available.
These are considered more 'legacy' in nature. Each of these Suppliers are accounted for with the Altium Parts Provider. The difference is that they offer direct links to Supplier web services, rather than through an intermediate aggregator. They also allow for use of special account relationships with those Suppliers.
Supplier Preferences
The Data Management - Suppliers page of the Preferences dialog is command-central for configuring which Suppliers will be available when searching for parts data, along with other options relating to linking to Supplier data.
When the Altium Parts Provider extension is installed, use the Altium Parts Options section of the page to configure the service to suit your needs.
Options include the following:
- Location - enable which geographical regions the parts service will collate parts data from. While many suppliers are multi-regional, if a part is uniquely available in a specific location, it will only be listed if that region is enabled.
- Currency - enable which international currencies will be available for selection when searching for parts and examining results.
- Supplier - enable which Suppliers to include when performing a supplier data search. Only part results from those Suppliers will be returned.
When using Individual Supplier Extensions
If you have specific part supplier extensions installed, these are listed in the Available Suppliers section at the bottom of the Data Management - Suppliers page. These can be enabled/disabled, and ordered by priority, as required.
If an account is already held with a Supplier (existing customer), you may be entitled to special pricing or products that are not available in that Supplier's public catalog. If this is the case, simply ask that Supplier's sales representative for a username or customer number that can be used with their Web Service. Having gained this information, enter it into the options section for that particular supplier.
Searching for Supplier Items
The primary interface to live supplier data is the Supplier Search panel. Think of this as a direct portal to real-world parts offered by the various Suppliers you have enabled for the feature. Access this panel by clicking the System panel access button, at the bottom-right of the main design window, and choosing Supplier Search from the associated menu.
As illustrated, the panel is essentially divided into three key sections:
- Search Criteria - use the Keywords field to enter one or more keywords relevant to the supplier item to be searched for. Click the button, to the right of the field, to access the Search Filters pop-up. From here, specify how many results, per supplier, are displayed on each 'page' of results within the panel. Additional options allow enhanced filtering based on whether items are in stock, lead free, or RoHS-compliant. Once criteria are defined, either press Enter within the field, or click the Search button, to effect the search.
- Search Results - this region of the panel will populate with all Supplier Items matching the search criteria, and in accordance with any advanced filtering options. Results are grouped by Manufacturer (and Manufacturer Part Number), with all Suppliers vending that part listed below. The total number of items returned are displayed below the region. Use the arrow controls to the left to flick through the pages of results, where applicable.
- Detailed Item Information - this region of the panel provides detailed information for the currently selected (and focused) item in the results region above. Depending on availability, the region can contain a listing of parametric data for the item, datasheets for the item, quantity-pricing levels applicable to that item, and a stock section reflecting how many units of the item are currently in stock.
Adding a Link to a Supplier Item
At the heart of Altium Designer's feature to link to Supplier data, is the Supplier Link. This fundamental entity provides the live link between an Altium Designer component and an item vended by an enabled Supplier.
Creation of a Supplier Link involves the addition of two parameters to the target Altium Designer component involved:
- Supplier n
- Supplier Part Number n
n is an integer suffix, used to distinguish between Supplier Items when multiple links are added to the same component.
Manually creating a link is a simple, straightforward process. Simply click on the required Supplier Item, in the results region of the Supplier Search panel, then drag and drop onto the target component. Exactly where to 'drop' depends on the type of component:
- Schematic Library component (SchLib) - with the source Schematic Library document open as the active document, there are three areas on which to 'drop' the Supplier Item and create the link:
- Anywhere within the main editing area of the Schematic Library Editor (ensuring the recipient component is focused).
- Onto the required component's name, in the Components region of the SCH Library panel.
- Into the Supplier Links region of the SCH Library panel (ensuring the recipient component is focused).
- Database/SVN Database Library component (DbLib, SVNDbLib) - with the required DbLib/SVNDbLib document open as the active document, drop onto the required component record, on the Table Browser tab of the relevant table.
- Placed component on a schematic sheet - with the required source schematic document open as the active document, drop onto the schematic symbol of the required placed component.
Adding a Link from the SCH Library Panel
For the currently focused component in a schematic library, Supplier Links can be directly added from within the Supplier Links region of the SCH Library panel. Simply click on the Add button to access the Add Supplier Links dialog. Search for the required item, select it in the upper (results) region and click OK to add a link to that item, to the schematic library component.
Speeding the Search Process - Suggested Keywords
To speed searching, the software fills in some suggested keywords into the Keywords field at the top of the Add Supplier Links dialog. The entry depends on the settings defined in the Suggested Keywords region, on the Data Management - Suppliers page of the Preferences dialog.
Default priority assignments (with highest priority at the top of the list) mean that the Comment will be used as the search criteria first. If the source component has no comment, then the next attempt uses its Description. If this is also blank, the component's Name will be used.
Add your own suggested keyword parameters as required. Clicking the Add button will add a new parameter entry (with default name Parameter Name) to the bottom of the list (and therefore assigning it lowest priority). The new parameter will automatically be focused, ready to change its name. To change the name of an existing parameter, click once on its name field to focus it, then enter the new name as required. Alternatively, select a parameter by clicking on its associated priority field, then click the Edit button.
Use the Move Up or Move Down buttons to move the currently selected parameter up or down in the list respectively - increasing, or decreasing, its assigned Priority accordingly.
Once the relevant suggested keyword is loaded into the Keywords field - in the Add Supplier Links dialog where the part search is being performed - it can be further refined as required, to better target the desired Supplier Item(s).
Importing Data from a Supplier Item
For any given Supplier Item found through a search in the Supplier Search panel, its parameters, datasheet links, pricing, and stock information, can be imported as parameters of a target library component (SchLib, DbLib, SVNDbLib), or placed component on a schematic sheet. Importing information is simply a case of selecting the parameter(s), datasheet link(s), pricing information, or stock information - in the detailed information region of the panel - then dragging and dropping onto the target component/component record. Examples of each of these are given over the following sections.
Parameter Import Options
Prior to importing any parameters, pricing, or stock information from Supplier Items, you have the opportunity to define name mappings. This is particularly useful where, for example, certain parameters have already been defined for library components, and those existing parameters have different names to those used by a Supplier in their published data for an item. Rather than importing data into a new/separate parameter, the data can be imported into the existing parameter - provided the name mapping has been setup to do so.
Parameter name mappings are defined as part of the Parameter Import Options, on the Data Management - Suppliers page of the Preferences dialog.
When importing a parameter, the software will look to these options to see if that parameter has a defined mapping - specified by the Imported Parameter Name field. If this field is blank, or the parameter is not listed, it will be imported using the parameter name used by the Supplier. If this field has a value, then data will be imported into a new or existing parameter with that name. In the case of the latter, the data will overwrite any existing data.
The Supplier Link options only apply when creating a new library component from a Supplier Item, or when adding a Supplier Link and parameters simultaneously. For each listed parameter, the designer can choose to exclude it from import, and also define whether a suffix is to be used - useful if importing parameters from multiple Supplier Items to the same Altium Designer component. The suffix identifies a parameter as belonging to a particular Supplier Link. That parameter can be deleted when the associated Supplier Link is removed. Note that non-suffixed parameters will not be deleted when the Supplier Link is removed.
Importing Parameters
To import parameters, simply select the required parameters in the Parameters section of the Supplier Search panel, and drag to the target component/component record. Import will comply with defined parameter import options.
Importing Datasheet Links
The process for importing a datasheet link from a Supplier Item is the same as that for importing parameters. The only difference is, that there are no options to set up beforehand - just click and drag the datasheet link from the detailed Documents section for the Supplier Item onto the target component/component record in the active library (SchLib, DbLib, SVNDbLib), or component on the active schematic sheet as required.
The process will add a ComponentLink parameter pair, targeting the datasheet. By default, the same value will be entered for both the ComponentLinknDescription and ComponentLinknURL parameters - the URL for the data sheet. Access the link from the right-click References context menu for the component.
Importing Pricing Information
To import pricing information from a Supplier Item, simply click anywhere within the detailed Pricing section of the panel, and drag to the target component/component record. Import will comply with defined parameter import options for the Pricing parameter.
Although a Supplier Item may typically list a range of different prices, based on quantity levels, the import results in only a single Pricing parameter. The value of the parameter will reflect these various price-quantity relationships in the following format:
Quantity1=Price1, Quantity2=Price2, ..., Quantityn=Pricen
Importing Stock Information
To import stock (inventory) information from a Supplier Item, simply click anywhere within the detailed Stock section of the panel, and drag to the target component/component record. Import will comply with defined parameter import options for the Stock parameter.
Adding a Supplier Link & Parameters Simultaneously
It is possible to add parameters, datasheet links, pricing, and stock information for a Supplier Item, along with a Supplier Link to that item, all in the one step. This allows you to setup components in a far more streamlined way, rather than adding each stage independently. To do this, simply right-click on the Supplier Item entry in the results region of the Supplier Search panel, and choose the Add Supplier Link And Parameters To command.
If a SchLib/DbLib/SVNDbLib is active, the parameters and Supplier Link will be added to the focused component/component record. If a Schematic document is active, you will be able to click on each part to which the parameters and Supplier Link are to be added.
The image below illustrates this for an 8-position DIP-Switch component - DIP-8 - in a Schematic Library. The result is a new Supplier Link to the item - verified in the Supplier Links region of the SCH Library panel - and all imported parameters populating the Parameters region of the associated Library Component Properties dialog for the component.
Creating a New Library Item from a Supplier Item
Adding a Supplier Link and/or parametric information to an Altium design component is straightforward, but what if that component does not yet exist? No matter, the ability is provided to create a new library component directly from a Supplier Item.
The method used to create the component depends on the type of target library:
- Schematic Library - simply drag the item, from the results section of the Supplier Search panel, and drop onto the Components region of the SCH Library panel. Alternatively, right-click on the Supplier Item and choose the Import Into command.
- Database Library/SVN Database Library - ensure the required table is selected in the target library file, and that the Table Browser tab is focused, then right-click on the Supplier Item and choose the Import Into command.
The name of the newly created component uses the value of the Supplier Item's Manufacturer Part Number parameter.
Viewing & Editing Supplier Links
The Supplier Links currently defined for a library component, or placed component on a schematic sheet, can be viewed and edited using the Supplier Links dialog. To access this dialog:
- For a schematic library component - right-click anywhere within the main workspace and choose the Supplier Links command from the context menu.
- For a Database library / SVN Database Library component - right-click inside the record for the component, on the Table Browser tab of the relevant DbLib/SVNDbLib file, and choose the Edit Supplier Links command from the context menu.
- For a placed component on a schematic sheet - right-click on the component and choose the Supplier Links command from the context menu.
Enable the display of additional data columns, as required, by right-clicking on a column header and choosing from the subsequent pop-up. Click on a column header and drag horizontally to change the display order. Click on a column header to sort all defined links by that data attribute - price is often a good sorting choice.
To add an additional Supplier Link, simply click on the Add button. The Add Supplier Links dialog will appear, which can be used to search for, and add a link to, the required item.
To delete a Supplier Link for the component, simply select its entry, in the upper region of the Supplier Links dialog, then click the Remove button.
Quantity & Pricing
With suppliers and distributors of electronic components, it is quite common to pay less when buying in bulk. Suppliers will typically have different pricing based on the quantity of an item to be purchased from them. The quantity levels required to access increasingly reduced unit price points differ not only between different suppliers, but also from item to item for the same supplier.
This 'quantity pricing' is readily found in the detailed information region of the Supplier Search panel - specifically the detailed Pricing section for the Supplier Item currently selected in the results region of the panel. By changing the entry in the Order Quantity field, below the results region, the displayed pricing in the Unit Price column will change, in accordance with supplier-specified quantity pricing levels in-place for the displayed Supplier Items.
Currency Conversion
Different Suppliers operate in different, often multiple, regions of the world and, as such, it is common to see product pricing reported in different currencies. Altium Designer provides the facility to convert the display of such pricing information into one of a number of supported currencies.
To quickly display all Unit Price information - within the upper region of the Supplier Search panel - in a single currency, simply choose the required currency from the drop-down field available to the left of the Order Quantity field.
Only pricing information in the results region will display in the chosen currency. Pricing information in the detailed information region will remain shown in the currency used by that supplier.
Including Supplier Data in a Bill of Materials
Related pages: Bill of Materials (BOM), ActiveBOM
Being able to cost a project, and determine the quantities of design components to be ordered from suppliers/distributors, is an essential part of the overall design process. After Supplier Links have been added to Altium Designer components as required, the linked supplier data - including pricing and stock information - can be included in a Bill of Materials.
Each detected Supplier n/Supplier Part Number n pairing will be presented as a distinct Solution in the All Columns region of the Bill of Materials dialog (so Solution 1 for Supplier 1/Supplier Part Number 1, Solution 2 for Supplier 2/Supplier Part Number 2, and so on).
For each Solution n, the following data can be included in the BOM:
- Manufacturer n - name of the Manufacturer of the item
- Manufacturer Part Number n - part number that the Manufacturer uses to identify the item.
- Supplier n - name of the Supplier of the item.
- Supplier Currency n - alphabetic code for the chosen currency used for pricing data.
- Supplier Order Qty n - number of units required to fulfill the desired production quantity of the product.
- Supplier Part Number n - part number for the Supplier Item.
- Supplier Stock n - how many units of the item the Supplier has in stock.
- Supplier Subtotal n - the Supplier Order Quantity multiplied by the Supplier Unit Price, giving the subtotal for that item.
- Supplier Unit Price n - cost, per unit, of the Supplier Item.
Select which data to present by enabling the respective Show option. Enabling the Show option associated with the Solution n entry itself will automatically enable all data elements for that solution.
Specifying Production Quantity
You can fully cost a project based on the number of units of the product that it is intended to produce - the Production Quantity. Use the Production Quantity field, in the Supplier Options region of the Bill of Materials dialog, to specify the required value.
The value entered into the Production Quantity field is used to determine the Supplier Order Qty - the quantity of component that would need to be ordered to produce the given product quantity. This is calculated by multiplying the Quantity (of each particular component) by the specified Production Quantity.
In turn, the Supplier Order Qty is used to determine the Supplier Unit Price that applies. Remember that suppliers typically offer various quantity pricing levels, depending on how many units of an item are purchased. To have Altium Designer round up the Supplier Order Qty to take advantage of the next (reduced) pricing level, simply enable the Round up Supplier Order Qty to cheaper price break option.
Changing Supplier Currency
The currency used for pricing-related data in a Bill of Materials can be specified from the range of supported currencies. Simply choose the required currency from the drop-down field available to the left of the Production Quantity field, in the Supplier Options region of the Bill of Materials dialog. The chosen currency will affect the following data columns:
- Supplier Unit Price n
- Supplier Subtotal n
Using Cached Pricing Data in BOM Parameters when Offline
When working online - connected to the internet and signed in to an Altium account - pricing-based data for components with links to Supplier Data will be updated. When generating a BOM, the latest pricings at that point in time will be used. For specific currencies, the exchange rates are updated on a daily basis.
When working offline, there is the ability to use the last cached pricing data in the pricing-based parameters in the BOM. To do this, from within the Bill of Materials dialog, simply enable the Use cached pricing data in parameters if offline option - in the Supplier Options region of the dialog.
Example BOM Template
The Excel template file BOM Supplier Links.xlt provides an example BOM template that includes supplier link information. This file can be found in the \Users\Public\Documents\Altium\AD<VersionNumber>\Templates folder of a default Altium Designer installation.