Home/DriveWorks guides/Uploading a SOLIDWORKS BOM to an ERP with DriveWorks Autopilot

Uploading a SOLIDWORKS BOM to an ERP with DriveWorks Autopilot

Engineering clicks one button in SOLIDWORKS. A macro exports the bill of materials, DriveWorks Autopilot validates it, loads it into the ERP over HTTP, and emails back success, failure, or success with warnings. For this manufacturer it saved about four minutes per BOM and took upload errors that had happened several times a day down to zero.

The starting point

The client's engineers uploaded bills of materials from SOLIDWORKS drawings into the business system with a third-party tool. It was confusing, had many manual steps, was prone to errors, and at times did not work at all.

It was also frozen. The tool was written in COBOL by an outside company, so every enhancement meant contacting the original developer. As the business changed, the upload could not.

What was built

A single step, started from SOLIDWORKS, that uploads the BOM and reports back every error or warning.

  1. A VBA macro in SOLIDWORKS writes the drawing's BOM to a CSV file on the network.
  2. The macro also writes a small XML file into a folder watched by DriveWorks Autopilot. It names the CSV, who should be notified, and which DriveWorks project and operation to run.
  3. Autopilot picks up the XML and starts the specification. Nobody opens a form.
  4. The project imports the CSV into a Simple Table. A Calculation Table then filters, sorts, and reshapes the lines into what the ERP expects, and checks each one for errors.
  5. HTTP requests to the ERP delete the old BOM, add the new one, and add generic shop-floor routings. Any messages the ERP returns are collected.
  6. An HTML email goes back to the engineer with the result: success, failure, or success with warnings. Internal support is also notified when anything errors.

What it grew into

Once the pipe existed, other departments asked to use it. Each of these was an addition, not a new project.

  • Electrical BOMs. Electrical engineering drew schematics in Microsoft Visio with an add-in, and those drawings held a BOM too. A similar script fed them into the same upload, so every bill of materials entered the ERP in one consistent way.
  • Fabrication. Laser and press brake programmers received a formatted, calculating Excel worksheet generated from the BOM and saved where they could pick it up.
  • Purchasing. Kanban checks flagged stocked items that would exceed their upper stocking limits and emailed purchasing, so low-quantity stocked parts could be ordered before the job reached the floor. That removed lead-time delays in final assembly.
  • Item master. Weight, special instructions, system capacities, and ID tag types were read from the SOLIDWORKS drawing and pushed to the item master in the same step.

Results

  • About four minutes saved per BOM run, roughly 0.7 hours per engineer per week.
  • Upload errors that had happened multiple times a day went to zero.
  • Errors are caught earlier. Problems that used to surface downstream are now reported at upload, which reduced rework and stopped those errors from affecting scheduled ship dates.
  • The client owns the logic. The rules live in a DriveWorks project their own team can change as the business evolves, instead of in code only the original vendor could edit.

The time saved per run is modest. The value was in the errors that stopped happening and in a process the client could finally change.

Why DriveWorks, for something that is not a configurator

Nothing here drives a SOLIDWORKS model. DriveWorks is doing a different job: it is a rules engine with tables, HTTP requests, documents, and email, running unattended on Autopilot. That combination suits integration work well:

  • Table tools. Importing a CSV and reshaping it with rules is what Simple Tables and Calculation Tables are for.
  • Web service calls. The Send HTTP Request task talks to the ERP's API and captures what comes back.
  • Unattended runs. Autopilot connectors let another program start a job by dropping a file or writing a row.
  • In-house maintenance. Someone who can write a DriveWorks rule can maintain it.

If you own DriveWorks and only use it for design automation, this kind of project is often the fastest return available. It also meets the test for a good first project: simple, and used by every engineer.

Common questions

Can DriveWorks upload a SOLIDWORKS bill of materials to an ERP system?

Yes. A SOLIDWORKS macro can export the BOM and trigger DriveWorks Autopilot, which validates the lines, sends them to the ERP through its API or database, and reports the result back to the engineer.

Does a BOM upload need DriveWorks Autopilot?

Autopilot is what makes it unattended. It watches for the trigger, runs the specification, calls the ERP, and sends the notification without anyone opening DriveWorks.

How does a SOLIDWORKS macro start a DriveWorks job?

In this project the macro wrote an XML file into a folder watched by DriveWorks Autopilot. The file named the project and operation to run and passed the inputs. Autopilot also has database and web service connectors.

What did the BOM upload automation save?

About four minutes per BOM run, roughly 0.7 hours per engineer per week, and upload errors that had occurred several times a day went to zero.

Base 10 Consultants is a DriveWorks Authorized Services Partner: CPQ configurators, design automation, and CAD-to-ERP integration for manufacturers.

Book a 30-minute call

Base 10 Consultants is a DriveWorks Authorized Services Partner and an independent company. This page is not written, reviewed, or endorsed by DriveWorks Ltd. DriveWorks is a trademark of DriveWorks Ltd; SOLIDWORKS is a trademark of Dassault Systèmes SolidWorks Corp. Behavior described here can differ between versions, so check the DriveWorks documentation for the version you run.