Filters
on pretty much all the tables on the app (i.e, where they matter)Filters
can now be filtered themselves, so you don't have to look for the exact one you want to use- Parts table: display attrition even when set to zero
- Parts: when importing
Tolerance
the value is now cleaned so it can include other characters besides the number and still be correctly parsed into a number - Purchasing:
Add to...
context menu added to PLs and POs. This can be useful to "duplicate" PLs, by adding parts from another list into a new one. [fix]
Tables: jumping scroll[fix]
Lot: barcode labels wrong expiry date (set as current date)[fix]
API: export barcode label (custom data)[fix]
Purchase orders: save custom fields when importing a POlinux-only
[fix]
Unable to open workspace- Several other small UI/UX improvements
Table views
. Tables can have a lot of columns. You can even add your own throughcustom fields
. This might result in too much data on the screen and you might end up toggling which columns you want to set as visible quite often. Table views allow you to save the current table configuration so you can easily switch between them. A table view contains info about visible columns, columns order, columns width, sort by and group by settings and alsofilters
. Views that include filters will have an icon next to it indicating so.
- Parts:
Low stock
filter added to partFilters
, under theStock
field. This lists both out-of-stock and low-stock items. Non-stocking parts are ignored. - Custom fields: you can now add custom fields that point to some element in the app
- Projects: the
Sources
column is now exported into human-readable text (instead of text representing JSON data) [fix]
API: IDs passed when updating data (PUT
endpoints) are now correctly set[fix]
Update BOM pricing whenever custom quotes (price breaks) are updated[fix]
Editing actions on grouped rows are now disabled[fix]
Reorder columns on large tables: last columns couldn't be reordered[fix]
Shortcuts: zoom-out / decrease tables font size- Other small UI improvements
- Multi-level BOM is now available under Project Builds
- The quantity of ordered but not yet received items on a Purchase Order can now be edited
- Tree-structured data can now be searched (e.g. Labels)
- Adding parts into a Purchase List or Supplier: a dialog now allows you to add a specific quantity for each part and will let you know the quantity that already exists in the destination Purchase List or Supplier
- Custom print command, set through
Settings > Barcodes
, can now include the$data
wildcard. This is useful when using custom scripts to generate your own barcode labels, where$data
is replaced by base-58 encoded data of the object (part, storage or lot) - Shortcuts to increase/decrease table font size added:
Ctrl +/-
orCmd +/-
. Row height increases/decreases with font size. - Inventory dialog: previously used storage location is now remembered
- Parts: data can now be grouped by
Manufacturer PN
. This is useful to find out parts that have the sameManufacturer PN
but differentManufacturer
. The API would also be useful for such a task though. [fix]
Part Usage quantities and group by Project Revision[fix]
Scroll orientation on Filters and Available Quote has been set to horizontal instead of vertical. Improvements onmacOS
.[fix]
Tables: content overlaps column's width from a certain width. When increasing a column's width, the next columns are now pushed further to the right. The table will still try to fill up all the available horizontal space whenever possible.[fix]
When renaming a Project Revision, re-render dropdown box
- Tables: collapse / expand all rows whenever data is being grouped by at least one column
[fix]
Project builds: missing stock of parts used in multiple rows[fix]
Ensure workspace is closed when closing the app (this was preventing other computers to open a workspace previously used in a different computer)[fix]
API: error whenever the server or any endpoint is run
- Dropdown lists: options can be navigated and selected by using the keyboard, search input is automatically focused on whenever clicking on a searchable dropdown list
[fix]
History log's description not being displayed inline[fix]
Prevent inventory being added to a Lot whenLot Control
is disabled[fix]
EnsureColumn Selector
is visible on hover (some edge cases fixed)[fix]
Go-to inventory on the Lot items table
- Lots can now be created when manually adding inventory (through the Inventory table) or by importing Parts with the Lot field mapped
- Inventory can be added into existing Lots
[fix]
Some data not showing up (e.g. when receiving items on a purchase order)
Adding Inventory to Existing Lots
There's now a new type of Lot: custom
. Before, Lots were created only when receiving items on a purchase order or by finishing a project build. Custom Lots are meant to be used whenever manually adding or importing inventory (through Parts). On purchase orders, items received at different times can now be added into the same Lot. A given Lot, whenever referenced by a purchase order or project build, cannot be used for by anything else though.
- API: writing endpoints and query parameters to filter data added
- API: short(er) IDs are now used (instead of encoded - always different - text strings)
- BOM: two view modes are now available -
single-level
(same as before) andmulti-level
(the parts a sub-assembly is composed of are also listed in an hierarchical way). The multi-level view also allows to get a flatten list by grouping data byManufacturer PN
- Inventory: custom fields can now be defined (through Settings > Workspace > Custom fields)
- Purchase Orders: when importing POs from online suppliers (e.g. DigiKey, Mouser), set the product URL on each item if available
- Tables: grouped by columns are left aligned on the table for easier navigation (expanding/collapsing grouped rows)
- Printing barcode labels: built-in PDF viewer/printer can now overwritten so a third-party app is used instead (e.g. Adobe Acrobat, Foxit Reader)
[fix]
Column selector not showing up on first mouse hover[fix]
Removepurchased
inventory when reverting a purchase order fromordered
status[fix]
When adding inventory, if a storage location is not selected, add it to "unallocated" instead of an existing inventory[fix]
Storage: some parts not being listed under the "unallocated" node[fix]
When removing storage locations, ensure inventory's storage location is set as "unallocated"[fix]
Welcome screen: sign-in by pressing enter[fix]
Prevent crash in case most recent workspace can't be accessed
A better API
The API got a significant update: you can now use it to create and edit things on the app! Documentation is still served by the app but now it can also be seen here:
API DocumentationSearching capability is also improved as you can now pass filters through most GET endpoints. A few examples:
GET /parts?part.manufacturer=Microchip&limit=10 # get 10 Microchip parts
GET /parts?part.stock={"$lt": 50} # get all parts that have less that 50 units of stock
This is also a first step on a bigger goal: a plugin system
. By making the API more permissible and powerful will allow to create plugins that will bring additional value to the app.
Shorter IDs, Lower Density Barcodes
The API and barcode labels now use shorter IDs. For barcode labels, shorter text means lower density, which in turn results in easier to scan barcodes.
For the API, it keeps things cleaner, as these short IDs are now also "fixed" strings. Before, they were encoded strings, and as such, always different even if pointing to the same thing once decoded. To keep backward compatibility, the current API still accepts older/longer/encoded IDs.
Barcode Labels Printing Issues
The app ships with SumatraPDF on Windows. This is used to print your barcode labels which are first converted into PDF files. Even though for the most part this has been working fine, there have been also a few issues with it, namely poor printing quality and scaling issues on some printers or specific label sizes. To overcome this, you can now override the command the app uses to print PDFs, through Settings > Barcodes > PDF print command
.
This allows you to use third-party software such as Adobe Acrobat or Foxit Reader to print PDFs through the app. In order to do so, you'd set a command like this in the settings:
"C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe" /s /o /h /t $filePath "$printerName"
Each PDF software also comes with its own shortcomings though. Adobe Acrobat will always open its GUI which might be inconvenient. Foxit Reader will happily run on the background but will add some margins to the labels. Each software also has its own way to configure printing settings (e.g. scaling etc). These settings cannot be passed on the command line, so you'll have to use the app's GUI to print a label first so it will then remember them whenever using the command line later on.
[fix]
Inventory table:on-order
inventory not showing up for partially received items on a Purchase Order[fix]
Project Pricing & Availability: show available quotes for current target quantity[fix]
Infinite loop when generic part is set as alternate of itself (this would be only possible in earlier versions)[fix]
Generic part showing out-of-stock icon when it's not[fix]
When adding documents through theDetails
panel, don't go to the Document itself[fix]
Barcode settings: default printer not being displayed
- Purchase lists: create PO even if some items don't have enough stock on supplier (allow backorder)
- New supported units for SI Values:
b
(bits),B
(bytes) - When creating a Lot (while receiving items on a PO or finishing a project build), ensure the Lot number is unique
[fix]
Parts stock not being updated after importing/deleting a PO (this doesn't affect any other stock calculations in the app)[fix]
Purchase lists: change item's quantity, editable widget being displaced
- Purchase orders:
received on
can be set for items when receiving them [fix]
Barcode scanning: no need to add a line feed/carriage return at the end of the scanned string[fix]
Purchase orders:Received?
field doesn't show up on exported PDF[fix]
Purchase orders: when creating a LOT when receiving items, use the code written by user and not the default one[fix]
Custom fieldString
enabling fuzzy search by default even if that option wasn't checked[fix]
Lot usage: not displaying data