Expiration Datecan be passed when importing custom quotes- When importing custom quotes, existing quotes for mapped supplier and part can be automatically expired

- Menu added to expire selected custom quotes (at the current date)

[fix]BOM instructions not being copied when creating a new product revision copied from the previous one[fix]Chance for infinite loop when rendering Available Quotes
Happy new year! The first release of the year brings the beta into the main release channel and with it several new features:
- Barcode actions: with barcode actions you can accomplish a task, such as adding, removing or moving inventory by scanning a sequence of barcodes and without keyboard or mouse intervention. To initiate a barcode action all you need to do is to scan the barcode of one of the available actions on this Barcode Actions PDF and then the app will inform you of the next barcodes you should scan in order to complete it.
- Integration with third-party APIs from online suppliers. These APIs allow you to get pricing information and quotes directly from these suppliers or distributors. You'll have to get your API credentials from each of these suppliers in case you'd want to use them, and each will have different conditions and limits (e.g. maximum number of requests) which you should check. The app takes care of caching and ensures maximum requests per minute is respected for every supported API service. Currently supported APIs: Mouser, DigiKey, Element14 (Farnell, Newark), TME and Future Electronics. More to be expected. Credentials for the third-party APIs can be entered at
Settings - Workspace - Quotes.
-
Octopart / Nexar API is included by default (just as before; no account needed) but can now be disabled, if needed
-
The app now detects identical parts whenever importing or manually creating parts. Identical parts are parts with the same Part Number but identical Manufacturer (e.g. "Wurth Electronics" vs "Würth Elektronik"). By default, identical parts are considered the same. When importing parts you'll be warned about identical parts, if any, and given an option to manually confirm if those parts are meant to be considered the same or not.
This should prevent having multiple parts listed on the app that actually represent the same one. Before, a different Manufacturer for the same Part Number would always be considered as a different part whenever importing or manually creating a part. Once created, parts are still considered unique / different based on both Part Number and Manufacturer as different manufacturers might use the same part number.
- BOM Instructions: BOM instructions allow you to create steps that should be followed during assembly. A BOM instruction can reference items in the BOM and documents and notes can be added into it as well.
During production you can then change the status of each step from to-do, to in-progress to done.
- Calendar: you have now access to a calendar to better and more easily visualize important dates (deadlines). Just look for the calendar button that, if available, should be right next to the filters button (see below). Right now you have access to a calendar in: sales orders (delivery dates), production plans (dates by which products should be assembled) and production builds (dates by which production should have inventory reserved and has been fully assembled)
- Files can now be drag-and-dropped onto tables. Tables that can import data through a CSV file will accept CSV files (except purchase orders). Files can also be dropped into Document tables, both on the global table as well as on the Documents table that belong to things (i.e. parts, etc). In this case, the file is saved/uploaded to the workspace itself and becomes listed on the thing it refers to.
- Company information can be added under
Settings - Workspace. This information is then included on exported PDFs for sales orders and purchase orders
- A search input (Filter...) for basic search was added to the
Issuestable - When importing CSV files, the fields to map are now double-sorted: first by required ones and then alphabetically
- API: endpoint
/storage/<storage_id>/moveadded - API:
/documentsendpoints added so you can get and set documents for things in the app (i.e. for parts, etc.) - API: history endpoints added
- History: storage events are now logged (storage created, moved or removed)
- Production plans can now be imported through a CSV file
- When "going-to" something (e.g. a part), if filters are active and possibly preventing the item to show up on the table, a popup is displayed informing you of that including a button to quickly close filters so the item would become visible
[fix]Unable to import custom quotes unless parts are identified by Internal PN
- On a purchase order, when receiving items and printing the corresponding labels by clicking on
Receive & Print Labelsyou are now presented with a dialog which lets you choose if inventory or part labels should be printed. In case a Lot was created, a label for it can also be printed. Lead timecolumn added to the purchase list and product pricing tables (tables where quotes are used)- A supplier can have multiple entries for the same Part Number using different supplier part numbers
- Custom quotes can now have a URL
- BOM entry custom fields added to the product pricing and production build tables
[fix]DigiKey quotes not being presented as preferred
[fix]Unit price for items on a Purchase Order with status "ordered" displayed with 2 decimal places instead of 4[fix]Unable to set negative values for custom fields of type number[fix]Size of custom set part thumbnails too big, breaking the UI
- Parts that are
Consumablescannot change category, as other categories don't support unit of measures other thanUnit - Hovering the image/thumbnail in the part details tab will show up a tooltip with that image displayed in a bigger size
[fix]Values for custom fields of typeApp ElementwithPartnot being displayed on tables[fix]When cloning a part the unit of measure wasn't being copied possibly resulting in a crash[fix]Chance for a table view not to change
[fix]API: error on opening documentation[fix]API: when moving inventory, history logs being generated for inventorychangedinstead of inventorymoved
- Custom fields of type
URLcan now be searched [fix]API: when setting values for custom fields of typeurl, the API was incorrectly expecting a string instead of an object (now both are supported)[fix]API: not able to define a part when creating purchase order items- A few small UI improvements
This update brings important fixes and improvements on how parts are matched and auto-assigned when importing a BOM CSV file.
The app tries to match parts according to the Part Matching Data (PMD) - the values mapped on the CSV file - and the part matching fields - listed in the BOM preferences dialog - but fields don't have to be all matched. For example, if a 1k resistor would be required but the mapped Part Number wasn't found, another resistor with the same value could be picked (and automatically assigned if Assign first match was enabled).
You can now tell the app to only ever auto-assign a part if it fully matches the PMD by enabling the Exact matches option in the BOM Preferences dialog. If only partially matched, it's still shown as a suggestion so you can manually approve it.
The PMD icon on the table, for each row, will also tell you if the PMD has been fully matched (green), only partially (orange) or not matched at all (red).
- The
Manufacturerfield cannot be used as a singlepart matching field; in case you have it in use it will be forcibly removed. Instead, you most likely want to usePart Number + Manufacturer(the default setting) when matching parts - Previously, whenever manually setting a row as
DNP, the part, if previously assigned, would be assigned. TheAllow DNP with partoption in the BOM Preferences dialog (see above) allows the part to remain assigned - When importing a BOM file with the
DNPfield mapped, the following text can be used (case-insensitive; white-spaces, dashes and underscores ignored) to denote "do not populate":not fitted,dnf,nf,dnp,np,yes,true. [fix]Chance forAssign first matchto be used even if shown as disabled[fix]Chance for incorrect part match due to wrong text comparison
- Column selector now has
Hide AllandShow Allbuttons
- Quantities now have a tooltip displaying conversions for all other units in the same category
- Storage location can be added when (no storage) is selected, being added as a top-level location
[fix]Chance for crash when using units of measure other thanEachand theAvailable Quotesare visible[fix]Unable to enter initial inventory for a consumable part when manually creating it[fix]Incorrect calculation ofBatch Qtywhen using consumables[fix]When app crashes an error message and details should be displayed instead of a blank screen- A few other minor UI/UX improvements
[fix]Chance of price parsing to fail (dependent on currency symbol being used)[fix]On a production build, when moving inventory that has been reserved for an item through the tooltip, new storage location not being displayed[fix]Chance for row colors not to be updated when data changes[fix]Chance forLow stockvalue to be removed when manually editing a part