ActiveBOM
This document is no longer available beyond version 17.1. Information can now be found here: BOM Management with ActiveBOM for version 25
Facilitating real-time cost estimation and tracking for a board design, Altium Designer brings to the table a system that effectively and efficiently aides the designer in managing costs and availability of items used in that design. This system is known simply as ActiveBOM. ActiveBOM offers a live presentation of the design from the outset, providing early and ongoing cost estimation. It allows you to define target pricing at the individual item level. You can then track how actual costing fares against these estimates, and gives a timely flag if any cost blow-outs are on the near horizon. In addition, you can quickly assess item availability, complete with notification if there is a risk in the supply of a chosen part.
Added to the design project as a distinct BOM document (*.BomDoc
), ActiveBOM is delivered as two key structural elements:
- BOM Catalog – a real-time listing of all items and processes used in the design. This includes design components present on the source schematic documents, as well as additional items that can be manually added at any stage (for example components that you plan to use further along as the design progresses, the fabricated bare board, etc.). For each item, supply chain solutions can be defined as to the real world manufacturer parts to be used, which, in turn, reference the supplier parts available from the vendors vending those parts. Supplier Data comes from Part Choices – either assigned to components in the vault and sourced from global or local part catalogs, or manually defined by the designer directly in the BOM (for those components that are, as yet, unmanaged, or in other words, not vault-based). These solutions can be prioritized, giving the designer further depth of control.
- BOM Components – the application of the information defined in the BOM Catalog to all instances of the items actually used in the design. This is the data that can be used to generate a manufacturing BOM for use by the Supply Chain.
The beauty of ActiveBOM is that ultimately it will help electronic designers to play a more strategic role, by allowing costing and availability of design items to become active, real-time element drivers of the design process.
Accessing the BOM Document
A new BOM document is created for the active board design project by choosing File » New » BOM Document from an editor's main menus. The document, with default name BOM1.BomDoc, will open as the active document in the BOM Editor. Save the document, changing the name to something more meaningful (for example, named after the board design project itself).
Sourcing Supplier Data for Design Items
For items used in a design, supply chain solutions are sourced in a number of ways:
- For vault-based components (managed or 'Unified' components), this data is retrieved automatically from the Part Choice List Items defined and associated to the respective Component Items.
- For components that are not placed from a vault (unmanaged) this information can be:
- Defined in situ within the BOM Catalog, through the addition of manually-configured solutions (or 'manual Part Choices').
- Sourced through Supplier Links added to a component.
Manual Part Choices may also be defined for a vault-based component, thus expanding and complementing those solutions already defined in, and gained from, its corresponding PCL Item.
The actual data for the supply chain solutions – Manufacturer (and part number), Supplier (and part number), Description, Pricing, and Availability – is sourced as follows:
- Vault-based Part Choice List, BOM Catalog-based Manual Part Choice List – from an applicable Part Catalog and the relevant Supplier database.
- Supplier Link (present for a placed part) – directly from the relevant Supplier Database.
Global Part Catalog
This is Altium's managed, cloud-based part catalog database. The Global Part Catalog stores items representative of actual Manufacturer Parts, along with one or more items representative of Supplier Parts – the incarnations of those Manufacturer Parts, as sold by the Suppliers/Vendors. Each Supplier Part is a reference to an item in a Supplier database – an external database (Supplier web-based service). It is this link to the Supplier database that yields real-time pricing and availability data.
This catalog is used when a vault is not being used, or the Altium Content Vault is being used.
Local Part Catalog
This is a managed local part catalog database, provided as a service through the Altium Vault installation. This service is dedicated to the management and tracking of manufacturer parts and their associated supplier parts. It is installed at the same time as an Altium Vault and works only with this type of Altium Vault.
The Local Part Catalog stores items representative of actual Manufacturer Parts, along with one or more items representative of Supplier Parts – the incarnations of those Manufacturer Parts as sold by the Suppliers/Vendors. Each Supplier Part is a reference to an item in a Supplier database. This can be an external database (Supplier web-based service) or an internal company database (ODBC-based). It is this link to the Supplier database that yields real-time pricing and availability data.
Access to internal supply chain intelligence through ODBC is also configured as part of this list through the provision of a dedicated ODBC Supplier.
Working with the BOM Catalog Tab
The BOM Catalog tab is essentially the 'nerve center' of the ActiveBOM concept. It is here that you can perform the following actions:
- Browse a list of all items used in the design.
- Manually add additional items to the BOM Catalog.
- Browse and define real-world part solutions to be used for design items. For items with a range of viable solutions, you can rank your top three, as preferred solutions that may be used by procurement.
- Add alternative components.
- Obtain and view real-time pricing and availability of items directly from Supplier databases.
- Set-up target costing per item and compare this to actual costing (based on real pricing data). Cost estimation based on required production quantity can be quickly viewed. Side-step cost blowouts before release by adjusting solutions as necessary to bring pricing back within target.
- Get an early warning of supply risk – is the chosen part solution within target price and adequately stocked for this design run? Or is it overpriced or worse yet, not in stock!
Working with the BOM Catalog tab is fairly intuitive, even more so when you break it down into three distinct areas, as illustrated in the image below.
- Item Detail - this is a listing of design items, including those actually used on the source schematic documents, as well as any manually-added items.
- Selected Solutions – this is the chosen solution(s) that you actively permit to be used/considered when procuring the real-world parts to implement the design items on the manufactured and assembled boards.
- All Solutions - this is a listing of all supply chain solutions for the currently selected catalog item.
Adding Alternative Components
Altium Designer supports Alternative Parts in the BOM. Building on the existing ability to define alternative parts for multi-source components (like discretes), using the Solutions feature you can select an alternative, functionally equivalent component. As well as functional equivalents, you also can split a set of multiple component into smaller groups, which is useful if you need to select an alternative for a sub-set of components.
Alternative parts can be included in the BOM as separate line items, by enabling the Include Alternative Items option.
Defining Alternative Parts
Support for alternative parts feature can be broken down into the following three areas:
Alternative Manufacturer/Supplier
There is often a multitude of alternatives available for discrete and generic components. Resistors, capacitors, diodes, even transistors and op-amps are available from multiple manufacturers through multiple suppliers. To identify alternative Manufacturers/Suppliers, set the Rank for your preferred choices. The first two ranked solutions can be included as detail for any part in the Bill of Materials for BOM report generation dialog, by enabling the Solution 1 and Solution 2 checkboxes in the selection column.
Alternative Functionally Equivalent Part
As the designer, you know your design inside out. This means you know that a particular component can be replaced by an alternative part, which might not be identical but for your design is functionally equivalent. To select a functionally equivalent alternative part, right-click on the part then select Add Alternative Item from the context menu. The Choose BOM Vault Component dialog will open in which you can browse and locate the required alternative.
In the BOM Catalog tab of the BomDoc, the alternative will appear as a separate line below the existing solution; click the + symbol to display the details of the alternative part.
To include the alternative part, enable the Include Alternative Items checkbox in the Bill of Materials for BOM report generation dialog. The alternative part will appear in the component grid below the original part.
Alternative Group
As you organize alternatives for your discretes, you might also want to break a particular component into a number of groups. For example, you have a large number of 10K resistors, and a large production run. To ensure supply, you would like to break this down and source the 10K resistors from four different suppliers when the BOM is processed. This can be done by splitting that part into four groups, with each group assigned a different Manufacturer/Supplier using the Rank feature.
Another situation where you might want to split a component into groups is when your design includes a component that requires a specific component from a specific manufacturer, but there are also other components that do not require the same restriction to a specific manufacturer. This can be achieved by creating a group for the special-case component to lock it to its specific manufacturer then assign the remaining components to the other group.
To split a component into groups, right-click on the part in the BomDoc then select the Split Item (Add Alternatives Group) command from the context menu. The Edit Alternative Group dialog will open. Name the Alternative Group and enable the checkbox for each component you want in that group.
In the BOM Catalog tab of the BomDoc, the Alternative Group will be shown as a new line below the existing solution, with the group name appended to the solution's Description. Note that the Group is displayed in the BomDoc differently than an Alternative Equivalent Part is displayed. This is because you are effectively breaking down a single, larger group of identical parts into a number of smaller groups. Each smaller group is then displayed as a separate line entry in the BomDoc and also in the BOM.
Including Alternative Parts in the BOM
To include Alternative Parts in the BOM, the Bill of Materials must use the BomDoc as its Data Source.
To display the alternative manufacturer/supplier details in the BOM, enable the required Solution checkboxes in the Bill of Materials for BOM Document dialog.
To display the alternative functionally equivalent parts in the list of components, enable the Include Alternative Items checkbox in the Bill of Materials for BOM Document dialog.
To cluster like-components, drag the DesignItemID or the LibRef label from the All Columns list on the left of the dialog into the Grouped Columns region. Include the Alternative Group Name label to separate out those entries that belong to an Alternative Group.
Working with the BOM Components Tab
The BOM Components tab presents the BOM itself, which is a listing of all instances of components used in the design (core catalog items, managed and unmanaged), along with instances of extra items added from the BOM Catalog as required. Use this tab to fully-customize the appearance of the data and to obtain the BOM content you need in your preferred layout.
The tab is essentially divided into three key regions:
- All Columns – lists all available data 'columns' that can be included in the BOM. These attributes are sourced from the properties of all components used in the board design.
- Grouped Columns – provides the ability to group BOM components by one or more specific attributes.
- Data – shows information for each enabled data column.
Board Costing
Costing at the board level is available regardless of the active tab in the BOM document. Read-only fields displaying this information can be found at the top-right of the document.
- Actual price per board – this is the total price to produce a board, calculated as the sum of the actual prices across all catalog items. For each catalog item, the actual pricing (cost per unit) takes into account the applicable price break offered by the Supplier and is based on the specified production quantity. The applicable price break is determined by the total number of units required for the selected item, which is the number of those items used on a single board multiplied by the number of boards nominated in a production spin (the value entered in the Production Quantity field at the top-right of the BOM document).
- Target price per board – this is the total target price to produce a board, calculated as the sum of target prices across all catalog items.
Use the Production Quantity field to see how the actual per-board pricing is affected, depending on the number of boards required in a production spin. Typically, the greater the Production Quantity, the lower the actual per-board pricing will be since Supplier-stipulated price breaks for the items used in the design come into play – it is always cheaper to buy in 'bulk'.
Refreshing the BOM Document
The BOM document can be refreshed in the following ways:
- Click the Refresh button to perform a manual refresh.
- Click the button on the BOM Document toolbar at the upper-right of the workspace.
- Press F5.
- Compile the source board project to perform an automatic refresh.
- Close and re-open the BOM document.
Refresh updates the BOM document from all available sources, taking into account:
- Changes to placed components in the design (e.g., descriptions, comments, etc.).
- Changes to Supplier Links added to placed components in the design.
- Changes to Part Choice Lists for vault-based components.
- Changes to supply chain data in a linked ODBC source.
Refresh has dual purposes. First, it ensures that Core-type catalog items (Core-Managed and Core-UnManaged) are re-synchronized with placed instances on the source schematic documents. Secondly, a refresh is needed to ensure the latest supply chain data is retrieved from the applicable source (Part Catalog and Supplier databases).
Search Facility
The BOM document provides a simple string-based search facility that can be used to search across the main item grid on the BOM Catalog tab or the main grid on the BOM Components tab.
Use the search field located below the Refresh button to enter the required search string. As you type characters, matches within the searchable areas listed previously will become highlighted in yellow. The first instance of a matching string is highlighted in green. You can narrow a search by typing more characters in the search string.
Cycle through the matching instances by using the F3 key or clicking the icon, to the right of the search field. The next instance will become highlighted in green.
The total number of matching instances of the search string, on either tab of the BOM document, is indicated in brackets, to the right of the tab name as shown in the following image.
Navigation
The BOM document provides strong navigational support that enables you to quickly view an item in its source vault or library, jump between an item in the BOM Catalog to an instance of it in the BOM itself, or jump to an instance of a BOM component directly on a source schematic sheet within the design:
...to an Item in its Source Vault/Library
With the BOM Catalog tab active, select the catalog item of interest then use the relevant command from the menu associated to the Navigate to control (above the Item Detail grid):
• For a Core-Managed, Extra-Managed, or Extra-Reserved item – use the [<Design Item Id>] in Vault Explorer command. The vault-based catalog item will be presented in the Vaults panel.
- For a Core-UnManaged item – use the [<Design Item Id>] in Library Browser command. The library-based catalog item will be presented in the Browse Libraries dialog.
- For a Core-Managed, Extra-Managed, or Extra-Reserved item – use the [<DesignItemId>] in Vault [<SourceLibraryName>] command. The vault-based BOM component will be presented in the Vaults panel.
- For a Core-UnManaged item – use the [Design Item Id] in Library [<SourceLibraryName>] command. The library-based BOM component will be presented in the Browse Libraries dialog.
... between BOM Catalog and Components Tabs
With the BOM Catalog tab active, select the catalog item of interest and click the Navigate to control (above the Item Detail grid). The applicable navigation command will appear in one of the following two forms:
- BOM Component [<ComponentDesignator>] – where only a single instance of the selected catalog item exists in the BOM. The single BOM component will be selected directly on the BOM Components tab.
- Choose from [n] BOM Components – where n instances of the selected catalog item exist in the BOM. Use the subsequent Choose dialog to specify to which BOM component to navigate. Components are listed by designator as well as the physical sheet on which they reside. After clicking OK in the Choose dialog, the entry for this component will be selected on the BOM Components tab.
- With the BOM Components tab active, select the BOM component of interest, click the Navigate to control (above the Item Detail grid) and use the Catalog Item [<Design Item Id>] command. The corresponding catalog item will be selected directly on the BOM Catalog tab.
...to a Component on a Schematic Document
With the BOM Components tab active, select the BOM component of interest and click the Navigate to control (above the Item Detail grid). The applicable navigation command will appear in one of the following two forms:
- Schematic – Component [<ComponentDesignator>] In [<PhysicalSheetName>] – where only a single instance of the selected BOM component exists in the board design. The source schematic document will be made the active document with the component zoomed and centered within the view.
- Schematic – Choose from [n] components – where n instances of the selected BOM component exist in the board design. Use the subsequent Choose dialog to specify to which BOM component to navigate. Components are listed by designator as well as the physical sheet on which they reside. After clicking OK in the Choose dialog, the source schematic document will be made the active document with the component zoomed and centered within the view.
Cross-Probing from the Schematic or PCB
The BOM document takes full advantage of the inter-document cross-probing capabilities between a source schematic and PCB. As you enter cross-probing mode from either the schematic or PCB document and click on a component, not only will that component be highlighted on the target PCB/schematic, but also its corresponding item entry will be highlighted on the BOM Catalog tab.
Generating a Manufacturing BOM
Once you are happy with the content of your BOM document, on the BOM Components tab, you can use that document as the data source when generating a BOM for use by manufacturing. This is performed through an Output Job Configuration File (*.OutJob) – either directly, or as part of the board release process. Use of the BOM document does not replace the ability to generate a 'static' BOM report for the project or a specific document (schematic or PCB). These can still be generated through an OutJob file or from the Reports menu. Simply add a Bill of Materials output generator as part of the Report Outputs section of the OutJob and ensure the Data Source is set to be the BOM document (*.BomDoc). Double-click the output generator to access its associated configuration dialog. The settings from the underlying BOM document are transferred to the BOM output generator (component data and display settings (columns, filters, sorting, grouping, etc.). You are free to modify the BOM as part of the output generator's configuration. Should you wish to revert back to the original settings in the BOM document, use the Restore from <BOMDocumentName> command from the right-click menu or the menu associated to the Menu button.