Import a CAD BOM

Most CAD applications can export a bill of materials (BOM) directly, usually in a convenient plain text format called "comma-separated values" (CSV). PDXpert uses a Data Transformations template to map the CAD file's headers and data to PDXpert's part records.

If you want to bulk-import many BOMs from a legacy data source like Excel or an ERP/MRP, use the External Data Importer tool.

An import file doesn't create any new items; it simply establishes relationships between an assembly and its immediate child items (a single-level BOM).

All items must already exist in the database, and are matched using the same Item uniqueness system rule that detects duplicate parts.

When an assembly is first released, its Find values are established as anchors for tracking row changes in later revisions of the assembly. Importing a BOM file into a later assembly iteration causes each imported row to be compared to the contents at the existing Find. Any changes in the row are marked as Add or Remove, as appropriate.

To minimize the number of irrelevant changes on a new assembly revision, do not arbitrarily change the Find value on revisions to an imported BOM file. For example, new BOM components should not be inserted into the middle of the list (which changes all subsequent Find values), but added at the end.

To import a BOM Markup from a file

A BOM import can be performed only within the Markup list, and only before the pending assembly iteration is approved and released.

  1. When you have your BOM file ready to be imported, create a new part record, or open an existing pending iteration. Select the part's BOM tab's Markup list.

  2. Within the Markup area, open the context menu, select the Import Markup from File command, and do one of the following:

    • Select Standard to import a file that conforms to PDXpert's standard import format as defined below.

    • Select an optional import Data Transformation template that matches your CAD export file. (This template must be added by your application administrator before you can use it for importing a file.)

    The Import Markup from File dialog opens.

  3. Browse to your import file, and then click the Open button. Your file is imported into the Markup list.

    Import files must have data in every row. Empty rows may cause an import to fail.

    When you import a new file, the current BOM markup is first reset; all edited rows (including manual edits) are cleared before the new import file is applied.

    If you discover an error after you accept the import, you can edit the records that you've imported, or import a new file to replace all edited rows on the markup.

Standard import file format

PDXpert also imports a BOM using the following standard format, which you may configure your CAD to export. This format doesn't require a custom template, and can accept BOM files with very little information. Most properties are optional; if the column is omitted or the row's value is empty, the system assigns values as shown.

A column name — which your exporting software may call the column header or label — is recognized only if it exactly matches the name shown. All non-matching column names are ignored.

Column definitions for importing BOM markup files
Column name Data type Assignment if empty Description
ChildClass string Part or Document Part

If not specified, then the child item's Class is assumed to be a part.

Only parts can be added to the BOM list; a document row is ignored.

ChildOwner Organizations member name default member (always the Home organization) Identifies the organization that is primarily responsible for the child item's specification and which issues the item Number. Unless the system rule is modified, this should always be the full name of the home organization.
ChildType Part Types member name default member

If not specified, then the appropriate type collection is determined by the child item's Class, and the default member of the resulting type collection is used to match the record's Type selection.

Only parts can be added to the BOM list; a row with ChildClass of Document is ignored.

ChildNumber string row is skipped REQUIRED: If the value is empty, the row is not imported.
Find integer ≥ 1 last find-item + 1

This value is assigned to the Find row identifier. Values on rows assigned to a single parent cannot be duplicated; that is, a parent assembly cannot have two rows with the same Find number.

The import file's Find value provides an anchor for comparing the current BOM revision to the previous BOM. If the Find column is not included in the markup file, the ChildNumber is used to identify differences between the previous BOM and the new import rows.

If you include a Find column, do not leave the values empty. The Find column is optional only when using the standard import format. When using a custom Data Transformations member, the import file must include a Find column.

Quantity double ≥ 0 1.0 This value is assigned to the row's Quantity value, and represents the number of child parts required to produce a parent.
Unit Unit of Measure default member If the value is empty, then the part's Default unit of measure is applied.
RefDes string: length ≤ 32000 characters no value assigned This value is assigned to the child part's RefDes ("reference designator") area.
Notes string: length ≤ 32000 characters no value assigned This value is assigned to the child part's Notes area.
Per string Per Assembly Must be assigned as Per Assembly, Per Setup, As Needed or remain empty.

A minimal CSV file can be quite simple if it relies on the default column value assignments, and your system rule Item uniqueness defined by: has only the Number and Organization checkboxes marked:

ChildNumber,Quantity

101012,1

100315,6

100917,1

110019,4

1142

Learn More
Help Guide Contents [PDF]