Including Design Data in an Excel-format Bill of Materials (BOM)

Nexus message

This documentation page references Altium NEXUS/NEXUS Client (part of the deployed NEXUS solution), which has been discontinued. All your PCB design, data management and collaboration needs can now be delivered by Altium Designer and a connected Altium 365 Workspace. Check out the FAQs page for more information.

A common approach to BOM generation is to export the BOM data from Altium NEXUS, into a company-preferred Excel format spreadsheet. The BOM is generated from the Report Manager dialog, which can be accessed from:

  • ActiveBOM's Report menu
  • The schematic and PCB editor's Report menu
  • A Report Output configured in an OutputJob

The Report Manager's Export Options includes Microsoft Excel Worksheet as an option, when this option is selected a pre-defined Excel template can be selected in the Excel Options dropdown. When the Export button is clicked in the Report Manager, the BOM data is loaded into a new Excel Worksheet, in the format defined in the chosen Excel template.

To learn more about the Report Manager read the page, BOM Configuration in the Report Manager.

How Design Data is Mapped in the Excel Template

Altium NEXUS data is mapped into the spreadsheet by including special Field and Column statements in the Excel template. The Field statement is used to map a single parameter, for example the Title. The Column statement is used to map per-component parameters, for example each component's designator.

Fields

The Field statement is used to map a single parameter, for example the Title, that is to be displayed at the top of the BOM. The Field declaration is replaced by the passed value, as shown in the images below.

Fields are used in the format:

Field=FieldName

An example would be Field=Currency

Fields should be defined above or below the Column region of the template.

Columns

Column declarations are used to map per-component parameters, for example each component's designator, description, user-defined parameters, and so on. This can also include: line numbers, PCB location data, and custom column data entered into the BomDoc, if there is a BomDoc in the project. The Column declaration in the template is replaced by the ColumnName string, with each row below being populated by that column value for each BOM Item, as shown in the two images below.

Columns are used in the format:

Column=ColumnName

An example would be Column=Designator

Notes:

  • Each column defined in the template must be displayed in the Report Manager, for that column of data to be transferred.
  • The data will present in the Excel spreadsheet in the same row order that it has in the Report Manager. Use the Report Manager's column sorting and sub-sorting feature to sort the rows as required.

Several example templates are included with Altium NEXUS, in the \Templates folder of the installation user-files.

The default template location is configured in the Data Management - Templates page of the Preferences dialog.

Mapping Project-Level, BOM Header Information

Project-level information is typically mapped using the Field= statement, into the header of the BOM document.

Mapping Document and Project Parameters

As well as the Field statements listed above, schematic Document Parameters (both default and user-defined parameters entered in the schematic document's Properties panel) and Project Parameters (Options for PCB Project dialog) can also be used as Fields, or as Columns.

Mapping BOM Item Information

The core region of a BOM is the grid of BOM Items, typically using a row for each component. Each column in this grid represents a component property, such as the designator, value, and so on. Columns are defined by entering the component property/parameter (BOM column heading), in the format:

Column=ColumnName

An example would be Column=Description, or Column=Designator

Column information can be taken from several sources, including:

 

 

If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.