2.9.5 - Stronger Power Pick Connections

August 2, 2023

A shift in how we handle Web Services connections will eliminate potential errors caused by multiple services running (causing PowerPick license limit errors) and session issues. Instead of closing Web Services' sessions, ItemPath logs out, making it possible to reuse the session ID which is cached for 2 minutes.

New Features

  • Improvements have been made to increase Web Services performance.
  • A new Status page allows a manual restart of ItemPath and gives an overview of its performance. More status features to come here!
  • All forms in ItemPath's UI now have validation checks, which helps avoid issues if required data is missed or the wrong kind of data is entered.
  • Variables in our docker-compose.yml file have been updated for compatibility.
  • Deactivated workflows may be manually tested.

Bugfixes

  • We're in a time loop! After creating an order with Web Services, the order is not always immediately available in the PPG database. ItemPath now attempts to query the order up to 5 times, with a 1 second delay between the queries. If the order is still not found, then a 500 is returned—rather than on the first try.
  • A Data Push bug has been fixed, where a temporary session created in PowerPick was not closing its connection to the MSSQL database because the session's engine was not being disposed.
  • API access and refresh tokens could be viewed by logged-in users in ItemPath's logs in 2.9.4.0, but are now encrypted.
  • The orderBy function has been added to Bins, Kits, Material Properties, and Stations so they can be sorted properly in Reports and the Explorer.
  • An occasional bug when updating Data Push mappings has been fixed.

Patch 2.9.5.1

New Features

  • Our new status page now includes info about the number of PowerPick warehouses in use, compared to how many are licensed in ItemPath. Also on the status page: PowerPick and ItemPath version numbers and performance statistics like API calls, running features, and files generated. Plus, there's a handy button to restart ItemPath when needed.
  • When renaming a material via an PUT /api/materials/[id], we now check and update any order lines that have this material to also have the new material name. This mimics PowerPick's material renaming utility within material update API requests.
  • For those using custom Report columns, the UI in the settings has been tidied up.

Bugfixes

  • When ItemPath runs on a Windows device, it creates a lock file directory to prevent multiple instances of a cleanup process from running at the same time.
  • An issue with the "Blank" template option when setting up a new Dashboard view has been fixed.
  • We fixed pagination for several API endpoints when using "limit" and "offset" arguments.

Patch 2.9.5.2

New Features

  • The set global time zone and user's time zone show on the status page.
  • When upgrading from versions without permissions, Administrator roles are granted full permissions by default.
  • Reports that do not use PowerPick data are accessible even when PowerPick a connection isn't present.
  • A tooltip has been added to the API Logs page to help users easily identify what time zone the dates are being displayed in.
  • Five new Report Column Types are now available for ItemPath Task reports: Workflow History ID, Snapshot ID, User ID, Workflow ID, and Integration ID.
  • A user with no report permission and no report access will have an empty table of reports.
  • If a user does not set a custom timezone, the global time zone is used by default.
  • When adding or updating a report filter, the placeholder for 'none' is now 'Empty/None/Null'. This eliminates the issue of wanting to filter out a null value and a 'None' error message.
  • The PowerPick Web Services connection requires a PowerPick database connection. Both the API and UI now return an error if trying to test the Web Services connection when there is no active MSSQL connection.
  • Detailed logging has been added in a new tab in Connection for testing API connections
  • Two new comparators can be used with query parameters, which can be used to hide API calls (e.g. refresh calls):
    • [like] - checks for the existence of substring
    • [notlike] - checks for values where the substring is not in the string
  • The "Logs" page now has a switch that toggles a character limit to the body, error, and response column to a character limit of 100.

Bugfixes

  • When resetting a user's password with a reset link, the new password was saving but not showing a confirmation message, which has been fixed.
  • Date range search on API Logs page now converts to the set time zone instead of the one used locally.
  • Some MSAL Single Sign-On bugs have been fixed.
  • The ability to deactivate users was failing but has been restored.
  • Adding filters to reports was showing a "required" message if the value was not manually selected, but now the field validates as values are typed.
  • A bug preventing saving workflows that trigger at a minutely, hourly, or daily frequencies has been squashed.
  • An issue where PowerPick connections could show as valid, even if no successful connection was being made, has been fixed.
  • Missing "sorting" toggles for Explorer columns have been added.
  • Passing the query parameter "search" now works with the following routes: "GET /batches", "GET /integrations", and "GET /order_lines".
  • Some missing filters for /api/location_contents have been added, including "id", "warehouseId", "currentQuantity", "quantityExpected", "quantityPermitted", "shelfId", "carrierId", "creationDate", "countDate".

Patch 2.9.5.3

Bugfixes

  • Testing successful PowerPick Web Services connections was showing a success in the UI but showing a returned an error code in the logs. This has been resolved so the logs show the true response code.
  • The /api/location_contents endpoint now uses the "orderBy" function properly.
  • For ERP connections, when getting headers for an API request, the content-type is only set to application/json if the user hasn't specified a content type.
  • When a user tries to access just the "/api" endpoint (for testing or otherwise), they will be redirected to "/api/status" instead.


Patch 2.9.5.4

Bugfix

  • Connection settings (used for connecting to an ERP endpoint for Data Push) have been updated with content headers for compatibility with Oracle.

Patch 2.9.5.5

New Features

  • If the PowerPick database is disconnected, an indicator will show on the new status page where the PowerPick version and number of warehouses are displayed.

Bugfixes

  • "warehouseName" now works as a filter in API "GET" calls
  • Updating Cycle Count integrations was causing 404 errors because of a mishandling of the integration ID, which has been fixed.
  • The ability to restart ItemPath with an authenticated API call has been restricted.

Patch 2.9.5.6

Bugfixes

  • We've been working on our user permissions and fixed some errors caused by the order of the API calls we use to check permissions.
  • The "Edit" permissions have been fixed so users without them can't delete reports or report filters.
  • Adjust the label for the report filter value of "Empty/None/Null" to "No Value" to distinguish from results containing the word/string "None".
  • Changing the sort of the report data table no longer causes a crash.


Patch 2.9.5.7

New Features

  • The new Status page now features connection status chart! The top charts show PowerPick connections' status over the past 24 hours, and the bottom chart shows API calls over the last 30 days, sorted by HTTP code series (e.g. 400 and 500 errors).
  • Log reports now have Connection Name, Status, and Type columns available to be added.

Bugfixes

  • Fixed a bug with our new snapshot caching where the duration was getting set to 24 hours. The default refresh time is now 30 minutes, or less if data is grouped by hour (5 minutes) or by minute (1 minute).


Patch 2.9.5.8

Bugfixes

  • The "No Value" filter for reports wasn't playing nicely when combined with other selections, but this is fixed.
  • The URL Path setting in Data Push integrations was looking for a full URL. Now it just expects the path.


Patch 2.9.5.9

New Features

  • A new PowerPick Time Zone setting on the Settings page enables proper conversion to the local time in the UI, when the machine running PowerPick is not using UTC.

Bugfixes

  • Viewing Dashboard views on mobile or other screen sizes was causing layouts to save new positions, which has been fixed.
  • Updates to user permissions fixes the order of some permissions checks, which previously could limit the number of viewable reports.
  • The footer was not showing on the login page in recent versions, but this has been restored so the "Forgot Password" link is accessible.
  • "Put" history records were incorrectly returning the Location name rather than the Storage Unit name. This is fixed for Data Push mappings.
  • Using the "orderBy" filter for GET calls to the /api/storage_rules endpoint now works.