Import and Export Data

BOMIST tries to make it super easy for you to import and export data. There are two main UI components in the app you might want to import or export data into/from: tables and trees.

To open the import/export dialog, right-click on the UI component and select the appropriate option in the displayed context-menu, or by click in the dedicated button if available.

Tables

All tables are exportable by default but only a few ones are importable. Examples of importable tables include: the Parts table and BOM table, in the Projects tab.

Importing from CSV

Importing data into tables is done through CSV files. You can create those files manually using spreadsheets software (Microsoft Excel or LibreOffice Calc), generating them with a script or by exporting them from your EDA software.

With an CSV file on hand, all you have to do is to tell BOMIST how to map the columns into the required fields.

If the CSV file contains headers with the names that BOMIST expects, they will be automatically mapped.

Any issues will also be reported.

Exporting to CSV, JSON, HTML and PDF

When exporting a table, only the visible columns will be exported. The sorting and grouping of the table is respected when exporting it (if applicable).

When exporting to CSV or JSON, you can simply copy the data to the clipboard, this way avoiding creating a new file.

When exporting to PDF, the name of the table and other relevant text (e.g. descriptions) are automatically added into it in other to provide a better context.

Trees

Similarly to tables, all trees are exportable by default but only some are importable.

Importing Trees

Contrary to table-structured data, there isn't a standard or commonly used format to represent trees. However, we believe text files with tabbed content are a simple but effective solution to this.

Having said that, you can represent a tree using the following text format:

Shelf
    A
        A1
        A2
    B
Room
    A
    B

In this example, we have two top level nodes (Shelf and Rooms), each one with its own child nodes. Depth is defined through tabs. This format is simple and easy to understand, and that's a big plus.

When importing tree-structured data, you'll be prompted with a merge confirmation dialog highlighting the new nodes, so you can review the changes resulting from importing data.

Exporting Trees

At the moment you can only export into the text format described above. Soon, you'll be able to export tree-structured data into JSON format as well.

Metadata

If you export one of the trees available on the app (e.g. Storage) you will notice a structure like this:

Shelf|storage:id1|{}
	A|storage:id2|{}

This is an extension to the format described above which allows to add some metadata. In this case, we can pass the id of the node and some other metadata in JSON format. By using this format, when you import a tree that was previously exported from BOMIST, all data contained in nodes is be preserved.

Workspaces

Workspaces can be exported into a single .bomist_dump file which can then be easily imported in another instance of the app or from another workspace. This allows you to easily transfer a workspace into another computer for example or to transfer a workspace into another workspace.

When subscribing to a TEAM plan, you might want to start it from a previously created local workspace. You can do that by exporting the local workspace and then importing it on the team workspace.