KanoaMES v1.12
Release Date - 9/30/25
Implementation Guidance
This release package has been tested against Ignition 8.1.49.
The minimum required version of Ignition is 8.1.33
- kanoaMES_1_12_1.modl
- ApexCharts-signed 1.0.17.modl
- BIJC_Calendar_Component_v1.8.1.modl
Note...
- We have added a constraint to the mes.stateEvent table that prevents duplicates records for assetId, assetStateId and tStamp. The installer will delete any duplicate records it finds before updating the schema.
Summary
Our latest release 1.12 prepares the groundwork for adding 21CFRPart11 compliance to our Quality product. Version control and change history has been added. It also contains a slew of improvements and fixes for KanoaOPS and KanoaTrace.
In summary, we have added...
- Improved downtime editing
- Quality Check sheet versioning and change history
Schedule
- We now default the schedule recurring option to 'This event'. This defaults to the smallest change rather than the largest change possible (same as outlook and google calendars).
- Incorrect schedule-break-ups with 'Shift Time Only' turned on. This is fixed.
Performance Events
- Display error on Performance Reason Config. This is fixed.
- Cannot delete a performance state class. This is fixed.
- Performance event assignment shows all reasons when it should restrict to only those that are linked. This is fixed.
- Performance reason links would fail if you didn't select an Item. This is fixed so now you don't have to select an item.
- Current shift is not being picked up by getAssetPerformanceEventsByShift. This is fixed.
Trace
- Added new lotTrackerUDT.
- Trace graph displays orphaned lots. This is fixed
- Lot Attribute Editor is missing from the lot Manager. This has been added back.
- Added asset and material constraints to lot operations.
- Mislabeled column in Lot Operation Configuration. 'Allow Input lots' should read 'Allow Output Lots'. This is fixed.
Documentation
- Log functions intellisense have been updated
- addItemStateClass does not work as documented. Changed documentation to itemStateClassDescription not itemClassDescription.
Downtime Editor
Asset state events are stored in the mes.stateEvent table with a tStamp. The asset is considered to be in this state until such a time as the next state event is recorded.
The downtime editor allowed a user to delete a state event record, but in doing so, the stateEvent prior to the one that was delete would now 'fill' that time period of the deleted event. This would lead to some confusion as deleting a downtime event might then be filled by a different downtime event. We have changed the logic so that the 'delete' action actually sets that stateEvent to a 'running' state with the idea that a user is trying to clear a downtime event.
Another issue that has been addressed is when a downtime event crossed multiple production modes. In the downtime table, it would look as though there were two downtime events when it was actually the same event just shown for different time periods. Editing or deleting one event, would change it for both. We have changed that logic so that editing one, will create a new state event, so only the event for the time period selected is modified.
- Updated table function mes.fnGetAssetStateEvents() to add stateStart and stateEnd times for downtime editing changes.
Quality
- We have materialized the qds.chkShtType table to optimize the database execution plans
- Added index IX_attributeTolerance_lookup
- Removed unnecessary JOIN from qds.vwCheckEventItems
- Optimized qds.fn_getAttributeTolerances() table function
- Incorrect toast message displayed when creating a new check sheet. This is fixed.
Run Control
- Scheduled Events are not updating their 'Produced' and 'Remaining' counts as the actual outfeed increases. This is fixed.
Marquees and Dashboard Widgets
Two new views have been added that can be used to replace or build new asset card widgets.
- kanoa/mes/analytics/widgets/assetCard/assetShiftOEEGraph
View params consist of assetPath, a fontSizeMultiplier that accepts a float to increase the side of the font when scaling for a dashboard and a shiftIndex (int) where 0 is current shift, 1 is previous shift etc. This view is linked to the new [Kanoa]kanoa/timers/getAssetShiftOEETimer tag for its source of shift data.
- kanoa/mes/analytics/widgets/assetCard/assetCurrentModeInfo
View params consist of assetPath and a fontSizeMultiplier that accepts a float to increase the side of the font when scaling for a dashboard.
- Custom dropdown option in Marquee display initially showing id instead of name. This is fixed.
Templates
- Have breadcrumb selector display items in correct sort order. This is fixed.