Cost failures during bulk costing

If any components failed to cost during your Bulk Costing session, aPriori still creates an “empty” cost component in the aPriori database that is mapped to that CAD model, but it does not contain geometric or cost information.

aPriori does provide a message window at the end of the Bulk Costing session, which lists these components and a brief description of the costing issues for each. In some cases, these descriptions are abbreviated, and there are other ways to get more information about the cause of the failure.

You can use the following approaches for investigating and handling costing failures after bulk costing:

  • Review the Limitations for Bulk Costing.

  • Look in the resulting rollup. Components that failed to cost displayed with a red X icon in the Status column.

  • If you open a cost component and all the fields on the Cost Summary or Part/Assembly Details tab are null, a dash is displayed instead of numeric values. This typically means that no geometry information was extracted, and no costing occurred.

  • In some cases, it may help to first delete the aPriori cost component from the aPriori database (using the Tools/Delete Components menu item) and then cost that single component individually using the main aPriori application instead of the Bulk Costing and Analysis module. For certain situations, better error messages are displayed that help you diagnose geometry issues. The main aPriori application can also detect situations in which NX™ assemblies are modeled within a single “part” file and handle it as a part rather than an assembly. After individually costing problematic components, you can add them to a rollup if needed.

Improving performance

To improve bulk costing performance, you can experiment with different values for bulkload.concurrent.loader.count=1 in the following properties file:

<apriori_install> ext\analysis-purchasing-module\plugin.properties

This controls the number of concurrent bulk load threads that aPriori supports. The value is limited by the number of CPUs (or CPU cores) that your computer has. If you specify more threads than CPUs, then the extra threads wait for the other processes to complete before running, and you won't see any additional performance benefit. Each thread, by default, consume an additional 2 GB of memory, so carefully balance any performance gains against the load on your system.