A common approach to BOM generation is to export the BOM data from Altium Designer, into a company-preferred Excel format spreadsheet. The BOM is generated from the Report Manager, which can be accessed from:
- ActiveBOM's Report menu
- The schematic and PCB editor's Report menu
- A BOM Report Output configured in an OutputJob
The Report Manager's Export Options includes two XLS File Format options:
MS Excel File - Native (*.xls, *.xlsx) - requires Microsoft Excel
MS Excel File (*.xls, *.xlsx) - uses a built-in XLS file generator, Microsoft Excel is not required
When an Excel option is selected a pre-defined Excel template can then be selected in the Template dropdown. When the Export button is clicked in the Report Manager the BOM data is generated and loaded into a new Excel Worksheet, using the format defined in the chosen Excel template.
How Design Data is Mapped in the Excel Template
Altium Designer 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 a document parameter called
Title. The Column statement is used to map per-component parameters, for example the
Designator component parameter.
The Field statement is used to map a document or project parameter, for example the
Title, into the BOM. The Field declaration is replaced by the passed value, as shown in the images below.
Fields are used in the format:
An example would be Field=Currency
Fields should be defined above or below the Column region of the template.
Column declarations are used to map per-component parameters, for example each component's
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:
An example would be Column=Designator
- 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.
Mapping Project-Level, BOM Header Information
Project-level information is typically mapped using the Field= statement, into the header of the BOM document.
||The currency chosen in the Supplier Options region of the Report Manager dialog.
||The filename of the source used for the BOM data.
||The full path + filename of the source used for the BOM data.
||For a BOM, this field displays Bill of Materials.
||Name of the generator - BOM when output is generated by the Report Manager.
||Title of the BOM, as displayed in the Report Manager (excluding the text "For BOM Document [<DataSourceFileName>]").
||For a BOM, this field displays BOM_PartType.
||The filename of the PCB data source.
||Production quantity defined in the Report Manager dialog.
||Name of the PrjPcb file (including file extension).
||Full path + the project filename.
||Date on which the report was created.
||Date and time at which the report was created.
||Time at which the report was created.
||Sum of the values in the BOM Items Quantity column.
||Title displayed at the top of the BOM Reports dialog.
||Name of the variant, as defined in the Variant Management dialog.
||Current revision of the BomDoc.
||Current revision of the project (incremented when a Commit Whole Project is performed).
||Displays the value assigned to the user-defined UserProjectParameter-n.
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:
An example would be Column=Description, or Column=Designator
Column information can be taken from several sources, including:
These ColumnNames are available for all components
PCB component location information can also be included. In order to use these columns, the Include Parameters From PCB option must be enabled in the Report Manager dialog.
It is possible to retrieve online data from suppliers, and include that into the BOM. Note that these are updated live, and are retrieved when the BOM is generated. Multiple suppliers can be set up for each component. In the table below, these have been described as Supplier Info x - replace x with the appropriate number.
||Manufacturer Part Number x
|Supplier Currency x
||Supplier Order Qty x
||Supplier Part Number x
|Supplier Stock x
||Supplier Subtotal x
||Supplier Unit Price x
User-defined columns are includes in the same way: