Modifying and Importing Your PCBA BOM
The primary input to aPriori for PCBA costing is a Bill of Materials (BOM) file in .csv format. This BOM may come from your PCB design software, PLM system, ERP software, etc., depending on where the PCBA is in its lifecycle and how your company works.
Regardless of its source, you must make some minor adjustments to the BOM data before you can import it into aPriori. The following table shows the required and optional columns that you should consider when adapting your BOM for import to aPriori. Note that the specific column names are not critical since you will be mapping these columns to aPriori columns when you import. For example, “LEVEL”, “Level”, and “Lvl” are all acceptable candidates for the level column, and will be mapped to the “Level” field in aPriori. However, you should be consistent in your naming convention across different BOMs. See the aPriori VPE Administration Guide for information about mapping PCBA BOM column headers to aPriori fields.
Column Heading
Required?
Comments
Level
Y
PCBAs should have only two levels, either 0 and 1, or 1 and 2.The top-level PCBA assembly part number should be level “0” or “1”. All other components should be level “1” or “2”. All other levels will be ignored.
Part Number
Y
This column contains the name of the part, which may be a reference designator to a drawing, or may be the internal company part number. If the latter, make sure that it matches the entries in the COMPONENT_PART_NUMBER column (see below).
Quantity
Y
The number of instances of the component on this PCBA.
Description
N
Any string that helps identify the component: “Fuse sm 5A”, “IC 5V voltage regulator”, “Capacitor 33UF 25V 20%”, etc.
Manually Costed
Y
Identifies any part which is not automatically costed but which is provided by the user. ONLY the row for the printed circuit board itself -- or for components that you do not wish to cost in the PCBA cost model (such as schematics, work instructions, or some other non-costed line item) -- should be set to TRUE. All other rows should be set to FALSE.
Component Pn
Y
This column contains the internal company part number for each component.
Material Cost
Y
Captures the cost of the PCB itself.
Unit Cost1
N
The current cost that your company is paying for this component.
Unit Type1
N
Typically “Each”, but could be “IN”, “MM”, or “U/M” (unit of measure) depending on the component.
Purchase Date1
N
The most recent purchase transaction.
Preferred Source1,2
N
A non-distributor component costing source such as internal data, web pricing, or contract manufacturer.
Preferred Supplier2
N
The distributor that sells the component.
Preferred Manufacturer2
N
The company that builds the component.
Pin Count3
N
Any integer greater than zero.
Mount Type3
N
Either “Surface Mount” or “Through Hole
Purchase Volume1
N
Specify the purchased volume for each component independent of the annual volume.
1. These fields provide the ability to capture existing purchase data specific to this BOM. These will be used when costing the PCBA if they provide a lower cost than provided by the Component Library.
2. You can specify the supplier, manufacturer, and source that you prefer to use for a component. If the specified supplier, manufacturer, and source exists for that component then this will override values in the component library. If the provided supplier, manufacturer and source do not exist for that component, the componment library values are used by default. You can also use Process Setup Options (PSOs) available on the Purchased Component node of each component to select the specific supplier, manufacturer and source to use from the options available in the Component Library.
3. These inputs enable you to cost components that are not available in the Component Library, streamlining the workflow for costing PCBAs with new components. If PIN COUNT, MOUNT TYPE, UNIT COST, and UNIT TYPE are all provided in the BOM file, then the component library lookup will be skipped for that component.
Once you have a PCBA .csv file formatted as described above, you will import it as part of the costing procedure described at How to Cost a PCBA.
To load a 2D image of the PCBA assembly
It is possible that you will want to associate an image of your PCBA with the aPriori assembly, similar to the images that are displayed of components that come into aPriori from CAD files. There are a couple of ways that you can do this. If you have an image file available up front, you can add a column to the BOM Loader import file and specify it at the same time that you create the assembly in aPriori. Or you can add the image at any time later. For more information about adding an image to your component, see the "Specifying 2D Images for virtual components" section of the aPriori User Guide .