OnTakt Changelog: Difference between revisions

From Knowledge Base
No edit summary
No edit summary
 
(28 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Server 4.10.4, Client 2.1.4, Proxy 2.7.4 ==
== Server 4.3.11, Client 2.4.10 ==
8/08/2023
11/18/2024
 
=== Machines ===
* New Preflight failure causes will now be added to the currently open Preflight record (if there is one) for visibility.
* The machine hold list and "scheduled holds" page now show upcoming manually-scheduled machine holds.
* Added "show only unassigned programs" option to programs page to allow showing all programs in one place.
* Machine cards now show mapped state names (as defined in the machine state definition list) instead of state strings reported by the machine.
** This can be reverted by enabling the "show raw machine states" global machine setting.
* Changing part flags now requires entering notes.
* Auto-calculated downtime values are now rounded to 2 decimal places.
* Attempting to set a machine hold's start timestamp later than its end timestamp now causes an error.
* Fixed state history chart rolling interval mode not updating state blocks.
* Improved parity with XMC's "count on program change" functionality: when creating parts due to a program name change, attribute them to the ''previous'' program and not the ''newly-loaded'' program.


=== Tools ===
=== Tools ===
* Tool selection dropdowns now show each tool's tags.
* Maintenance status tracking is now available for all tools instead of only durable tools.
* Tool selection dropdowns no longer show the "hide tools already in assembly" filter when not choosing a tool to add to an assembly.


* When replacing tools that last replaced in test mode, there is now a confirmation to continue the test, and if confirmed, the tool can be indexed indefinitely.
=== Maintenance ===
* Added an "Import" button to inventory point menus for importing inventory counts from a spreadsheet file.
* Maintenance items, reports, etc. can now be scheduled with hourly frequency.
* The tables in the inventory verification window now show a part number column and allow searching by part number in addition to name.
* Maintenance items can now be imported using a spreadsheet template and exported as a TSV file.
* Tool usage days are now counted based on days with shifts scheduled instead of always Monday through Friday when "weekdays" is selected as the day counting type.


=== Reports ===
* Maintenance items can now be assigned to specific processes, and they will only be considered as needed when that process is active.
** These maintenance items will be listed on the process's details page.
* Maintenance items that are not currently needed now have an indicator next to their due date in the maintenance table.
* Fixed machine and equipment columns missing from maintenance page.
 
=== Miscellaneous bugs fixed ===
* Fixed database connection failures caused by sending too-large event bus message payloads.
* Disable swiping from the left to accidentally open the alerts pane or to-do list.
 
=== API changes ===
 
* Preflight check responses now have a "record" property with the new/updated record instead of listing the causes separately.
* Added <code>GET /api/machines/holds</code> endpoint to query across all machine holds.
 
* Maintenance items now export a <code>currently_needed</code> boolean property.
* <code>GET /api/preflight/check/:machineID</code> now returns an <code>uncommitted</code> property with the latest failure data, since GET requests will not create or modify Preflight records to contain this information.
 
== Server 4.13.8, Client 2.4.8 ==
10/02/2024
 
=== Machine improvements ===
 
* Machines can now automatically start downtime for specific NC alarms and end it when the machine becomes active again.
** The list of alarms for a specific machine can be set under Edit -> Info -> Shop.
* Maintenance items can now become due early if their associated machine triggers specific alarms. [[OnTakt: Maintenance#NC%20alarms|Learn more]]
* Added a global machine setting to fail Preflight when there is not a process loaded. This setting is disabled by default.
* Reports that take a list of machines now allow selecting machines by tag.
** For scheduled reports, adding or removing machines from a tag will update future runs of the report as well.
* The utilization history report now has an option to show utilization in hours instead of as a percentage.
* Configurable offline machine detection
** Added global machine settings to control how long the NC, TMAC, and Preflight components can go without communicating before being considered "offline".
** Added a global machine setting to send a notification when a machine goes offline.
** Offline machines now appear as alerts instead of to-do items.
* Downtime blocks in production charts now have clickable segments across the top that directly open the downtime editor.
* Added a "Process" column to the tools table. It can be enabled using the Columns dropdown menu.
* When calculating the value of automatically-ending downtime, the machine's earn rate will be used if there is no process available. Processes without a cycle time set will still cause an alert to be shown instead.
 
==== Machine holds ====


* Added a "Work report" button to tool menus that links to the reports page with the tool work report and tool already selected.
* Multiple holds can now be created on the same machine. The machine will not pass Preflight until all holds have been released.
* Added optional tool and section parameters to the tool work report.
* Holds now track which user placed them, and can now have detailed notes.
* The tool work report charts are now separated by time increment.
* The start (and optionally end) of a hold can be specified to automatically hold and/or release a machine in the future.
* The "Copy" button on the reports page now copies a link to the page with the report parameters filled in instead of copying a link to the report output.
* Hold schedules can be created for automatic, recurring holds.
* A reason must now be entered to hold a machine.
* A warning is now displayed when attempting to hold a machine that is not set up for Preflight.
* The machine hold bar across the top of the machine card is now labelled with "Machine held" before the reason(s).


=== Interface cleanup ===
=== Tool and Tool Assembly improvements ===


* Date inputs now support typing in dates directly.
* Machine running without an active shift are now assumed to be running lights-out. This means Preflight will now only stop for tool expiration outside of a shift if the tool is critical.
* Date range start and end inputs have been replaced with a unified date range input that allows selecting ranges on the calendar or typing in the range directly.
* OnTakt will now send a warning to the machine's notification channel during the last staffed shift before lights-out shifts if a critical tool will need replacement before the next staffed shift.
* Added per-user settings to hide display variables from machine cards and stop alarm flashing after a set interval.
* "Add tool to assembly" dialog improvements:
* The shift bars at the top of production charts are now hidden by default, but can be enabled from the layers menu.
** Show location of each option's assembly.
* Fixed the total number of corners not showing up in the tool usage column of the tools table and removed the number of corners remaining.
** Show process of each option (if in one).
* The alerts pane can now be closed by clicking outside of it.
** Allow filtering by process.
* New application icon.
** Option to hide tools that are already in another assembly.
** Confirm when adding a tool that's already in another assembly.
* The "new tool assembly" and "new tool with assembly" dialogs have been merged.
** The tool assembly editor now allows adding and creating tools for both new and existing assemblies.
* The "Testing" badge in the Usage column of the tools table for a tool in test mode can now be clicked or tapped to show the testing notes.
* The "corners" field is now shown for all cutting tools instead of only inserts.


=== Other changes ===
=== Other improvements ===


* The "last NC/TMAC contact" times will now only update when the proxy communicated with the machine and not when the proxy is just reporting a communication error.
* Reports are now grouped into categories.
* Spanish and German translations are complete.
* The API documentation link now goes directly to the docs for the current server version.
* Fixed HTTP errors being returned as internal server errors with a support file.
* The maintenance item "Performed when machine is in use" checkbox has been relabeled as "Performed when machine is in use (not archived)" for clarity.
* Delete button icons are now consistent.
* The default set of machine state definitions after installation now maps the <code>OPTIONAL_STOP</code> state used by MTConnect 1.4+ to match the <code>PROGRAM_OPTIONAL_STOP</code> state used by older versions of the standard.
* Fixed translation formatting error in proxy alert title.
* When a machine's reported state matches multiple state definitions, the first state definition alphabetically by name will always be used.
* The built-in Markdown editor now has buttons to format selected text and insert links.
* [[OnTakt: Screenshare mode|Screenshare mode]] now shows fake machine, tool, and issue tag names.


== Proxy 2.7.3 ==
=== Bugs fixed ===
8/02/2023


Fixed XMC integration.
* Fixed state history charts not re-rendering on mobile devices when the screen orientation changes.
* Fixed client error when editing existing downtime that doesn't have a category set.
* Fixed client error after deleting a machine.
* Fixed server error when a client disconnects from the event bus unexpectedly.
* Fixed server warning when creating a new machine.
* Fixed server error when deleting a machine that has downtime.
* Removed superfluous <code>Content-Type</code> header from HTTP 204 responses.
* Fixed predicted tool replacements appearing too early.


== Server 4.10.3, Client 2.1.3, Proxy 2.7.2 ==
* Fixed server error when automatically ending downtime created by Preflight.
7/27/2023
* Fixed error when preparing to restore a backup when the database contains downtime blocks that were created automatically.
* The  "Noted parts" table header on the production page now displays correctly.
* The Preflight record details window no longer shows "[#]" for tools without a location set.
* Fixed client error when rendering the tool usage table in the part editor.
* Fixed the tools page failing to load when the persisted usage mode filter is invalid.
* Fixed bars appearing in the reverse order of the y-axis labels in the utilization history report.
* Fixed client error when editing or duplicating a scheduled report.
 
== Server 4.13.4, Client 2.4.4 ==
9/16/2024


=== New features ===
=== New features ===


* Machine states are now customizable. [[OnTakt: States|Learn more]]
* Maintenance page sort and filter options are now persisted per-user.
* Multiple shifts can now be defined and assigned to machines. [[OnTakt: Shifts|Learn more]]
* Critical maintenance items are now shown first in machine/equipment maintenance dropdown lists.
* New report: [[OnTakt: Reports#Utilization history|utilization history]].
* Added more process and program names for [[OnTakt: Screenshare mode|screenshare mode]].
* Users can now set their own idle and feed hold time limits for color fading.
* Downtime start/end times can now be set manually in the downtime editor.
* Server messages are now translated according to the <code>Accept-Language</code> header.


=== Bugs fixed ===
=== Bugs fixed ===


* Fixed reports failing to generate when only one machine is selected.
* Fixed new users not being able to log in until their password is changed.
* Fixed audit log failing to record updates of objects with timestamp fields.
* Fixed Microsoft Excel "number stored as text" warning in part report spreadsheets.
* Fixed machine custom alarms not matching correctly.
* Fixed a server bug related to event bus broadcasts.
* Fixed kudos report failing to generate when downtime received kudos in the selected time window.
* Fixed kudos report failing to render emoji correctly.
* Report errors no longer appear as JSON (when report is requested with <code>GET</code>).
* Demo machine feed rate override values are now more realistic.


== Server 4.10.2, Client 2.1.2, Proxy 2.7.1 ==
== Server 4.13.3, Client 2.4.2 ==
7/13/2023
9/04/2024


=== Machines ===
=== Machines ===
* Selecting tags in the machines page filter popup will show aggregated data from machines matching the filter.
 
* Utilization is now shown when expanding machine cards.
* Parts can now be flagged as "suspect" (in addition to "scrapped" or "reworked").
* Clicking programs table rows on the production page will now open the program editor.
** Reworked parts are now charted as light blue instead of amber, as suspect parts are now charted as amber.
* Machine feed rate override is now charted as a line instead of a gradient fill.
* The downtime editor now has a duplicate button that copies the downtime block to other machines.
* Added a "false alarm" flag to events. The events report will call these out separately.
* The machines page table view now has a "parts" column available that shows the number of good, scrapped, and goal parts.
* Alarms can now be linked to downtime. The events report will show the value of an event from the value of its associated downtime.
* The global machine color timing settings can now be set to zero.
* Programs can now be created manually before they are reported by a machine.
* Parts can now be manually created on machines that have never reported a program.
* When opening the downtime editor for a block that was previously set to auto-end and has already auto-ended, the downtime block will no longer reset to waiting for its end condition.
* Fixed production charts sometimes showing incorrect shift names after changing dates.
* Fixed machine cards failing to indicate current downtime for downtime that has no end time set.
* When sorting machines by production data, the machines page now shows a loading indicator until all visible charts have loaded to avoid cards moving around as each chart loads.
* Machine cards now show "OFFLINE" after 5 minutes instead of 1 hour.
* Machine descriptions can now be clicked to open them in a dialog that allows text selection and copying.
* When charting goals for past shifts that did not have any parts, rather than drawing a flat goal line OnTakt will instead try to use the cycle time from:
*# The next part that was produced
*# The currently-loaded program
* Fixed the state history page rolling interval settings wrapping into two lines on desktop.
 
==== Preflight™ ====
 
* Machines that have failed Preflight now show a "PREFLIGHT" status on their cards. Clicking on this status will show the reason(s) for the failure.
** The "PREFLIGHT" machine card status takes precedence over the "OFFLINE" status.
* Preflight failures are now logged along with the reason(s) for the stop. This log can be accessed from the machine menu.
* Added a global machine setting to send a message to the machine's notification channel when Preflight stops a machine.
* Added a global machine setting to automatically start downtime when Preflight stops a machine.
** The downtime editor now has a button to open the associated record when the downtime was automatically created due to a Preflight failure.
** The created downtime block will automatically end when the Preflight failure ends.
 
* Machine cards now show the last Preflight check time when expanded. When this is more than 5 minutes ago, an indicator will be added to the top-right corner of the card under the alarm indicators.
 
==== Custom shift notes fields ====
 
* Shift notes fields can now be assigned to individual shifts.
** If a field is not assigned to any shifts, it will appear for all shifts, so installing this update will not immediately change any behavior.
* If a custom shift notes field is not assigned to any machines, it will now appear for all machines.
* Shift notes fields can now be archived. This hides them during shift notes submission but preserves their historical data for later analysis.
 
=== Processes ===
 
* Added [[OnTakt: Screenshare mode|Screenshare mode]] to hide proprietary process information.
* Process dropdowns now show machine names and allow searching by process or machine in:
** Inventory page order mode
** Combined tool/assembly creator
** Tool assemblies page filter menu.
* Fixed server error when duplicating processes.


=== Tools ===
=== Tools ===


* Tools table filter popup card will now close automatically when clicking outside of it.
* [[OnTakt: Tool replacement notification rules|Tool replacement notification rules]]
* Fixed single-section tool notes showing line breaks as "<nowiki><br></nowiki>".
** Existing "repeated breakage" notification settings will be converted to a notification rule when installing the update.
* Fixed "tool created successfully" message not being formatted correctly.
* [[OnTakt: Tool life history|Tool life history]]
** Past changes to the part life of existing tools will be converted to life history entries when installing the update.
* [[OnTakt: Tool location history|Tool location history]]
* Tools listed inside the tool assemblies table now have a "remove from assembly" button in their action menus.
* Added a button to export all selected tools to a TSV file using the current column selection.
* Tool replacements can now be [[OnTakt: Tools#Backdating%20tool%20replacements|backdated]].
* When undoing a tool replacement, the tool's runtime counter at the time of replacement is now added back to the tool's runtime counter.
* Existing tool replacements can now be changed to testing tools from the tool replacement editor.
** To maintain inventory accuracy, the reverse is not allowed.
* When a tool is replaced with a test inventory item, the usual life fields are now hidden and OnTakt will not notify about its life usage.
* Added buttons to quickly clear the search and tags filter fields on the tools page.
* Added an optional "last replacement date" column to the tools table. Clicking the date will open the replacement details.
* Fixed sorting the tools table by the '''machine''' or '''last part''' columns not working reliably.
* Fixed the tool replacement history charts showing the wrong bars as test replacements.
* Fixed "Other" not always appearing at the end of the program breakdown list in the tool history window.
* Fixed the "duplicate tool" button editing the existing tool instead of creating a new one.
* The tool history window will no longer load older replacements when mousing over the oldest bars in the chart view. It will still load older replacements when scrolling to the bottom of the table or clicking the "load more replacements" button.
* Fixed server error when creating a tool with a life specified.
 
==== Tool assemblies ====
 
* Tool assemblies now have a button to add a tool in their action menus.
* Tool assembly dropdowns in the tool editor and "with selected tools" sidebar now show the process name of each assembly and allow searching by "#location" and process name in addition to assembly name.
* Fixed "[object Object]" list items appearing in the tool assembly bulk action sidebar.
* The process selection dropdown in the tool assembly editor now shows:
** the machine each process belongs to
** (and allows searching by) the name of each process's machine
* Fixed server error when duplicating tool assemblies.
 
=== Inventory ===
 
* Added a new inventory item type: Collet (under Durable).
* The Inventory Points page now highlights zero and negative item quantities.
* Improvements to the source inventory point dropdown in the tool replacement and maintenance entry wizards:
** The default option is now always listed to avoid showing the default inventory point's ID instead of its name when it doesn't have any of the required item in stock.
** The quantity of the required item in stock at the selected inventory point is now shown in the dropdown header and not just when the dropdown list is visible.
* The inventory points table now always fits vertically on the screen.
* Fixed the source inventory point dropdown sorting inventory points with the same quantity of items in ''reverse'' alphabetical order.
 
=== Maintenance ===
 
* The maintenance calendar now shows all future recurrences of each item.
* Maintenance items can now be assigned a difficulty level for filtering and sorting.
* Maintenance items assigned to a subsystem (equipment belonging to a machine) can now be tracked by the cycle time of the associated machine.
* Maintenance entry completion is now automatically timed.
** The expected time can be compared and adjusted to the actual average time by selecting maintenance items and then clicking "Analyze Completion Durations" in the sidebar that opens.
** The maintenance training matrix report now includes a second sheet with the average completion times.
* Critical maintenance items are now displayed as blue text in machine and equipment maintenance dropdown lists.
* Improved accuracy of item due date calculation for runtime-scheduled maintenance items.
 
=== Reports ===
 
* The parts report now includes columns for the total number of parts produced during the entire selected time range and the cost of the tool life used by each part.
* Added a tooling cost report (experimental).
* Fixed error when running the production summary report with shifts near midnight.
* Fixed Parts Report failing to generate when it includes multiple programs with the same filename.
 
=== Other bugs fixed ===
 
* Server error when TMAC reports an alarm without a tool number.
 
* Fixed server error when loading audit logs.
* Fixed not being able to click in the notes cell of a table row when kudos buttons are displayed.
* Fixed client error when adding or removing kudos on a part after editing the note.
* Fixed email notifications not working with SMTP servers lacking the AUTH extension.
 
=== Other changes ===
 
* Removed per-user machine color timing settings. The global settings are still available.
* Updated open-source licenses.
 
=== API changes ===
 
* Added <code>GET /api/preflight/log/:machineID</code>.
* The Preflight™ check endpoint has been moved from <code>GET /api/machines/:id/preflight</code> to <code>GET/POST /api/preflight/check/:machineID</code> (and now accepts POST requests as well). GET requests will continue to work as before, while POST requests also have server-side effects, such as recording the failure, creating downtime, and sending notifications. The request and response formats have not changed.
 
* Added <code>GET /api/tools/:id/lifeHistory</code> to get the life history records for a given tool.
* Added <code>GET /api/tools/replacements/rules/*</code> endpoints to manage tool replacement notification rules.
 
* <code>GET /api/processes/'''analyze'''CycleTimes</code> has been replaced by <code>POST /api/processes/'''average'''CycleTimes</code>. The new endpoint allows specifying multiple process IDs in a single request, and the response format is now keyed by process ID instead of "minutes".
* Added <code>POST /api/maintenance/items/averageCompletionDurations</code>
* Downtime objects now include a <code>preflight_record</code> field if they were automatically created by Preflight™.
* After being deprecated in server 4.11.0, <code>POST</code> requests are no longer supported by <code>/api/machines</code>, <code>/api/processes</code>, and <code>/api/tools/assemblies</code>. Send <code>PUT</code> requests to these endpoints instead.
* Setting <code>priority</code> to 0 on a machine or maintenance issue now returns an error instead of silently failing.
 
== Server 4.12.22, Client 2.3.22, Proxy 2.8.10 ==
7/18/2024
 
=== Machines ===
 
* The '''Equipment''' page is now nested under the '''Machines''' page.
* Machine menus are now dropdowns instead of buttons.
* Moved unassigned programs from the '''Processes''' page to a new '''Programs''' page under it.
* The "chart range" setting on the Machines page is now persisted per-user with the other view options.
* Removed the redundant year column from production overview CSV exports.
 
==== Preflight™ ====
 
* Machines now fail Preflight™ if any of their tools are ''at or over'' 100% usage, not just ''over'' 100% usage.
* Individual shifts now now be set to ignore Preflight™ failures.
* Tools can be marked as critical. During lights-out shifts, only these tools can cause a Preflight™ failure.
* Machines can be placed on hold, causing them to fail Preflight™ with a provided reason.
 
==== Shift management ====
 
* Shifts have been moved to their own page in the Machines navigation dropdown.
* Shift notes can now be submitted for multiple machines at once from the action menu on the Shifts page.
* Assigning custom shift notes fields to machines now uses a checkbox matrix instead of a list of machines for each field.
* The Shifts page can now show the shifts assigned to a selected machine as a weekly calendar.
* Custom shift notes fields are now formatted better in Slack notifications:
** Checkbox fields are displayed inline
** Empty text fields are not listed
* Moved custom shift notes fields from a button on the '''Shifts''' page to their own '''Shift notes fields''' page.
* The global shift notes notification channel setting has been moved from the '''Machines''' page settings to the '''Shifts''' page settings.
 
==== Machine compatibility ====
 
* DMG MORI machines now have a "MAPPS name" configuration item.
* OnTakt now reads the rapid override from machines with SIEMENS SINUMERIK controls.
* Fixed incorrect or inaccurate rapid override when reading from machines using FANUC FOCAS.
* Fixed OctoPrint machines not working due to a configuration schema mismatch.
 
=== Tools & Tool Assemblies ===
 
==== New features & improvements ====
 
* Added a global tool setting to send an alert (and optionally an external notification) when the same tool is replaced due to damage/breakage a configurable number of times in a row.
* The tools table can now be filtered by usage mode (parts, clock time, or cycle time).
* The "assigned to a chosen process" filter dropdown now shows the machine each listed process belongs to.
* The "using a chosen inventory item" filter dropdown now only lists tool-type items that match the current consumable/durable filter and shows item type icons.
* The machine filter dropdown on the tools page now shows the name of the process active on each machine.
* The "in a chosen assembly" filter dropdown now shows the process currently using each assembly and the assembly's location within the process.
* When replacing a tool for the first time, the "max runtime" and "day life" fields are now set based on the counters of the tool before replacement. Previously, only the "part life" field was learned this way.
* Tool replacement history can now be filtered to only show replacements with test items.
* Tool replacement predictions on production charts now account for tools in usage modes other than "parts".
 
==== Bugs fixed ====
 
* Fixed the "move" button being greyed out when bulk-removing tool assemblies from their processes.
* The tool replacement wizard no longer freezes after choosing "No" when asked to continue testing but then re-checking the test mode box in the inventory step.
* Fixed the tool replacement history window not highlighting replacements in the chart when hovering over table rows.
* Fixed the tool replacement history table allowing multiple of the same column.
* Fixed the tool replacements table header being offset by one column when the chart is visible.
* Past tool replacements on production charts no longer falsely render as "predicted" or "testing".
* The program breakdown is now hidden from the tool editor when it is empty.
* Corrected the hint text of the tool editor's notes field.
 
==== Other changes ====
 
* Tool schedule notifications have been removed. (Clock time is now a standalone tool usage mode and this feature has been superseded by the maintenance module.)
* Improved tools table layout and usability on phones.
* Clarified the test tool checkbox help text in the tool replacement wizard.
* Clarified the tool replacement test mode continuation prompt text.


=== Inventory ===
=== Inventory ===


* The header row of the inventory items table now stays fixed at the top when scrolling.
* Moved inventory points from a button on the '''Inventory''' page to a new '''Inventory Points''' page under it.
* When in order or receive mode, the selection sidebar for inventory items will shrink the rest of the page instead of covering the table.
* Added a table showing "maintenance items using this inventory item" when expanding inventory item table rows.
* When in receive mode, entering a quantity greater than zero will select the row.
* The inventory items table can now be filtered by whether items are assigned to tools or maintenance items.
* Inventory page table columns can now be customized. Customizations are saved per-user and will apply on any computer a user logs into. Each mode (display, order, receive) has its own set of columns to customize.
* Added a toggle to show the inventory point list as a table with the quantity of every inventory item at each inventory point to make it easier to find items throughout the shop.
* The tool number column of the inventory verification window is now sortable.
* Selecting the "other" type category in the inventory item table's "item type" dropdown no longer causes the webpage to freeze.
 
=== Maintenance & Issues ===
 
==== New features ====
 
* Maintenance items now have a "completion duration" field that is shown in the calendar view to make balanced scheduling easier.
* The maintenance calendar now has a summary view that shows the number of items and total completion duration for each day.
* The issues table now shows issue tags in the name column instead of a separate column to make the table fit on smaller screens when many columns are selected.
* The maintenance item dropdown in the issue editor now shows the machine or equipment associated with each maintenance item.
** It also now allows searching by machine or equipment name in addition to maintenance item name.
* The "next due" column of the maintenance item table now shows the warning date under the due (reminder) date.
* '''Issue resolutions:'''
** When closing an issue, there is now a separate field for entering the resolution.
** When viewing a closed issue, clicking the Resolution button will show the original description and final resolution for future documentation.
* The maintenance item editor now shows "Task" or "Measurement" in the header depending on the type of item being edited.
 
==== Bugs fixed ====
 
* The "current usage" section of the maintenance item editor is now hidden when creating a new item.
* Fixed the downtime editor showing the ID instead of the name of the linked issue when editing existing downtime that was already linked to an issue.
* Fixed client error when opening the issues table column selection interface.
* Fixed the maintenance page not showing measurement/task filter options.
* Pending auto-ending downtime no longer shows as a negative downtime duration in the issues table.
* Suggested downtime values are now reasonably rounded.
* Fixed server error when trying to get recurrences of a new/empty maintenance item.
* Fixed server error when filtering issues by resolved/unresolved status.


=== Reports ===
=== Reports ===


* Added a [[OnTakt: Reports#Machine Utilization|machine utilization report]], which allows exporting custom state history charts.
* Added a new '''part cycle report''' that shows the actual vs. expected cycle time of each individual part.
* Added [[OnTakt: Reports#Tool Work|tool work report]], charting work done by tools in TMAC alongside their replacement history.
* Added a new '''production summary report''' that shows the total time a machine spends in each state during each shift.
* The report type list now has a search box at the top.
* The billable excess capacity report now shows a "utilized hours" column.
* Report types can now be pinned to the top of the list. Each user has their own pinned reports.
* Time ranges in the utilization history report are no longer shown in ''reverse'' chronological order.
* In the utilization history report, the utilization value for each time range is shown as a label at the end of the bar.
 
=== General user interface improvements ===


=== Other ===
* The current page's dropdown items are now shown as a secondary navigation bar for faster switching.
* Navigation dropdowns now include the top-level page above the nested pages.
* Notification channel selection dropdowns are now searchable.
* Markdown fields now have a preview toggle.
* When scrolling to the top or bottom of a scrollable dialog window, the page behind it no longer scrolls instead.
* Image upload fields now all accept the same formats: JPEG, PNG, and WEBP.


* Overview charts can now be exported as CSV by clicking the download button in the window header.
==== Mobile layout & usability improvements ====
* A notification channel can now be an email address instead of a webhook URL. This requires configuring an email server in the global notification settings to work.
* Event bus deletion messages can now have an array of deleted object IDs instead of just one, which should improve performance significantly when deleting hundreds or thousands parts in bulk.
* The audit log no longer stores all properties and instead stores only changed properties. This will reduce the size of the database significantly, so during the upgrade, unchanged properties will be removed from old audit log entries. This may take a few minutes depending on the size of the audit log table.
----


== Server 4.10.1, Client 2.1.1, Proxy 2.7.0 ==
* Chart and calendar date navigation buttons no longer wrap onto multiple lines.
6/27/2023
* The issue editor and scheduled report editor no longer allow their OK/Cancel buttons to scroll off the page.
* The machine toolbar now uses smaller icons on small screens.
* The "Help" button in page headers is now just an icon.
* The "New" buttons in some page and table headers has been moved to a floating action button at the bottom right.
* The reports page header no longer wraps on smalls screens.
* Improved the mobile layout of production and process pages.
 
=== API changes ===
 
* <code>GET /api/tools</code> now accepts a <code>?usage_mode</code> query parameter.
* Tools listed in preflight responses now include an <code>assembly_location</code> field.
* The response body of <code>GET /api/tools/replacements/process/:id</code> and the <code>tool_replacements</code> response field of <code>GET /api/machines/:id/chart</code> are now a map of tool ID to replacements directly instead of redundantly nesting it inside a <code>tools</code> property.
* The <code>tools</code> production chart feature now adds an <code>upcoming_tool_replacements</code> field to the chart response.
* When serializing maintenance items to JSON, they now each have a <code>maintenance_items</code> field.
* <code>PUT /api/shiftNotes/fields</code> now accepts properties beyond <code>name</code> when creating a new custom shift notes field.
 
== Server 4.12.18, Client 2.3.18, Proxy 2.8.7 ==
6/19/2024
 
=== Machines ===
*Fixed Haas machines configured to use MTConnect causing the proxy to hang when setting 143 on the control was not set to 5051.
*Fixed the "parts with notes" table missing from the production page.
* Assigning shifts to machines is now done with a checkbox matrix.
* Fixed the process dropdown in the program editor listing processes from other machines.
 
==== Unified machine system schema ====
The system and model options in machine setup have been merged into one field.
 
*The path field is now only shown for machine models that support multiple paths.
*Removed FOCAS sub-models when setting up a machine.
 
==== Machine priority ====
Indicates to the shop which machines to focus on.
*Can be set in the machine editor.
*Machines page can be sorted by descending priority.
*Low/high priority indicators are shown before the machine name in the machines page card view.
*Available as a sortable column in the machines page table view.
 
==== Shift notes ====
 
* Added a global shift notes notification channel to the machine settings window.
**Shift notes notifications for all machines will be sent to the selected channel.
**The per-machine shift notes notification setting now controls whether a duplicate notification is sent to the machine's notification channel as well.
 
* Tools listed in shift notes submission notifications now include the location as well as the name.
* Shift notes notifications now have a separate section for overdue tool replacements instead of showing negative time and/or parts remaining.
 
==== Rapid override ====
 
* Rapid override is now recorded from the following machine systems:
** FANUC FOCAS
**DMG MORI (MTConnect)
** Haas (MTConnect)
**Mazak (MTConnect)
 
*Rapid override is now shown in expanded machine cards (for [[OnTakt Machine Setup#Supported features|machines that support it]]).
* Rapid override is now available as a production chart layer.
 
==== Downtime ====
*The issue linking dropdown in the downtime editor no longer requires filtering by date. Instead, it allows searching by name or description.
*Auto-calculated downtime values now allow for partial cycles.
 
==== State history ====
*The state history page is now always shown as a single column.
*Machines on the states page can be dragged to reorder.
**This order is shared with the machines page and between all users.
 
=== Equipment ===
 
* The equipment page now shows a loading indicator instead of falsely stating there is no equipment while loading.
 
*Removed the table view option from the equipment page.
===Maintenance===
*Planned downtime can now be linked to maintenance items instead of issues. This downtime can be listed by clicking the Downtime option in a maintenance item's actions menu.
*New "Maintenance Training Matrix" report shows how many times each user has completed each maintenance item.
*Added [[Markdown]] support to maintenance item instructions.
*Added an audit log button to the maintenance item action menu.
*When editing an existing maintenance item, the OK button is now shown for all steps.
 
==== Scheduling ====
 
* Maintenance items can now be scheduled with custom calendar-based rules.
* Added a maintenance calendar that shows the next due date of each maintenance item.
* The maintenance items table now shows the interval for items using the clock time and cycle time scheduling modes.
* The "interval" and "warning interval" fields in the maintenance item editor now default to days instead of hours.
 
==== Critical maintenance items ====
Maintenance items can be marked as "critical".
 
* They will appear in a separate to-do section and are highlighted in the maintenance items table.
* Indicators for critical maintenance items are shown in the machine/equipment maintenance history timeline.
 
==== Inventory ====
 
* Added new "hardware" and "spare part" inventory item types.
* For maintenance-type inventory items, the "Tools using this item" menu action is replaced with "Maintenance items using this item".
 
=== Issues ===
 
* When filtering issues by machine (for example, when linking downtime to an issue), issues for that machine's equipment are now listed as well.
* When linking downtime to an issue, the dropdown will now be populated with issues from the past week until a search is performed instead of showing an empty list.
* Issues assigned to equipment that belongs to a machine now show the machine's name in the issues table.
* Fixed equipment-related issues being included when filtering for shop-wide issues.
 
=== Tools ===
 
* When replacing a tool, the replacement reason no longer defaults to "other" and must now be manually selected.
 
*Added [[Markdown]] support to tool notes and post-replacement messages.
*Fixed the "TMAC recordings" button in the tool actions menu not working.
*Tools reported for the part currently being produced are now counted as "recently seen" for the active process.
*Audit log entries were being created each time a tool's runtime counter changed. This has been fixed and any such audit log entries will be deleted during the upgrade.
 
=== Alerts & to-do list ===
 
* Removed unused and unassigned tool alerts. Instead, unused tools are indicated in the process's tool assemblies table, which also now adds placeholder rows for unassigned tool locations.
 
*The alerts pane now allows filtering alerts by the associated machine.
*"Production behind" notifications will now only be sent when the machine first falls behind instead of repeating every hour.
* Fixed the "edit tool", "edit downtime", and "edit process" buttons not working in alert and to-do actions.
* To-do items to submit shift notes are no longer shown for lights-out shifts.
* The to-do list now automatically refreshes after completing an item.
* Tool life alerts now have a "replace" button.
===Other changes ===
*The inventory table can now be filtered by item type, including entire type categories.
*The navigation bar labels are now hidden on mobile devices to save space.
* Added a "presentation mode" user setting that disables the automatic release notes popup.
*Fixed the "server updated" dialog not showing a dismiss button.
*The scheduled reports table now shows the next run date of each report.
*Administrators can now view saved secrets, including the SMTP password, TMAC API keys, and webhook URLs, but ''not'' user account passwords.
*Fixed the billable excess capacity report showing all shifts for all machines instead of respecting assignments.
*The <code>Accept-Language</code> and <code>X-Timezone</code> headers were not being parsed correctly due to a change made in server version 4.12.12 to support global language and timezone settings. This has been fixed.
 
=== API changes ===
 
* Added <code>GET /api/machines/<id>/preflight</code> to check whether a machine is ready to run, meaning it has no overdue tool replacements and no overdue critical maintenance items.
 
*Removed the <code>model</code> and <code>nc_url</code> fields from Machine objects.
**Use <code>system</code> and <code>nc_properties</code> instead.
**Existing machines will be migrated to the new system names automatically.
*<code>GET /api/issues</code> now has a <code>q</code> query parameter that allows searching issues by name and/or description.
== Proxy 2.8.4==
5/24/2024
*Fixed a bug where alarms were not being cleared from FOCAS machines.
== Server 4.12.13, Client 2.3.14, Proxy 2.8.3 ==
5/17/2024
 
=== Machines ===
 
* Added support for multi-path machines.
** Create a separate machine for each path and set the path number each one should use.
** Supported on Okuma and DMG MORI machines using MTConnect and any machines using FANUC FOCAS.
* Shift notes notifications now include a list of tools that were replaced and tools that will need to be replaced soon.
* The machines page now allows hiding offline machines.
* Machines can now be disabled, which will hide them from the UI and stop the proxy from attempting to connect to them.
* Fixed server error when deleting a custom shift notes field that had values already entered. The values will now be deleted as well.
* The "Event Viewer" button is now labeled "Data Viewer" in the alarm detail window for consistency with TMAC.
* The "Open in Inspection" button in the part editor will no longer show up if Inspection is not installed. Requires OnTakt Daemon version 1.0.9 or newer.
 
=== State history ===
 
* The States page now hides archived machines unless the "Show machine archive" option is checked. This option syncs with the same option in the machines page filters.
* The States page now has an option to show only favorite machines. This option syncs with the same option in the machines page filters.
* The average utilization of all machines is now always shown at the top of the states page, not just when a tag is selected.
* The states page now supports a "rolling window" time interval mode.
* Fixed state history card progress bars showing 100% utilization in dense view mode.
 
=== Maintenance ===
 
* Maintenance history: see a timeline of issues and maintenance records from the Equipment page.
* Added a "Pump" inventory item type.
* The to-do list now includes maintenance items from machines and equipment instead of only showing shop-wide items.
* Maintenance reminders are no longer shown as alerts. This upgrade does not automatically delete existing maintenance alerts.
* Fixed "new issue" button in maintenance item menu not working.
* Fixed server error when deleting an inventory item that is used for maintenance. The maintenance item will now have the inventory item requirement removed.
 
=== Issues ===
 
* Issues now have an "additional value" field that is added to the automatically-calculated downtime value.
* Issues can now have a solution cost, which allows OnTakt to calculate how quickly fixing the issue will pay for itself.
* Issue menus now have an "end issue" button.
* Added a "Duplicate" action to the issue menu.
 
=== Reports ===
 
* Pressing the browser's back button after selecting a report to run will now return to the reports list instead of navigating away.
* Reports with date intervals are now more consistent about handling date boundaries with respect to time zones.
* Added a global language setting for use in automated notifications and scheduled reports. The web interface language will still follow the browser's settings.
* Added a global currency setting that shows consistent currency symbols in the web interface for all users as well as reports.


=== New features ===
=== Settings ===


* More NC and TMAC alarm information is now recorded, including the alarm code and other machine-specific attributes.
* OEE is now disabled by default, but can be enabled in the global machine settings window.
* The alerts pane can now be filtered by alert severity.
* The "max idle time" and "max feed hold time" options can now be set to 0 to disable color fading entirely.
* The machine card expanded details section has been redesigned to organize the information into NC and TMAC sections.
* Email addresses stored in notification channels can now be viewed after saving.
* OEE and tool history windows now scroll infinitely instead of needing to click "load more" each time.
* The selected timezone option is now validated before use.
* The URL field of the notification channel editor no longer shows "Unchanged" when creating a new channel.


=== Bugs fixed ===
=== Other changes ===


* Fixed the part editor not saving changes when clicking OK.
* The daily scheduled auto-refresh now occurs without prompting if there are no dialog windows open.
* Fixed the part editor previous/next part buttons only working once after opening from a chart.
* The "broken" tool replacement reason has been renamed to "damaged".
* Fixed tool replacements not showing up in the life chart of the tool history window after being edited.
* The proxy will now leave machine update fields blank if it could not read data from the machine, which should reduce the chances of ghost parts and duplicate alarms.
* FANUC FOCAS machines that report a part count of zero will now be ignored until they report a different part count to avoid creating ghost parts when FOCAS falsely reports the part count as zero.
* Part counts in production chart context menu actions are now formatted correctly.


=== API changes ===
=== API changes ===


* The alarm format in machine state updates has changed from an object to an array of alarm objects. For more information, see the [https://wolframmfg.gitlab.io/ontakt/otserver/api/machines/state_update.html#alarms machine state format specification]. This is not a breaking change yet because the server will still accept the old format.
* The <code>/api/options/calculator</code> endpoints have been removed. Use <code>GET /api/options</code> and <code>POST /api/options/savings_calculator instead</code>.


== Proxy 2.6.9 ==
== Server 4.12.10, Client 2.3.10, Proxy 2.7.13 ==
6/14/2023
4/24/2024


* When reading FOCAS part counters, a read of zero will trigger a fallback read of a different variable to double-check.
=== Machines ===
* Additional checks when getting FOCAS alarms to avoid reading garbage characters.
 
* Partially successful FOCAS machine updates will now be sent to the server, which will report errors reading variables, feed rate override, emergency stop state, and alarms to the user as alerts instead of skipping the update.
* New CNC machine icon.
* New machines will no longer create parts when they first connect, which will prevent them from creating hundreds of ghost parts immediately.
* The machine editor now has checkboxes for clearing the "NC authentication" and "TMAC API key" fields.
* The OK/Cancel buttons will now always fit in the machine edit window instead of scrolling.
* Fixed an error that occurred when deleting machines.
* TRUMPF lasers are now supported via OPC-UA.
 
==== Dashboard ====
 
* '''Archiving machines:''' machines that will not be used for a while should be archived to declutter the machines list and enable the correct set of maintenance items, which can now be set as needed for non-archived and/or archived machines.
* The current work order of a machine is now displayed on its machine card beside the active program and process information.
* Machine alarms without timestamps will no longer cause the client to fail to load the machines page.
* The filter and sort options for the machines page are now saved to individual user accounts instead of the browser. Note that this does ''not'' include the drag-and-drop machine sort order, which is still shared across all accounts.
* The machines page can now be sorted by the value of each machine's display variable.
* Machine description previews are now displayed in expanded machine cards. Clicking the preview will show the full text in a window.
* Part counts displayed in machine cards are now for only the current shift.
** This can be changed from the Sort & Filter menu.
** If the machine is not inside a shift, the part count is for the entire chart.
* Utilization displayed in expanded machine cards is now only based on the current shift.
** This can be changed from the Sort & Filter menu.
** If the machine is not inside a shift, utilization is calculated for the entire chart.
* The machines table view now has a tags column that can be enabled.
* Fixed the machine menu buttons in expanded machine cards overflowing into the machine status details section on certain screen widths.
 
==== Charting ====
 
* The feed rate line is now rendered as a step chart for more visual accuracy when the feed rate does not change often.
* Upcoming tool replacements are now predicted for all tools in use instead of only tools that have been replaced within the time range shown on the chart.
* Time outside the current shift is now shaded on production charts.
 
* Goals on production charts are now calculated per-shift.
 
* Added a marker on production charts indicating the current time.
* Enabled production chart layers are now saved to user accounts.
* Fixed a bug that caused charted TMAC events to do nothing when clicked.
 
==== Parts ====
 
* The part editor now includes a link to the corresponding parts in Inspection. This functionality will offer better features in a future Inspection update.
* Fixed double-clicking a day in the chart time range selection calendar not selecting a single day correctly.
* Fixed tool usage progress bars in the part editor always showing 100%.
* Fixed incorrect scroll behavior in the part editor.
 
==== Downtime ====
 
* Fixed auto-ending downtime failing when the associated process does not have a cycle time set.
* Errors encountered when calculating the value of an auto-ending downtime block will now appear as alerts.
 
==== States ====
 
* Machines that have not reported in an hour will now show an OFFLINE indicator instead of the last reported status and color.
* The States page is now located in the Machines tab drop-down menu.
* The states page now has a dense view option that can show up to six times more machines on the screen at once.
* State definitions can now be merged. This will not delete historical state records and instead reassign their state definition.
* Added a popup window for editing the machine state list of a state definition.
* Fixed server error when deleting a state definition that is currently in use by a machine. The machine's state will now be cleared instead.
* The error message displayed when creating a machine state definition that uses a state string that is already in use by another state definition now shows useful information.
* Fixed the x-axis of states charts not correctly adjusting to dense mode and showing overlapping time labels.
* The machine states page can now be filtered by tag(s). When filtering by tag, the average utilization across all matching machines will be shown at the top of the page.
* The machine states page can now be sorted by the default order, machine name, or utilization.
* There is now a button to manage machine state definitions in the edit menu on the machines page.
 
==== Shift notes ====
 
* Shift notes are now submitted per-shift instead of per-day.
* Individual shift notes submissions are now tracked.
* Mid-shift and end-of-shift messages are now sent per-shift instead of per-day.
* When calculating OEE for days with downtime reported, the duration of the downtime will be used as the unavailable time instead of estimating it from part time deltas.
 
==== Operator view ====
 
* Multiple machines can now be viewed together. To do this, filter the machines page by tag(s), and then click "Operator View" at the top right of the summary card.
* The machine actions menu is now displayed above each machine.
* The current value of the display variable is now shown for each machine.
* The current values of process-mapped variables are now shown for each machine.
* The tools table can now be filtered by maximum number of parts remaining.
* Fixed the operator page not loading sometimes.
* Machines in operator view can now be sorted by a named variable.
 
=== Tools ===
 
* Experimental tool run time tracking. See [[OnTakt: Tools#Usage%20modes|tool usage modes]] for more information.
* The client will no longer include tools with blank quantities when submitting an inventory verification, which caused a server error.
* Fixed the tool replacement checklist editor in the global settings window not working.
* Text in the tools table notes and stickout columns will now wrap correctly.
* Fixed tool replacement hover text not displaying on production charts.
* Tags can now be removed from all selected tools.
* The tools page now shows the active filter mode at the top.
* Tool Assemblies has been moved to the dropdown menu of the Tools tab.
* Each tool now keeps track of the last part it produced. This can be displayed in the tools table by enabling the "Last part" column.
 
==== Active tool tracking ====
 
* The tool number a machine is currently using is displayed in NC section of expanded machine cards.
* '''Assigned tool not used alerts:''' when a machine completes several parts without using a tool location that has an assembly assigned in OnTakt, an alert will be created with an option to remove the tool assembly from the process to avoid falsely counting parts against its life.
* '''Unassigned tool alerts:''' when a machine uses a tool that doesn't have an assembly assigned in OnTakt, an alert will be created to make sure all tool life is being counted correctly.
 
=== Inventory ===
 
* The inventory verification window now uses pop-up quantity field editing to avoid re-sorting the table while typing a new quantity when the table is set to sort by the quantity column.
* The lists in expanded inventory item table rows are now displayed as tables.
* When importing inventory point counts from a CSV file, the "name" column can now also be labelled as <code>item name</code> in the file.
* Added new maintenance-related inventory item types:
** Batteries
*** Alkaline
*** Button
*** Rechargeable
*** Other
** Filters
*** Air
*** Liquid
*** Other ''(items using the "Durable, Filter" type will be converted to this one during the upgrade)''
** Fluids
*** Coolant
*** Grease
*** Oil
*** Other
** Seals
*** O-Ring
*** Other
* The "corners" field in the inventory item editor will now only appear if an "insert" type is selected.
* Added a button to zero the on-order quantities of multiple selected inventory items.
 
=== Maintenance ===
 
* '''Equipment and subsystems:''' Use the Equipment tab to create equipment (standalone) or subsystems (tied to a machine). Maintenance items and issues can then be assigned to equipment separately from machines.
 
* '''Downtime categories''' now have additional metadata that can be used to simplify the downtime entry process. Planned or unplanned maintenance categories will hide the planned checkbox.
 
==== Maintenance items ====
 
* Maintenance items can now specify a warning interval. This will cause it to show up in the upcoming maintenance section of the to-do list that far before the due date.
* Upcoming and due maintenance items are now shown in the equipment page tree view, on machine cards, and on machine production pages.
* Maintenance items can now store a list of inventory items they consume.
** Items without a quantity specified will not be consumed, but their presence is required to complete the maintenance item.
* Added a checkbox to show only overdue maintenance items.
* The maintenance item table now shows the next due date of each item.
* Maintenance items can now have an initial entry date that will be used as the start of the first reminder interval. This is useful when creating maintenance items in the middle of their interval. Once an entry is created for an item, the last entry date is automatically used instead.
* The maintenance item editor is now a wizard-style interface to make sure all tabs are seen before saving.
 
==== Maintenance measurements ====
 
* Added a button to download charted maintenance measurements as a CSV file.
* Maintenance measurement entries now store the unit entered at the time of creation in case the unit in the maintenance item changes later.
 
=== Issues ===
 
* '''"Maintenance issues" are now called just "Issues"''' and have their own top-level tab.
* Issues can now refer to the item that was neglected to cause the issue.
* Improved interface for linking to issues from the downtime editor.
* The issues table and issue edit dialog now show the name of the user who reported the issue.
* Issues can now be assigned a priority (low, medium, or high).
* Issues can now be tagged and filtered by tags.
* The columns of the issues table can now be customized per-user.
* There is now a button in the issue actions menu to view a list of downtime blocks linked to an issue.
* Issue total downtime and value are now recalculated when updating from the server instead of appearing blank.
 
==== One-time maintenance issues are now downtime ====
The one-time maintenance issue feature has been removed, and existing one-time maintenance issues will be merged into the downtime feature during the upgrade:
 
* One-time maintenance issues associated with a '''single downtime block''' will have their notes added to the notes of the downtime block.
* One-time maintenance issues associated with a machine but '''not with any downtime blocks''' will be converted to downtime on that machine.
* One-time maintenance issues associated with '''multiple downtime blocks''' are not actually one-time issues and will be kept as maintenance issues.
* One-time maintenance issues that are '''not associated with any machines or downtime''' will be kept as maintenance issues.
 
=== Reports ===
 
* When emailing scheduled HTML reports, an HTML attachment with the report contents will now be included. When using email clients that do not display inline SVG images (such as the Gmail webmail client), download and open this HTML file in a browser to view the report.
* Alerts for scheduled report errors now include the name of the scheduled report that encountered the error.
* The state history report now includes the average utilization of each machine.
* Fixed margin report overcounting shift durations.
* The downtime report will no longer fail when downtime blocks do not have a value set.
* These reports can now show data broken down by shift:
** Machine Runtime Report
** Parts Report
** State History Report
** Utilization History Report
* Fixed a server error when sending tool stock reports.
* Redesigned the Reports page to be easier to use.
** Scheduled Reports are now on their own page in the Reports dropdown at the top.
 
=== To-do list ===
 
* The to-do list shows machines that need attention (prioritized by earn rate), offline machines, missing shift notes, overdue shop-wide maintenance items, and upcoming tool replacements in one place.
* It can be opened by clicking the clipboard icon at the top left of the screen.
 
=== Notifications ===
 
* Fixed message links and actions not showing up in Microsoft Teams.
* For notification channels with an unknown service, a generic webhook icon is now shown instead of poorly rendered text.
* More helpful error message when the SMTP hostname is invalid.
* When an SMTP connection times out, the server now logs an error message instead of just returning HTTP 500.
* Notification channel dropdowns now have a button to manage the list of notification channels.
* Fixed notification channel edits not being published to the event bus, so it is no longer necessary to refresh after editing notification channels.
* When testing a notification channel, the test button will show a loading indicator.
 
=== Other improvements ===
 
* When clicking help buttons on a computer without an internet connection, a QR code linking to the help page will now be displayed so users can open it on a mobile phone with network access.
* Recurring alerts will no longer be moved back to the top of the list. Instead, a "times seen" counter will increment and they will remain wherever they were in the list when they first appeared.
* Added a button to view the audit log of a single user's actions.
* New kudos emoji options: 🥳🤪🐦🐧🐸🐙🐝🦋🩵👆🤜🤛👀🌞⭐💡
* Improved desktop and mobile page layouts of page header buttons.
 
=== Other bugs fixed ===
 
* Fixed parts per cycle not being considered when calculating goals.
* Alerts are now correctly sorted newest-first.
* Wizard-style interfaces now respect [[reduced motion]].
* The global settings dialog has been simplified by moving settings relevant to only one page into the page itself.
* Fixed "OnTakt | OnTakt" being displayed as the page title while loading.
* Fixed client routing errors resulting in an infinite loading spinner.
 
=== Installation notes ===


== Server 4.10.0, Client 2.1.0 ==
* Any machines that have not yet been upgraded to the new array-style alarm persistence format will have their alarm state cleared from the database during this upgrade. The proxy will immediately re-populate the alarms of online machines.
6/14/2023


=== New features ===
=== Breaking changes ===


* All users can now create their own API keys that provide the same level of access as their account.
* The offline tool tracking spreadsheet has been removed.
** A new API key should be created for each application that will use the OnTakt API. This allows revoking an API key without disrupting other applications' usage of the OnTakt API.
* The historical machines page dialog has been removed because the machines page now allows viewing multiple days.
** The global API token is no longer accessible, but it will still work for administrator-level access if already in use.
* NC and TMAC alarm indicators on machine cards are now icons instead of red squares for clarity.


=== Bugs fixed ===
=== Proxy changes ===


* Shifts that cross midnight (start time is later in the day than end time) will no longer cause part goals to be negative, charts to have goals that decrease throughout the day, or machines to falsely show as "production stopped".
* Machines can now be configured to be ignored by the default proxy and handled by additional proxy instances instead.
* Typing to search the "running processes" field of the inventory ordering form no longer fails to filter the list.
* The proxy will now negotiate the security mode with OPC-UA servers even when using anonymous login.
* Part and event report notification messages are now formatted correctly.
* The proxy now supports authentication via user API key.
* The proxy will now log "Ignoring machine [ID] because it is not enabled in the config file" only once per machine.
* Fixed error message formatting in proxy log when TMAC job lookup fails while fetching tool work history.
* The proxy will now search a wider range of time for TMAC event monitors when reporting alarms. This means the "open in event viewer" link for events will work for more TMAC alarms.


=== API changes ===
=== API changes ===


* The new API key system requires the use of <code>Authorization: Bearer <API_KEY></code> instead of <code>X-Auth-Token: <API_TOKEN></code>.
==== New features ====
* Removed <code>date</code> and <code>timeRange</code> query parameters (deprecated in 4.9.1) from the following endpoints:
 
** <code>GET /api/machines/:id/goals</code>
* Added <code>GET /api/downtime</code> for querying downtime blocks across all machines.
** <code>GET /api/machines/:id/chart</code>
* Added <code>GET /api/downtime/<id></code> for retrieving a single downtime block.
** <code>GET /api/processes/:id/chart</code>
* Inventory points are now published to the event bus when their item quantities change.
** <code>GET /api/programs/:id/chart</code>
 
* Removed the <code>day</code> query parameter (deprecated in 4.9.1) from <code>GET /api/parts</code>.
==== Breaking changes ====
* Removed the <code>shift</code> property (deprecated in 4.9.1) from the object returned by <code>/chart</code> endpoints.
 
* Renamed the <code>Event</code> model type to <code>Alarm</code> to prevent confusion with the (unrelated) event bus
** Moved <code>/api/events/*</code> to <code>/api/alarms/*</code>
** Renamed <code>Downtime.event_id</code> to <code>Downtime.alarm_id</code>
** Renamed <code>Machine.event_notification_grouping</code> to <code>Machine.alarm_notification_grouping</code>
** Renamed the <code>alarms</code> production chart feature to <code>nc_alarms</code>
** Renamed the <code>events</code> production chart feature to <code>tmac_alarms</code>
** Renamed the <code>event</code> query parameter of <code>GET /api/downtime</code> to <code>alarm</code>
** Renamed the <code>event_report</code> report type to <code>alarm_report</code>
* Renamed the <code>MaintenanceIssue</code> model type to <code>Issue</code>
** Moved <code>/api/maintenance/issues/*</code> to <code>/api/issues/*</code>
** Renamed <code>Downtime.maintenance_issue_id</code> to <code>Downtime.issue_id</code>
** Renamed the <code>maintenance_issue</code> query parameter of <code>GET /api/downtime</code> to <code>issue</code>
** Renamed <code>maintenance_issues</code> to <code>issues</code> in the response body of <code>GET /api/shiftNotes/list</code> and the request body of <code>POST /api/shiftNotes/submit</code>.
* The read-only <code>shift_notes_submitted</code> field of <code>Machine</code> objects has been renamed to <code>last_shift_notes_submission</code>, and it is now an object instead of a timestamp.
* Inventory endpoints have been moved out of the tools endpoint:
** Moved <code>/api/tools/inventory/*</code> to <code>/api/inventory/*</code>
** Moved <code>/api/tools/ordering/*</code> to <code>/api/inventory/ordering/*</code>
* The items in each inventory point are now stored more efficiently and resiliently.
** Renamed <code>InventoryPoint.tools</code> to <code>InventoryPoint.items</code>
* Applying multiple mutually-exclusive filters to <code>GET /api/tools</code> will now result in a 400 error instead of the server silently picking one.
* <code>POST /api/tools/bulkAddTags</code> has been renamed to <code>POST /api/tools/bulkChangeTags</code>, and its <code>tags</code> request property has been renamed to <code>add</code>. The new <code>remove</code> request property will remove tags.
 
==== Deprecations ====
Some API endpoints used POST to create new objects, but that is now deprecated and will be removed in a future update. Use PUT instead for:
 
* <code>/api/machines</code>
* <code>/api/processes</code>
* <code>/api/tools/assemblies</code>
 
==== Removals ====
 
* Removed <code>POST /api/tools/replacements/sheet</code>. This feature is no longer available.
* Removed <code>GET /api/maintenance/issues/names</code>
* Removed the <code>issue_type</code> field from the <code>MaintenanceIssue</code> type because one-time maintenance issues no longer exist. Use the downtime feature instead.
* Removed the <code>inventory_points</code> property from the data returned by <code>GET /api/tools/<id>/replace</code>. A new <code>default_inventory_point_id</code> property has been added instead.
* The experimental <code>percent_life</code> and <code>percent_warn</code> fields of <code>Tool</code> objects are now omitted from API responses.API endpoints deprecated in a previous release have been removed:
 
* Removed <code>POST /api/tools/inventory/<ipt_id>/receiveOrder</code>. Use <code>POST /api/tools/ordering/items/<item_id>/receiveOrder</code> instead.
* Removed <code>GET /api/machines/<id>/shiftNotes/<date></code>. Use <code>GET /api/shiftNotes/list?date=<date>&machine_id=<machine_id></code> instead.
* Removed <code>POST /api/machines/<id>/shiftNotes/<date></code>. Use <code>POST /api/shiftNotes/submit?date=<date>&machine_id=<machine_id></code> instead.


== Server 4.9.6, Client 2.0.5 ==
== Server 4.10.24, Client 2.1.23, Proxy 2.7.10 ==
6/13/2023
1/15/2024


=== New features ===
=== New features ===


* Importing tools with the spreadsheet template will now create inventory items if the "Durable" column is filled in.
* '''Machines page table view:''' click the table icon in the toolbar to switch to a tabular machine view with customizable columns.
* When importing tools with the spreadsheet template, assemblies will now be named after the first tool row with a given location.
* '''Tool replacement images:''' users can now upload a photo when replacing a tool.
* Added a setting that allows users of the "shop" access level to replace tools into test mode.
* '''Billable excess capacity report:''' machines can now specify a target utilization and earning rate to use for this report.
* The machine runtime report now also includes a pie chart showing the time spent in each execution state.
* Auto-ending downtime will now calculate its value when it ends unless a value has already been specified.
* Tools table column customizations are now stored per-user instead of per-computer, so custom layouts will follow each user no matter what computer they log in from, and they will not affect other users.
* The tool replacement history table columns can now be customized.
* The inventory item of the tool history window now shows the inventory item selected during the ''previous'' replacement/rebuild, so for each row it is the inventory item in use during that replacement's lifetime.
* Added a global option to send a notification when the life of any tool changes.
* Machine cards now change color when the machine is inside a downtime block.
* Machine states are no longer case-sensitive and wildcards are supported. [[OnTakt: States#Machine%20states|Learn more]]
* The per-program usage of a tool can now be viewed from the tool editor before replacing the tool.
* New installations will now ship with machine state definitions for Siemens OPC-UA and XMC machines, and the TOOL/MDI machine state will be in a new "Setup" state definition.
* The margin and part report default filenames now include the selected start and end dates.
* There is now an "Add all" button when assigning shifts to machines in the shift editor.
* Dialogs are now better adjusted for auditor users: the OK/Cancel buttons are hidden and a close button is always present.
* Added a button to edit the list of inventory points from the inventory point dropdown in the machine editor.
* Improved production chart rendering performance when there are many parts.
 
==== Work orders ====
 
* Set the work order of a machine from the machine editor or under the production chart to automatically assign it to new parts. You can also choose whether to keep the work order set after the machine changes to a different process.
* Set the work order of an individual part from the part editor.
* Set the work order of many parts at once by selecting them on the chart and choosing "Set work order" from the right click menu.
* Parts with a new work order will be labelled on production charts.


=== Bugs fixed ===
=== Bugs fixed ===


* The downtime report is no longer overly precise when displaying durations.
* Leaving a required numeric field blank will now set it to zero instead of causing a server error.
* Fixed not being able to click into fields of the user editor when opened from the options window.
* Entering order quantities in the inventory item ordering table now uses popup field editing to avoid a situation where the displayed value got out of sync with the stored value during a table re-sort.
* State history charts no longer fail to render immediately in Safari.
* State times in the machine runtime report will now be limited to the time range selected.
* Fixed some external links not working.
* Clicking on days in the machine overview window now navigates to the production chart for that day correctly.
* Fixed release notes dialog sizing on mobile devices.
* The inventory verification window now adjusts to fit on small screens.
* Improved machines and tools page header button layout on mobile devices.
* Fixed error during database downgrade when there is pending downtime.
* Detect when report output pop-ups are blocked by Safari and show an error message.
* Fixed the inventory point dropdown menu in the machine editor.
* Fixed inventory items being added to the downtime category list when they are modified on the server instead of modified downtime categories.
* Fixed an error when updating downtime on production charts.
* The server will no longer attempt to send event bus messages to WebSocket clients that have experienced a network error.
* The proxy will now restart itself when a single NC update has taken one minute. This should better handle the case where <code>cnc_allclibhndl3</code> hangs indefinitely.
 
=== Other changes ===
 
* The object trash is now accessible from the user menu instead of the global settings window.
* The Favorite and Pin buttons in the tools table have been moved from the Name column to the Actions column for better mobile usability and desktop appearance.
* Machines will no longer be considered "stuck" is they have recently switched states even if they have not produced a part.
* Now using system tooltips on repeated elements for better rendering performance of long lists.
 
=== API changes ===


== Proxy 2.6.8 ==
* <code>GET /api/machines/<id>/chart</code> now supports requesting specific response fields via the <code>feature</code> query parameter for better performance.
6/08/2023
* <code>GET /api/parts</code> now supports filtering parts by work order via the <code>work_order</code> query parameter.


* Support for reading the feed rate override from Okuma milling machines via MTConnect.
== Server 4.10.21, Client 2.1.20, Proxy 2.7.8 ==
* Display variables for machines using FANUC FOCAS are now requested even when they are not used otherwise.
11/28/2023


== Client 2.0.4 ==
=== Production charting ===
6/08/2023


=== New features ===
==== New features ====


* The columns of the tools table can now be reordered.
*The machines page now allows charting an arbitrary number of days (ending with the current day) instead of just the current day or week.
* Rename tool "location" to "Tool #" and warn when it is not set on a tool assembly.
*Production pages now allow charting any range of days instead of just a day or week at a time.
* The last part count a machine reported is now shown in the variables tab of the machine editor.
*When choosing dates to chart on the production page, there is now an indicator on days with parts.
* Machine card preview charts now wait to download and render chart data until they are scrolled into view to improve performance and reduce memory usage for instances with many machines.
*When charting multiple days, there are now vertical separators between days.
*Machine action buttons are now shown on the production page in addition to expanded machine cards.
*Manually creating parts will default to the current time on the last day of the selected time window rather than the end of the last selected day.


=== Bugs fixed ===
==== Bugs fixed ====


* Fixed inventory table not sorting by order and receive quantities.
*Fixed incorrect goal rendering on production parts with cross-day shifts.
* Fixed tools table and processes table filter dropdowns showing the selected item's ID instead of its name when the page loads with a value already selected.
*Fixed incorrect cross-day shift rendering on production charts.
* Fixed machine card production chart previews growing outside their containers as new parts are rendered.
*Double-clicking a day in the date range selection calendar will select only that day.
* Machine card production chart previews are now re-rendered when the available width for the chart changes due to resizing the window.
*Ellipsize shift labels instead of overlapping them when there are too many to fit across the width of the production chart.
* Fixed tools table not sorting by type.
*Fixed tool replacements not showing up correctly in the table under the production chart.
* Fixed production page downtime table not sorting by duration.
*Fixed incorrect goal calculations when charting time spans that include days with and without shifts.
* Fixed awkward machine editor scrolling on small viewports.
*Downtime that started on a previous day and has not yet ended is now shown as current downtime on machine cards.
* Fixed feed rate always rendering as solid black on production charts.
* TV mode will now autoplay correctly when the controls are hidden.


== Client 2.0.3 ==
=== Tool management ===
6/06/2023


* Inventory verification window:
==== New features ====
** Fixed the location column of the "present tools" table always being blank.
** Fixed the "other tools" table not showing any tools.
** Fixed "remove from inventory point" button not working.
* Fixed file download spinners stopping before the file has been completely downloaded.


== Client 2.0.2 ==
*'''Item-oriented tool receiving:''' click "Receive into inventory points" in an inventory item's menu to distribute the received quantity into inventory points, rather than selecting multiple items to receive into a single inventory point.
6/05/2023
*The inventory point manager is now a dialog window, leaving more screen space for the inventory items table.
*'''Tool post-replacement checklists:''' items must be checked off after replacing a tool. These items can be defined in global settings and overridden for individual tools.
*When filtering the tools table by machine, switching to the tool assemblies table will now automatically filter by that machine's current process.
*Added an inventory point merge button.


* Allow selecting which tools table columns to display.
==== Bugs fixed ====
* Clicking on an inventory point now opens the inventory verification window. Inventory points can be renamed from the actions menu instead.
* Fixed inventory verification window quantities resetting when focus leaves a quantity input field.
* Fixed tool notes and stickout display in the tools table.
* Limit height of machine card production chart thumbnails.


== Server 4.9.5, Client 2.0.1 ==
* Fixed server error preventing importing tools from a spreadsheet.
6/05/2023


* Added close button to top right of part and event editor windows.
*Fixed the tool life tab of the part editor not fitting on shorter screens.
* Fixed tools table not sorting by parts remaining when sorting by the usage column.
*Fixed "tools using this item" inventory item link not showing all tools due to the "only show tools that are past their warning threshold" filter applying by default.
* Fixed "favorite machine" toggle button tooltip text.
===Other changes===
* Fixed server error when deleting machines.
* Fixed server error when restoring database.


== Client 2.0.0 ==
*Added support for reading macro variables from Haas machines without MTConnect using Q-Commands.
6/05/2023
* Added a global setting to disable the "production stopped" machine status.
* Ignoring zero part counts is now an opt-in setting on each machine instead of automatically affecting all FOCAS machines.
* Removed useless machine filter from programs table on process pages.
*The log message "Skipped field '...' when applying dict to <...> because the current user is not allowed to write to it" will no longer appear for fields that no users are allowed to modify.


The OnTakt frontend/client application has been completely overhauled with a new interface. The layout and organization is the same as before, but the new framework behind the interface should offer increased performance and browser compatibility, with greater flexibility for future improvements.
=== API changes ===
*Added an optional <code>month</code> query parameter to <code>/overview</code> endpoints.
*Deprecated <code>POST /api/tools/inventory/<inventory_point_id>/receiveOrder</code>. Use the new <code>POST /api/tools/ordering/items/<item_id>/receiveOrder</code> endpoint instead.


The interface has also been prepared for translation, with several languages coming soon.
==Server 4.10.18, Client 2.1.16, Proxy 2.7.7 ==
10/17/2023


In addition to the UI rewrite, the following changes are included in this update:
===Tools===


=== New features ===
*Tool assemblies can be marked as shared.
** When the machine in their assigned process switches to a different process, these tool assemblies will automatically be moved to the newly active process.
**Shared tool assemblies are shown in the tool assemblies table for all processes on their machine unless Show shared tool assemblies is switched off above the table.
*Tools and assemblies now have an image field for a photo or diagram to make setup and calibration documentation easier.
** Click the image cell to upload an image or view/update the existing image.
**The image column is hidden by default in the tools table. To show it, click the Columns button and drag it into the Selected area.
*The image column is always shown in the tool assemblies table.
*The inventory item selector in the tool editor is now searchable.
*In order mode, inventory items are now displayed in the table as long as their suggested quantity is greater than zero.
**Entering a quantity of zero will no longer remove an item from the table.
**Clearing the quantity field will display the suggested quantity.
*Tools can now have a replacement message that is displayed to the user after replacing the tool.
*Added a global setting to automatically increase the minimum on-hand quantities of inventory items to ensure there is at least one per machine using tools based on that item.
* Work report improvements:
**The tool work report can now be run without including tool replacements. If the tool replacements chart is not enabled, the tool work chart is aligned to number of cuts instead of time.
**Added total parts and work to the tool work report.
**Added TMAC tool work limits to tool work report charts.
* Added a tool alarm report.
*Improved the tool editor's assembly selection dropdown:
**The location and process name of each assembly are now displayed.
** The list is searchable by assembly name, process name, or assembly location.


* The number of parts in the chart selection area is now shown in the context menu.
=== Machines===
* The state history page now has an option to switch to week view instead of a single day.
* Tool type icons have been redesigned for improved clarity.
* OnTakt will now prompt to refresh the page after midnight to maintain performance and data consistency. If TV mode is active, the page will refresh without prompting.
* There is now a button in the user menu to send feedback or request support.
* Help buttons are now native browser links so the URL can be previewed by hovering.


=== Bugs fixed ===
*The proxy now looks up and reports the monitor ID for TMAC alarms. This means that TMAC alarms reported after installing this version will link to the specific recording from the event editor.
*Downtime categories can now be customized from by clicking "Downtime categories" in the machines section of the global settings window or the edit button next to the category dropdown in the downtime editor.
*Clicking the machine name at the top of a production page now shows a list of all machines with their current status, and clicking on a machine in the list will switch to its production page without resetting the date selection.
*Reworked parts are now listed next to scrapped parts under the production chart.
* When opening parts from the production chart, the part editor will have a States tab that shows the state history of the machine between the previous part and the selected part. This is not available for the first part of each day.
*Added a per-machine setting to send a notification when the machine finishes a cycle with at least one part.
*Machines page filters are now persisted between page loads.
*Added custom shift notes fields.
**Set these up in Global settings > Machines > Custom shift notes fields.
**Values entered for custom fields will be included in shift notes submission notifications.


* Variables reported by the machine with excessive floating point precision will now be rounded when used as a display variable.
===Processes ===
* Machine utilization will no longer be incorrectly reported as less than 0% or greater than 100%.
* Machine state history charts should no longer sometime show incorrect times in tooltips.
* The "analyze historical run times" button is no longer shown in the process editor when creating a new process.


== Server 4.9.4, Proxy 2.6.7 ==
*The processes table now has a menu for each row that allows manipulating the process without opening its dedicated page first.
5/01/2023
*This same menu is also available as a toolbar on each process's page.
*The changeover button in the process menu allows running a changeover from any other process to the selected process.
*Processes can now be duplicated.


* Added machine model for [[MTConnect#DMG MORI|DMG MORI via MTConnect]].
===General improvements===
* Added machine system for [[XMC OnTakt Integration|connecting to XMC]].
* Paths can now be specified in NC URLs when using MTConnect. This is only required for DMG MORI machines at this time.
* The system check report is no longer incorrectly listed as a spreadsheet.
== Server 4.9.3, Client 1.6.4 ==
4/26/2023


* Fixed the daily goal always being zero for days where a machine has not yet finished a part.
*Added OPC-UA support for SINUMERIK 840D sl controls.
* Inventory items are now correctly removed from the suggested order list when they are no longer needed after deselecting processes from the run list.
*Added start and end times to the "downtime blocks with notes" table in the downtime report.
* Fixed an error that occurred when creating a missing variable alert for a machine that does not have a process loaded, resulting in no alert shown.
*Downtime with notes in the downtime report now have edit buttons that open the downtime editor for that block in the client.
*Added a tool number column to the tool replacements table on the production page.
*Added confirmations when closing the shift notes entry wizard or switching between days.
*Downtime report improvements:
**Pie chart legends are now tables.
**Legend entries now include the total value lost.
**Renamed "Reason" chart to "Planned".
**Improved layout for printing in portrait mode.
*Clicking the tool assembly name in the TMAC alarms table will now open the tool assembly editor.
*The user who replaced a tool is now displayed in the tool replacement history table and in the tool replacement editor.
*Added a button to remove the value for a variable from the part editor.
*Added maintenance issue column to downtime table on production page.
*If a process to filter is selected on the tools page, it will now carry over when switching to the tool assemblies page.
*The program and process editors are now both linked from the overview tab of the machine editor.
* The interface language will now change immediately when the browser's language changes without requiring a page refresh.
*The license name is now pre-filled in the feedback form linked from the user menu.
* Individual users can now turn on developer mode for themselves from the API keys section of the user settings window. This will display object IDs in tables and editors to make it easier to manipulate objects with the OnTakt API.
*Italian translation has been completed.
*Added the <code>PUT /api/alerts</code> API endpoint for showing (and optionally messaging) custom alerts.
*Added the <code>GET /api/maintenance/issues/:id</code> API endpoint for retrieving a single maintenance issue.


== Client 1.6.3 ==
===Bugs fixed ===
4/24/2023


* Fixed date inputs in variable chart and shift notes.
* Fixed TMAC alarms falsely showing zero savings when reporting events in a notification.
* Fixed utilization calculating incorrectly when the first state of the day is not an active state.
*Fixed TMAC tool and section not showing up in the TMAC alarms table on production pages.
*Auto-ended downtime blocks will now update in the client without requiring a manual refresh.
*The name, notes, and suppliers columns of the inventory item table now wrap when the text is too long.
*The client will no longer allow submitting maintenance issues without a name.
* Fixed the reports page not loading report parameters from the URL on page load, which prevented the "tool work" shortcut menu item from working correctly.
*Fixed scheduled reports not updating the last run date when running as a background task.
*Use the correct external URL for links in reports (requires [[OnTakt Daemon Changelog#1.0.5|OnTakt Daemon 1.0.5]])
* Fixed goals not charting for past days.
*Fixed machine tag listings only including the first letter of each tag.
*Fixed a bug in the input fields for relative time parameters when scheduling a report where negative offsets were not accessible with the number field spin buttons.
* Fixed a bug where the description of a downtime category could not be set empty.
*Fixed a bug where the associated machine column of the shift manager was not wrapping machines onto multiple lines.
*Accessing a report generation URL (for example, by clicking "Run report" in a scheduled report notification), will now redirect to the login page instead of showing an authentication error if there is no active login session.
*Fixed the duplicate tool assembly dialog freezing after clicking OK.


== Client 1.6.2 ==
==Server 4.10.5, Client 2.1.6, Proxy 2.7.4==
4/21/2023
8/16/2023


* Fixed date/time input for manual part creation and maintenance entries.
=== New features===


== Server 4.9.2 ==
====Machines====
4/20/2023
* Machine states are now customizable. [[OnTakt: States|Learn more]]
*Multiple shifts can now be defined and assigned to machines. [[OnTakt: Shifts|Learn more]]
*New report: [[OnTakt: Reports#Utilization history|utilization history]].
*Users can now set their own idle and feed hold time limits for color fading.
*Downtime start/end times can now be set manually in the downtime editor.
*Server messages are now translated according to the <code>Accept-Language</code> header.
* Selecting tags in the machines page filter popup will show aggregated data from machines matching the filter.
*Utilization is now shown when expanding machine cards.
*Clicking programs table rows on the production page will now open the program editor.
*Machine feed rate override is now charted as a line instead of a gradient fill.
*Added a "false alarm" flag to events. The events report will call these out separately.
*Alarms can now be linked to downtime. The events report will show the value of an event from the value of its associated downtime.
*Programs can now be created manually before they are reported by a machine.
*When opening the downtime editor for a block that was previously set to auto-end and has already auto-ended, the downtime block will no longer reset to waiting for its end condition.
*Overview charts can now be exported as CSV by clicking the download button in the window header.


* Fixed machine goals always charting as zero.
====Tools ====
*When replacing tools that last replaced in test mode, there is now a confirmation to continue the test, and if confirmed, the tool can be indexed indefinitely.
*Added an "Import" button to inventory point menus for importing inventory counts from a spreadsheet file.
*The tables in the inventory verification window now show a part number column and allow searching by part number in addition to name.
*Tool usage days are now counted based on days with shifts scheduled instead of always Monday through Friday when "weekdays" is selected as the day counting type.


== Server 4.9.1, Client 1.6.1 ==
====Inventory====
4/20/2023
*The header row of the inventory items table now stays fixed at the top when scrolling.
*When in order or receive mode, the selection sidebar for inventory items will shrink the rest of the page instead of covering the table.
*When in receive mode, entering a quantity greater than zero will select the row.
*Inventory page table columns can now be customized. Customizations are saved per-user and will apply on any computer a user logs into. Each mode (display, order, receive) has its own set of columns to customize.
*The tool number column of the inventory verification window is now sortable.


=== New features ===
====Reports====
*A notification channel can now be an email address instead of a webhook URL. This requires configuring an email server in the global notification settings to work.
*Added a "Work report" button to tool menus that links to the reports page with the tool work report and tool already selected.
* Added optional tool and section parameters to the tool work report.
*The tool work report charts are now separated by time increment.
* The "Copy" button on the reports page now copies a link to the page with the report parameters filled in instead of copying a link to the report output.
*Added a [[OnTakt: Reports#Machine Utilization|machine utilization report]], which allows exporting custom state history charts.
*Added [[OnTakt: Reports#Tool Work|tool work report]], charting work done by tools in TMAC alongside their replacement history.
*The report type list now has a search box at the top.


* Combined tool & assembly creator makes it easier to get started entering tool data.
=== Interface cleanup===
* The state history chart for the selected time window is now shown under production charts.
*Date inputs now support typing in dates directly.
* Tool assembly tables now show the tool types each assembly contains for faster identification.
*Date range start and end inputs have been replaced with a unified date range input that allows selecting ranges on the calendar or typing in the range directly.
* There is now a warning icon on a machine's card in place of a process if there is no active process.
*Added per-user settings to hide display variables from machine cards and stop alarm flashing after a set interval.
* The shift bars at the top of production charts are now hidden by default, but can be enabled from the layers menu.
*Fixed the total number of corners not showing up in the tool usage column of the tools table and removed the number of corners remaining.
*The alerts pane can now be closed by clicking outside of it.
*New application icon.


=== Bugs fixed ===
=== Bugs fixed ===
*Fixed tools without an inventory item being excluded from the tools column of the tool assemblies table, which falsely showed "Empty" without an expand button when there were no other tools in the assembly.
*Fixed manual date entry not working when the browser language is set to something other than English.
*Fixed process changeover alert title translations.
*Translated and internationalized reports.
*Removed the system check report as it was superseded in usefulness by the alert system years ago.
*The "last NC/TMAC contact" times will now only update when the proxy communicated with the machine and not when the proxy is just reporting a communication error.
*Spanish and German translations are complete.
*Fixed HTTP errors being returned as internal server errors with a support file.
*Delete button icons are now consistent.
*Fixed translation formatting error in proxy alert title.
*Fixed XMC integration.
*Fixed reports failing to generate when only one machine is selected.
*Fixed audit log failing to record updates of objects with timestamp fields.
* Fixed machine custom alarms not matching correctly.
*Fixed kudos report failing to generate when downtime received kudos in the selected time window.
*Fixed kudos report failing to render emoji correctly.
*Report errors no longer appear as JSON (when report is requested with <code>GET</code>).
*Demo machine feed rate override values are now more realistic.
*Fixed machine cards failing to indicate current downtime for downtime that has no end time set.
*Tools table filter popup card will now close automatically when clicking outside of it.
* Fixed single-section tool notes showing line breaks as "<nowiki><br></nowiki>".
*Fixed "tool created successfully" message not being formatted correctly.
*Event bus deletion messages can now have an array of deleted object IDs instead of just one, which should improve performance significantly when deleting hundreds or thousands parts in bulk.
*The audit log no longer stores all properties and instead stores only changed properties. This will reduce the size of the database significantly, so during the upgrade, unchanged properties will be removed from old audit log entries. This may take a few minutes depending on the size of the audit log table
*Fixed an "error 404" popup when opening the tool editor to create a new tool.
==Server 4.10.1, Client 2.1.1, Proxy 2.7.0==
6/27/2023
The OnTakt frontend/client application has been completely overhauled with a new interface. The layout and organization is the same as before, but the new framework behind the interface should offer increased performance and browser compatibility, with greater flexibility for future improvements.
The interface has also been prepared for translation, with several languages coming soon.
===New features===
*More NC and TMAC alarm information is now recorded, including the alarm code and other machine-specific attributes.
*The alerts pane can now be filtered by alert severity.
*The machine card expanded details section has been redesigned to organize the information into NC and TMAC sections.
*OEE and tool history windows now scroll infinitely instead of needing to click "load more" each time.
*All users can now create their own API keys that provide the same level of access as their account.
**A new API key should be created for each application that will use the OnTakt API. This allows revoking an API key without disrupting other applications' usage of the OnTakt API.
**The global API token is no longer accessible, but it will still work for administrator-level access if already in use.
*NC and TMAC alarm indicators on machine cards are now icons instead of red squares for clarity.
*Importing tools with the spreadsheet template will now create inventory items if the "Durable" column is filled in.
*When importing tools with the spreadsheet template, assemblies will now be named after the first tool row with a given location.
*Added a setting that allows users of the "shop" access level to replace tools into test mode.
*The machine runtime report now also includes a pie chart showing the time spent in each execution state.
*Tools table column customizations are now stored per-user instead of per-computer, so custom layouts will follow each user no matter what computer they log in from, and they will not affect other users.
* The inventory item of the tool history window now shows the inventory item selected during the ''previous'' replacement/rebuild, so for each row it is the inventory item in use during that replacement's lifetime.
*Machine cards now change color when the machine is inside a downtime block.
*The per-program usage of a tool can now be viewed from the tool editor before replacing the tool.
*The margin and part report default filenames now include the selected start and end dates.
*Support for reading the feed rate override from Okuma milling machines via MTConnect.
*The columns of the tools table can now be reordered.
* The last part count a machine reported is now shown in the variables tab of the machine editor.
*Allow selecting which tools table columns to display.
*Clicking on an inventory point now opens the inventory verification window. Inventory points can be renamed from the actions menu instead.
*Added close button to top right of part and event editor windows.
*The number of parts in the chart selection area is now shown in the context menu.
*The state history page now has an option to switch to week view instead of a single day.
*Tool type icons have been redesigned for improved clarity.
*OnTakt will now prompt to refresh the page after midnight to maintain performance and data consistency. If TV mode is active, the page will refresh without prompting.
* There is now a button in the user menu to send feedback or request support.
*Help buttons are now native browser links so the URL can be previewed by hovering.
===Bugs fixed===
* Fixed the part editor not saving changes when clicking OK.
*Fixed the part editor previous/next part buttons only working once after opening from a chart.
*Fixed tool replacements not showing up in the life chart of the tool history window after being edited.
* FANUC FOCAS machines that report a part count of zero will now be ignored until they report a different part count to avoid creating ghost parts when FOCAS falsely reports the part count as zero.
*Part counts in production chart context menu actions are now formatted correctly.
*When reading FOCAS part counters, a read of zero will trigger a fallback read of a different variable to double-check.
*Additional checks when getting FOCAS alarms to avoid reading garbage characters.
* Partially successful FOCAS machine updates will now be sent to the server, which will report errors reading variables, feed rate override, emergency stop state, and alarms to the user as alerts instead of skipping the update.
*Shifts that cross midnight (start time is later in the day than end time) will no longer cause part goals to be negative, charts to have goals that decrease throughout the day, or machines to falsely show as "production stopped".
*Typing to search the "running processes" field of the inventory ordering form no longer fails to filter the list.
*Part and event report notification messages are now formatted correctly.
*The downtime report is no longer overly precise when displaying durations.
* Fixed not being able to click into fields of the user editor when opened from the options window.
*State history charts no longer fail to render immediately in Safari.
* Fixed some external links not working.
* Fixed release notes dialog sizing on mobile devices.
*Improved machines and tools page header button layout on mobile devices.
*Detect when report output pop-ups are blocked by Safari and show an error message.
*Display variables for machines using FANUC FOCAS are now requested even when they are not used otherwise.
*Rename tool "location" to "Tool #" and warn when it is not set on a tool assembly.
* Machine card preview charts now wait to download and render chart data until they are scrolled into view to improve performance and reduce memory usage for instances with many machines.
*Fixed inventory table not sorting by order and receive quantities.
*Fixed tools table and processes table filter dropdowns showing the selected item's ID instead of its name when the page loads with a value already selected.
*Fixed machine card production chart previews growing outside their containers as new parts are rendered.
* Machine card production chart previews are now re-rendered when the available width for the chart changes due to resizing the window.
*Fixed tools table not sorting by type.
*Fixed production page downtime table not sorting by duration.
*Fixed awkward machine editor scrolling on small viewports.
*Fixed feed rate always rendering as solid black on production charts.
*TV mode will now autoplay correctly when the controls are hidden.
*Inventory verification window:
** Fixed the location column of the "present tools" table always being blank.
**Fixed the "other tools" table not showing any tools.
**Fixed "remove from inventory point" button not working.
*Fixed file download spinners stopping before the file has been completely downloaded.
* Fixed inventory verification window quantities resetting when focus leaves a quantity input field.
*Fixed tool notes and stickout display in the tools table.
*Limit height of machine card production chart thumbnails.
*Fixed tools table not sorting by parts remaining when sorting by the usage column.
*Fixed "favorite machine" toggle button tooltip text.
*Fixed server error when deleting machines.
*Fixed server error when restoring database.
*Variables reported by the machine with excessive floating point precision will now be rounded when used as a display variable.
*Machine utilization will no longer be incorrectly reported as less than 0% or greater than 100%.
* Machine state history charts should no longer sometime show incorrect times in tooltips.
* The "analyze historical run times" button is no longer shown in the process editor when creating a new process.


* The utilization calculation displayed above state history charts will now update in real time as the chart updates.
===API changes===
* Only time in the past is considered when calculating utilization, so it will no longer be lower earlier in the day.
 
* Better context menu event handling for charts to improve the states page on mobile devices.
*The alarm format in machine state updates has changed from an object to an array of alarm objects. For more information, see the [https://wolframmfg.gitlab.io/ontakt/otserver/api/machines/state_update.html#alarms machine state format specification]. This is not a breaking change yet because the server will still accept the old format.
* The time range of state history charts is now defined by the server's time zone.
*The new API key system requires the use of <code>Authorization: Bearer <API_KEY></code> instead of <code>X-Auth-Token: <API_TOKEN></code>.
* State history charts now include the first and last state in the selected time range even if extends outside the range.
* Removed <code>date</code> and <code>timeRange</code> query parameters (deprecated in 4.9.1) from the following endpoints:
* The order of machines will no longer update to reflect changes from another client until the page is refreshed.
**<code>GET /api/machines/:id/goals</code>
* Production charts will now always clip to the selected time window.
**<code>GET /api/machines/:id/chart</code>
* Fixed production chart date navigation moving one day at a time when set to week mode.
**<code>GET /api/processes/:id/chart</code>
* Fixed server error when creating a tool without a maintenance status specified.
**<code>GET /api/programs/:id/chart</code>
*Removed the <code>day</code> query parameter (deprecated in 4.9.1) from <code>GET /api/parts</code>.
*Removed the <code>shift</code> property (deprecated in 4.9.1) from the object returned by <code>/chart</code> endpoints.


=== API changes ===
==Server 4.9.4, Proxy 2.6.7==
5/01/2023


* <code>Process.last_cycle</code> is now an object with <code>finished</code> and <code>program_id</code> fields instead of an array of the part's timestamp, the machine's ID, and the machine's name. This is not considered a breaking change because the <code>last_value</code> field for processes was not documented, but it is now in the API models documentation.
*Added machine model for [[MTConnect#DMG MORI|DMG MORI via MTConnect]].
* Added <code>start</code> and <code>end</code> parameters to the following endpoints, deprecating their <code>date</code> and <code>timeRange</code> parameters:
*Added machine system for [[XMC OnTakt Integration|connecting to XMC]].
** <code>GET /api/machines/:id/chart</code>
*Paths can now be specified in NC URLs when using MTConnect. This is only required for DMG MORI machines at this time.
** <code>GET /api/machines/:id/goals</code>
*The system check report is no longer incorrectly listed as a spreadsheet.
** <code>GET /api/processes/:id/chart</code>
** <code>GET /api/programs/:id/chart</code>
* If the start and end timestamps supplied to <code>GET /api/machines/:id/chart</code> extend beyond a single day, the returned <code>shift.start</code> and <code>shift.end</code> values will be the start of the shift on the first day and the end of the shift on the last day. The <code>shift</code> object returned by this endpoint is now deprecated for this reason.


== Server 4.9.0, Client 1.6.0==
==Server 4.9.3, Client 1.6.4, Proxy 2.6.6 ==
4/11/2023
4/26/2023


===New features===
===New features ===


*Combined tool & assembly creator makes it easier to get started entering tool data.
*The state history chart for the selected time window is now shown under production charts.
*Tool assembly tables now show the tool types each assembly contains for faster identification.
* There is now a warning icon on a machine's card in place of a process if there is no active process.
*Machine states are now recorded. This can be viewed from the [[OnTakt: Machine Utilization|States page]].
*Machine states are now recorded. This can be viewed from the [[OnTakt: Machine Utilization|States page]].
*Downtime can now be set to end automatically when the machine either produces a part or becomes active.
*Downtime can now be set to end automatically when the machine either produces a part or becomes active.
Line 342: Line 1,288:
*Machine states can now be [[OnTakt: Machine Utilization#Custom state mappings|mapped]] for customization or compatibility.
*Machine states can now be [[OnTakt: Machine Utilization#Custom state mappings|mapped]] for customization or compatibility.
*The notification channel selection radio buttons have been replaced with a searchable drop-down.
*The notification channel selection radio buttons have been replaced with a searchable drop-down.
*Added [[OnTakt: Downtime Tracking|downtime tracking]].
*Added tool replacement [[OnTakt: Tools#Test mode|test mode]].
*Added "scheduled" as a tool replacement reason and changed "damage types" to "tool condition".
*When manually creating parts, it is now possible to change the program and timestamp.
*Inventory items can now have a minimum on-hand quantity in addition to the existing safety stock days.
**Added "minimum on-hand quantity" and "safety stock" columns to inventory item table in "order" mode.
** Added "brand" and "corners" columns to inventory item table in all modes.
*Tables under production charts will no longer be shown if they are empty.
*Maintenance issues now appear when entering shift notes.
*Audit logs and the trash are now filtered by date.
*The [[OnTakt: Reports#Parts|parts report]] can now be broken up into a chosen interval, and it is now returned as a Microsoft Excel spreadsheet.
*Improved chart context menu layout.
*Tool assemblies can now be linked to TMAC alarms. This will happen automatically if there is an assembly with the location indicated in the TMAC alarm, and the relevant tool can be changed for any TMAC alarm in the event editor.
* Tool assemblies linked to TMAC alarms will appear in the alarm's table row under production charts.
*When rebuilding a durable tool, if the chosen substitute tool is already in an assembly, it will now offer an option to move the tool from that assembly automatically.
*There is now a "tool replacement minimum usage" setting. When replacing tools with usage below this threshold, either flag selection or notes entry will be required.
*Tool life expectancy alerts now have a button to open the editor for the affected tool.
* There are now more specific "broken" tool conditions. When replacing a broken tool, one of these options may be chosen, otherwise note entry will be required.
*There is now a per-machine setting that will send changeover messages to the machine's notification channel.
*The proxy will now report errors it encounters while communicating with TMAC to the server and they will appear in the alerts pane alongside NC communication alerts.
*Tool assemblies can now be created from inside the tool editor.
*Tool assemblies can now be created from the process page tool assemblies table.
*Release notes are now pulled from the knowledge base for only the current software versions.
*Editing tool replacement part counts and day counts is now allowed.
*During durable tool rebuild, the substitute tool (if selected) is now recorded and displayed in the tool's history.
*Part and day counts in the tool history window are now formatted with thousands separators according to the browser's language settings.
*TMAC event details are now displayed in a simpler format.
*Process tool replacement history charts now load one year of data at a time to reduce load time and browser memory usage.
*Replacements of tools that were replaced while they were not assigned to a process now show an indicator in the machine tool replacements table under production charts explaining why they appear on all machines.


=== Bugs fixed===
=== Bugs fixed===


* Fixed tool creation window not loading correctly.
*Fixed the daily goal always being zero for days where a machine has not yet finished a part.
* Fixed server error when reporting downtime without specifying a category.
*Inventory items are now correctly removed from the suggested order list when they are no longer needed after deselecting processes from the run list.
*Fixed an error that occurred when creating a missing variable alert for a machine that does not have a process loaded, resulting in no alert shown.
*Fixed date inputs in variable chart and shift notes.
* Fixed utilization calculating incorrectly when the first state of the day is not an active state.
*Fixed date/time input for manual part creation and maintenance entries.
*Fixed machine goals always charting as zero.
*The utilization calculation displayed above state history charts will now update in real time as the chart updates.
*Only time in the past is considered when calculating utilization, so it will no longer be lower earlier in the day.
*Better context menu event handling for charts to improve the states page on mobile devices.
*The time range of state history charts is now defined by the server's time zone.
* State history charts now include the first and last state in the selected time range even if extends outside the range.
*The order of machines will no longer update to reflect changes from another client until the page is refreshed.
*Production charts will now always clip to the selected time window.
* Fixed production chart date navigation moving one day at a time when set to week mode.
*Fixed server error when creating a tool without a maintenance status specified.
*Fixed tool creation window not loading correctly.
*Fixed server error when reporting downtime without specifying a category.
*Fixed server error when completing a maintenance reminder.
*Fixed server error when completing a maintenance reminder.
*Fixed server error when an inventory point contains an invalid (non-integral) quantity of a tool.
*Fixed server error when an inventory point contains an invalid (non-integral) quantity of a tool.
*The x-axes of variable charts are now aligned even when a part does not have a value for the given variable.
*The x-axes of variable charts are now aligned even when a part does not have a value for the given variable.
*Fixed the selection in the machine drop-down of the maintenance item creator jumping to the top every time new machine data arrives.
* Fixed the selection in the machine drop-down of the maintenance item creator jumping to the top every time new machine data arrives.
*Tool usage counts are now formatted correctly (with thousands separators) in the usage column of the tools table.
*Tool usage counts are now formatted correctly (with thousands separators) in the usage column of the tools table.
*Preemptive tool replacements are no longer counted in average tool life.
*Preemptive tool replacements are no longer counted in average tool life.
*Fixed some help buttons linking to "#undefined" on the knowledge base pages.
* Tables in report output had invisible text in dark mode.
*Fix error in TMAC alert handling.
*Fixed server error when loading shift notes.
*Variable charts will no longer show incorrect values in part tooltips when parts are added to the chart.
*TMAC alarm lines on charts will no longer appear as the wrong color or with the wrong tooltip after navigating between production days.
*Suggested process alerts will no longer suggest processes from machines other than the program's own.
*Variable charts now include parts that don't have all the specified variables, but do have at least one.
*The displayed part count of a tool replacement is no longer cleared when saving the tool replacement. No part count data was permanently lost, but it would not be shown until the page was refreshed.
*NC alarm names will now have leading and trailing spaces removed before being saved to the database. Previous alarms already in the database will be cleaned up during the update.


===Reports===
===Reports===


*Added a downtime report that analyzes downtime by cause.
* Added a downtime report that analyzes downtime by cause.
*The reports page now shows a brief description of each report and an icon indicating whether it returns a webpage or a spreadsheet.
*The reports page now shows a brief description of each report and an icon indicating whether it returns a webpage or a spreadsheet.
*Reports that return webpages are now opened in new windows to allow side-by-side viewing.
*Reports that return webpages are now opened in new windows to allow side-by-side viewing.
Line 368: Line 1,369:
===API changes===
===API changes===


*<code>Process.last_cycle</code> is now an object with <code>finished</code> and <code>program_id</code> fields instead of an array of the part's timestamp, the machine's ID, and the machine's name. This is not considered a breaking change because the <code>last_value</code> field for processes was not documented, but it is now in the API models documentation.
*Added <code>start</code> and <code>end</code> parameters to the following endpoints, deprecating their <code>date</code> and <code>timeRange</code> parameters:
**<code>GET /api/machines/:id/chart</code>
** <code>GET /api/machines/:id/goals</code>
** <code>GET /api/processes/:id/chart</code>
**<code>GET /api/programs/:id/chart</code>
*If the start and end timestamps supplied to <code>GET /api/machines/:id/chart</code> extend beyond a single day, the returned <code>shift.start</code> and <code>shift.end</code> values will be the start of the shift on the first day and the end of the shift on the last day. The <code>shift</code> object returned by this endpoint is now deprecated for this reason.
*The broken, preemptive, and scheduled fields of tool replacements are now stored as one field, where 1 means broken, 2 means preemptive, and 3 means scheduled.
*The broken, preemptive, and scheduled fields of tool replacements are now stored as one field, where 1 means broken, 2 means preemptive, and 3 means scheduled.
* The <code>GET /api/tools</code> endpoint now has a <code>warn_life</code> query parameter that only returns tools past their warning life threshold.
*The <code>GET /api/tools</code> endpoint now has a <code>warn_life</code> query parameter that only returns tools past their warning life threshold.
*The CSV export report has been removed. All the data it could export is accessible via the API, and database exports can be downloaded for offline processing instead.
*The CSV export report has been removed. All the data it could export is accessible via the API, and database exports can be downloaded for offline processing instead.
*The "new process is not loaded on the machine" error returned by <code>POST /api/processes/:from/changeover/:to</code> now has a dedicated response status of HTTP 412.
*The "new process is not loaded on the machine" error returned by <code>POST /api/processes/:from/changeover/:to</code> now has a dedicated response status of HTTP 412.
*<code>POST /api/processes/:from/changeover/:to</code> now has a <code>planned</code> query parameter that bypasses the 412 return code.
*<code>POST /api/processes/:from/changeover/:to</code> now has a <code>planned</code> query parameter that bypasses the 412 return code.
 
*Added <code>start</code> and <code>end</code> parameters to the following endpoints to allow filtering results by time:  
==Server 4.8.10, Client 1.5.17==
3/29/2023
 
===New features===
 
*Added [[OnTakt: Downtime Tracking|downtime tracking]].
*Added tool replacement [[OnTakt: Tools#Test mode|test mode]].
*Added "scheduled" as a tool replacement reason and changed "damage types" to "tool condition".
*When manually creating parts, it is now possible to change the program and timestamp.
*Inventory items can now have a minimum on-hand quantity in addition to the existing safety stock days.
**Added "minimum on-hand quantity" and "safety stock" columns to inventory item table in "order" mode.
**Added "brand" and "corners" columns to inventory item table in all modes.
* Tables under production charts will no longer be shown if they are empty.
*Maintenance issues now appear when entering shift notes.
* Audit logs and the trash are now filtered by date.
*The [[OnTakt: Reports#Parts|parts report]] can now be broken up into a chosen interval, and it is now returned as a Microsoft Excel spreadsheet.
*Improved chart context menu layout.
 
===Bugs fixed===
 
*Fixed some help buttons linking to "#undefined" on the knowledge base pages.
*Tables in report output had invisible text in dark mode.
*Fix error in TMAC alert handling.
*Fixed server error when loading shift notes.
 
===API changes===
 
*Added <code>start</code> and <code>end</code> parameters to the following endpoints to allow filtering results by time:
**<code>GET /api/maintenance/issues</code>
**<code>GET /api/maintenance/issues</code>
**<code>GET /api/auditLog</code>
**<code>GET /api/auditLog</code>
** <code>GET /api/auditLog/user/:user_id</code>
**<code>GET /api/auditLog/user/:user_id</code>
** <code>GET /api/auditLog/action/:action</code>
**<code>GET /api/auditLog/action/:action</code>
**<code>GET /api/auditLog/:object_type/:object_id</code>
** <code>GET /api/auditLog/:object_type/:object_id</code>
**<code>GET /api/auditLog/trash</code>
**<code>GET /api/auditLog/trash</code>
* Fixed typo of machine filter parameter name in documentation of <code>GET /api/maintenance/issues</code>.
*Fixed typo of machine filter parameter name in documentation of <code>GET /api/maintenance/issues</code>.
*Maintenance issue objects now include downtime information.
*Maintenance issue objects now include downtime information.
*The <code>program_filename</code> field of <code>POST /api/parts/create</code> has been changed to <code>program_id</code> in both name and behavior.
* The <code>program_filename</code> field of <code>POST /api/parts/create</code> has been changed to <code>program_id</code> in both name and behavior.
*Fixed <code>variable</code> parameters on <code>GET /api/parts</code> behaving like <code>var[NAME]</code> parameters (''all'' must be present instead of ''any'' must be present).
*Added optional <code>start</code> and <code>end</code> parameters to <code>GET /api/tools/replacements/process/:id</code> to narrow results by time


==Server 4.8.9, Client 1.5.16, Proxy 2.6.6==
== Server 4.8.7, Client 1.5.14 ==
3/22/2023
2/22/2023


===New features===
===New features ===  
 
* Tool assemblies can now be linked to TMAC alarms. This will happen automatically if there is an assembly with the location indicated in the TMAC alarm, and the relevant tool can be changed for any TMAC alarm in the event editor.
*Tool assemblies linked to TMAC alarms will appear in the alarm's table row under production charts.
*When rebuilding a durable tool, if the chosen substitute tool is already in an assembly, it will now offer an option to move the tool from that assembly automatically.
*There is now a "tool replacement minimum usage" setting. When replacing tools with usage below this threshold, either flag selection or notes entry will be required.
* Tool life expectancy alerts now have a button to open the editor for the affected tool.
*There are now more specific "broken" tool conditions. When replacing a broken tool, one of these options may be chosen, otherwise note entry will be required.
*There is now a per-machine setting that will send changeover messages to the machine's notification channel.
*The proxy will now report errors it encounters while communicating with TMAC to the server and they will appear in the alerts pane alongside NC communication alerts.
* Tool assemblies can now be created from inside the tool editor.
*Tool assemblies can now be created from the process page tool assemblies table.
*Release notes are now pulled from the knowledge base for only the current software versions.
 
===Bugs fixed===
 
*Variable charts will no longer show incorrect values in part tooltips when parts are added to the chart.
*TMAC alarm lines on charts will no longer appear as the wrong color or with the wrong tooltip after navigating between production days.
* Suggested process alerts will no longer suggest processes from machines other than the program's own.
 
== Server 4.8.8, Client 1.5.15==
3/06/2023
===New features===
*Editing tool replacement part counts and day counts is now allowed.
*During durable tool rebuild, the substitute tool (if selected) is now recorded and displayed in the tool's history.
*Part and day counts in the tool history window are now formatted with thousands separators according to the browser's language settings.
*TMAC event details are now displayed in a simpler format.
*Process tool replacement history charts now load one year of data at a time to reduce load time and browser memory usage.
*Replacements of tools that were replaced while they were not assigned to a process now show an indicator in the machine tool replacements table under production charts explaining why they appear on all machines.
===Bugs fixed===
*Variable charts now include parts that don't have all the specified variables, but do have at least one.
*The displayed part count of a tool replacement is no longer cleared when saving the tool replacement. No part count data was permanently lost, but it would not be shown until the page was refreshed.
*NC alarm names will now have leading and trailing spaces removed before being saved to the database. Previous alarms already in the database will be cleaned up during the update.
===API changes===
*Fixed <code>variable</code> parameters on <code>GET /api/parts</code> behaving like <code>var[NAME]</code> parameters (''all'' must be present instead of ''any'' must be present).
*Added optional <code>start</code> and <code>end</code> parameters to <code>GET /api/tools/replacements/process/:id</code> to narrow results by time.
==Server 4.8.7, Client 1.5.14==
2/22/2023
===New features===
*Maintenance items can now be scheduled by machine runtime in addition to normal clock time.
*Maintenance items can now be scheduled by machine runtime in addition to normal clock time.
*When selecting a substitute tool in the durable tool replace wizard, there is now an option to show only tools that are "ready for use".
*When selecting a substitute tool in the durable tool replace wizard, there is now an option to show only tools that are "ready for use".
Line 460: Line 1,404:
*When undoing audit log entries, the undo button now indicates progress and success states.
*When undoing audit log entries, the undo button now indicates progress and success states.
*Process cycle time can now be entered in different time units.
*Process cycle time can now be entered in different time units.
===Bugs fixed===
===Bugs fixed===
*Tool replacements will no longer fail to render in the shift notes wizard.
*Tool replacements will no longer fail to render in the shift notes wizard.
*Some mapped variables were failing to save when parts were produced. This should be fixed now.
*Some mapped variables were failing to save when parts were produced. This should be fixed now.
* Fixed machine goal alerts not firing.
*Fixed machine goal alerts not firing.
*Help links have been updated to point to the new knowledge base page locations.
*Help links have been updated to point to the new knowledge base page locations.
*Fixed a rare divide-by-zero error when calculating a machine's status color.
*Fixed a rare divide-by-zero error when calculating a machine's status color.
* Single-machine processes (the fact that processes can only contain programs from one machine) is now enforced by the database to prevent assignment errors by the server.
*Single-machine processes (the fact that processes can only contain programs from one machine) is now enforced by the database to prevent assignment errors by the server.
*Fixed machine deletion messages not getting sent to the proxy, causing the proxy to continue attempting to communicate with it and possibly fill the log with errors.
*Fixed machine deletion messages not getting sent to the proxy, causing the proxy to continue attempting to communicate with it and possibly fill the log with errors.
*Audit logs and the trash list will now load much faster.
*Audit logs and the trash list will now load much faster.
===Breaking changes===
===Breaking changes===
*Removed API endpoint <code>POST /api/processes/updateCycleTimes</code>. Use <code>PATCH /api/processes/:id</code> for each process individually instead.
*Removed API endpoint <code>POST /api/processes/updateCycleTimes</code>. Use <code>PATCH /api/processes/:id</code> for each process individually instead
 
==Server 4.8.6, Proxy 2.6.5==
==Server 4.8.6, Proxy 2.6.5==
2/08/2023
2/08/2023
*Changes process run times in machine run report from running total to individual.
 
* Maintenance reminders will now only be sent once between entries.
===New features===
*Machine part counts are once again exposed via the API as <code>Machine.last_part_count</code>. Note that if a machine is using a variable as a part counter, this will be the last reported value of the selected variable instead of the control's part counter.
*Improves proxy log message when a machine is missing a TMAC API key.
== Client 1.5.13, Server 4.8.5, Proxy 2.6.4==
2/07/2023
===New features ===
*There is now an export button in the variable chart window that will download the displayed data as a CSV file for offline analysis.
*There is now an export button in the variable chart window that will download the displayed data as a CSV file for offline analysis.
*Tool replacements are now listed in a table under production charts.
*Tool replacements are now listed in a table under production charts.
Line 488: Line 1,430:
*The tool torque specification field now allows a choice between metric (N&sdot;m) and imperial (lb&sdot;ft) units. This is for reference only so conversion is not performed automatically.
*The tool torque specification field now allows a choice between metric (N&sdot;m) and imperial (lb&sdot;ft) units. This is for reference only so conversion is not performed automatically.
*Tools without a life set have their usage column highlighted green in the tools table to indicate that they should be checked for wear more often until their first replacement.
*Tools without a life set have their usage column highlighted green in the tools table to indicate that they should be checked for wear more often until their first replacement.
* Use searchable dropdowns instead of system dropdowns where possible. This makes finding items in the list faster and allows them to appear in single-window in-browser screen captures.
*Use searchable dropdowns instead of system dropdowns where possible. This makes finding items in the list faster and allows them to appear in single-window in-browser screen captures.
===Bugs fixed===
*Process run times in machine run report have been changed from running total to individual.
*Fixed the internal server error that occurred when deleting machines.
*Non-integral numbers are now allowed in the "notify when" field of the common variable mapping window.
*In the case where a machine selection dropdown is opened when a value is already selected, it will no longer jump back to the top of the list when machine data is updated.
*The NC authentication field (which may be named differently depending on a machine's system type) will no longer be clobbered by saving changes to a machine without entering a new value.
*The report output viewport now has a light background to match its printed appearance even when the dark color scheme is selected by the operating system.
*"Machine not configured" alerts will no longer show up for machines of the "custom" system type.
== Server 4.8.4, Client 1.5.12, Proxy 2.6.3==
1/31/2023
===New features===
*For each machine, you can now specify the maximum length of time TMAC monitoring can be disabled before a warning notification is sent to its notification channel. This message will have a link to the TMAC web interface.
*For each machine, you can now specify the maximum length of time TMAC monitoring can be disabled before a warning notification is sent to its notification channel. This message will have a link to the TMAC web interface.
*You can now select a ''display variable'' for a process to show its value on the machine's color chip while the process is loaded.
* You can now select a ''display variable'' for a process to show its value on the machine's color chip while the process is loaded.
* There are now "select all" and "deselect all" buttons in the tool changeover verification window.
* There are now "select all" and "deselect all" buttons in the tool changeover verification window.
*Machine variables are now always sent with machine objects, so the variables display in the machine editor can now update in real time instead of requiring a refresh button click.
*Machine variables are now always sent with machine objects, so the variables display in the machine editor can now update in real time instead of requiring a refresh button click.
*The tool assembly editor now has buttons to add or create tools directly.
*The tool assembly editor now has buttons to add or create tools directly.
*If an "Open in TMAC" button is disabled in the event editor, a message will now explain why.
* If an "Open in TMAC" button is disabled in the event editor, a message will now explain why.
* If someone else edits the notes of a part or event you are editing, it will prompt you to accept their changes or keep your own. If the part or event is deleted, the editor will close and explain why.
*If someone else edits the notes of a part or event you are editing, it will prompt you to accept their changes or keep your own. If the part or event is deleted, the editor will close and explain why.
*Tools can now be bulk-imported into a process by downloading a spreadsheet template from the process's details page under the tool assemblies table.
*Tools can now be bulk-imported into a process by downloading a spreadsheet template from the process's details page under the tool assemblies table.
*Added a button to duplicate maintenance items.
*Added a button to duplicate maintenance items.
*The time zone list in the options window is now searchable.
*The time zone list in the options window is now searchable.
====Kudos to you====
[[File:20230131_kudos.png|right]]
To encourage helpful notes, you can now give kudos to other users for good documentation by clicking
the reaction emoji under a note. You can choose your own personal reaction emoji in your user settings.
Managers can run a kudos report to see which users received the most kudos in a given time period.
Which user gets credit for the helpful note depends on the target: for tool replacements this will be the
user who replaced the tool; for parts and events it will be whoever last saved changes; and for maintenance
entries and issues it will be whoever created the entry or issue.
===Bugs fixed ===
*Fixed "assigned to any loaded process" tool table filter returning all tools.
*In the tool replacement wizard, the substitute tool selection is now cleared when the tool substitution option is unchecked, so the server will no longer reject these replacements.
* The "create inventory item" button in the tool editor now correctly selects the newly created item.
*In the variable mapping window, variables set to "never notify" will no longer show a useless and confusing value entry field.
*The "Add to inventory point" option when selecting inventory items now works again.
*Fixed "chamfer fill" typo of "chamfer mill" tool types.
*The job ID field of TMAC events should now be populated for future alarms.
*NC alarms from machines using FOCAS should no longer have garbage trailing characters.
===Breaking changes ===
*Restoring database backups is no longer allowed via the API. Use the service management panel instead.
*Now only administrators can change the time zone and global shift time options. Machine-specific shift times can still be set by planners.
==Client 1.5.11, Server 4.8.3 ==
1/05/2023
===New features===
*Added an option to filter inventory items by active machine when in receive mode.
*Added an option to filter inventory items by active machine when in receive mode.
*Added a button to load more audit log entries at the bottom of the list.
* Added a button to load more audit log entries at the bottom of the list.
*Added help text to inventory item order and receive tabs.
*Added help text to inventory item order and receive tabs.
*Improved performance of part, event, and tool replacement queries and charting.
*Improved performance of part, event, and tool replacement queries and charting.
===Bugs fixed===
*OctoPrint machines in the "finishing" state are now treated as running instead of idle.
*Many parts created at the same time will no longer be removed during upgrade.
==Proxy 2.6.2==
1/04/2023
*Fixes a segmentation fault that occurred when there was an error parsing MTConnect XML.
==Client 1.5.10, Server 4.8.2==
12/20/2022
===New features===
*The processes table can now be filtered by machine.
*The processes table can now be filtered by machine.
*The total number of tools is now displayed on the tools page filter button.
*The total number of tools is now displayed on the tools page filter button.
*The total number of tool assemblies is now displayed on the tool assemblies page filter button.
*The total number of tool assemblies is now displayed on the tool assemblies page filter button.
*If a substitute tool is specified when replacing a durable tool, the substitute tool's status is automatically set to "in service". The "received from rebuild" status is no longer available for selection in the web interface, but tools that already have this status will continue to display it, and tools can still be assigned this status via the API.
*If a substitute tool is specified when replacing a durable tool, the substitute tool's status is automatically set to "in service". The "received from rebuild" status is no longer available for selection in the web interface, but tools that already have this status will continue to display it, and tools can still be assigned this status via the API.
*When duplicating an assembly, new names can now be specified for tools set to be duplicated.
* When duplicating an assembly, new names can now be specified for tools set to be duplicated.
===Bugs fixed===
*Feed rate override is available as a layer on production charts. Turn on the "Feed rate" switch under a chart to see it.
*Fixed the maintenance page machine selection not filtering maintenance issues table.
*Feed rate override can now be read from machines with FANUC controls.
*Fixed "move selected items to another inventory point" not working in the inventory verification window.
*Dropdowns no longer scroll horizontally.
*Unknown tool maintenances states will no longer cause errors during page rendering, and will instead show up as "(Unknown status)".
*Percentage-based tool life tracking is no longer used for alerts, so the tool life reported in alerts and notifications will now match the tool life displayed in the OnTakt interface.
===API changes===
*<code>/api/parts</code> now allows specifying multiple machines, and the preferred parameter name is now <code>machine_id</code> instead of <code>machine</code>.
*Added <code>/api/parts/:id</code> for getting details of a single part.
*The <code>tmac_3</code> field has been removed from the <code>Machine</code> type. OnTakt has not supported TMAC MP for over a year.
*The <code>inspection_part_id</code> field has been removed from the <code>Part</code> type. Parts are now referenced from the Inspection side.
==Client 1.5.9, Server 4.8.1, Proxy 2.6.1==
12/13/2022
===New features===
* Feed rate override is available as a layer on production charts. Turn on the "Feed rate" switch under a chart to see it.
* Feed rate override can now be read from machines with FANUC controls.
* In the variable charting window, only variables that exist on parts produced in the selected time range are listed.
* In the variable charting window, only variables that exist on parts produced in the selected time range are listed.
===Bugs fixed===
*The y-axis range of charted variables is no longer required to contain zero.
*Audit log tables were not rendering correctly.
==Client 1.5.7, Server 4.8.0, Proxy 2.6.0 ==
12/07/2022
===New features===
*Tools now have a number of "slots". This determines how many inventory items to consume during a replacement/rebuild of the tool, is displayed next to the item name in the tool replacement/rebuild wizard, and will multiply order quantities.
*Tools now have a number of "slots". This determines how many inventory items to consume during a replacement/rebuild of the tool, is displayed next to the item name in the tool replacement/rebuild wizard, and will multiply order quantities.
*The part count variable can now again be set for a machine, allowing parts from programs not in a process to count parts. If the active process on a machine has a part count variable of its own, it will override the machine's setting as long as the process is loaded.
*The part count variable can now again be set for a machine, allowing parts from programs not in a process to count parts. If the active process on a machine has a part count variable of its own, it will override the machine's setting as long as the process is loaded.
*Added a toggle in the part variable charting window to switch the x-axis of the charts from time to number of parts for even spacing.
*Added a toggle in the part variable charting window to switch the x-axis of the charts from time to number of parts for even spacing.
*Added a goal calculator to the process editor that will allow setting the cycle time by entering the number of parts that should be produced during each shift.
*Added a goal calculator to the process editor that will allow setting the cycle time by entering the number of parts that should be produced during each shift.
===Bugs fixed===
* Fix server error when rebuilding a durable tool with a substitute tool selected.
*Improved reliability of data from FANUC controls by disconnecting from and reconnecting to the control each time the proxy updates machine data. This was the behavior of proxy versions &lt;2.5.0.
*Fix TMAC data not being recorded on the server
===Breaking API changes===
*Removed <code>/api/parts/withVariables</code>. Use <code>/api/parts</code> with <code>variable</code> parameter(s) instead.
*Deprecated the <code>day</code> parameter of <code>/api/parts</code>, and it may be removed in a future server update. Use the new <code>start</code> and <code>end</code> parameters instead.
==Client 1.5.6, Server 4.7.6, Proxy 2.5.1==
11/30/2022
===New features===
*A message will be sent to a machine's notification channel when it has not produced a part on schedule. This can be disabled in each machine's notification settings.
*A message will be sent to a machine's notification channel when it has not produced a part on schedule. This can be disabled in each machine's notification settings.
*Line breaks in tool notes are now displayed in the tools table
*Line breaks in tool notes are now displayed in the tools table
=== Bugs fixed ===
*Production chart pages now include a table breaking down the number of parts produced by program and part flags.
*Client version 1.5.5 displayed goals incorrectly in machine cards.
*Server version 4.7.5 failed to create parts for programs not belonging to a process.
*Demo machines will no longer generate negative feed rate override values.
==Client 1.5.5, Server 4.7.5, Proxy 2.5.0==
11/29/2022
===New features===
* Production chart pages now include a table breaking down the number of parts produced by program and part flags.
*Added Previous and Next buttons to the part editor that navigate between parts in the order they appear on the chart.
*Added Previous and Next buttons to the part editor that navigate between parts in the order they appear on the chart.
*Report generation errors now return a support file.
*Report generation errors now return a support file.
Line 603: Line 1,466:
*Haas macro variables are now numbered consistently with the control's numbering scheme.
*Haas macro variables are now numbered consistently with the control's numbering scheme.
*Requests for data from machines are now offset by random sub-second times in order to reduce network load caused by all machines sending data at the same time.
*Requests for data from machines are now offset by random sub-second times in order to reduce network load caused by all machines sending data at the same time.
===Bugs fixed===
*Programs without names will no longer cause a suggested process alert.
*Tool usage report generation no longer fails with an error when some tools do not have an inventory item set.
*The location column of the inventory verification window now shows values again.
*The tool usage tab of the part editor will now display correctly when there are tools that are not in an assembly.
===Breaking changes===
*Demo machines must now have the demo system type explicitly selected in machine settings.
*The <code>goals</code> data item returned by <code>/api/machines/:id/chart</code> is now an array of arrays instead of an object.
* <code>/socket/proxy/:machineId/:dataSrc</code> has been removed. Use the new <code>/socket/proxy</code> with tagged messages instead. The proxy now uses a single socket communicate with the server for all machines instead of one per machine and TMAC unit to reduce the number of concurrent network connections each must maintain.
*MTConnect XML parsing now happens on the proxy instead of the server. This should not change any behavior and offers the benefit of increased performance, but there may be unforeseen inconsistencies in data handling.
==Client 1.5.4==
11/22/2022
*Fixed a bug in the part editor's tool life table that prevented tool locations from showing up.
*The part editor's tool life table now also displays the usage as a progress bar.
*The part editor's tool life table now also displays the usage as a progress bar.
*Date/time display formatting uses the browser's language setting.
* Date/time display formatting uses the browser's language setting
==Server 4.7.4==
* Variables recorded on a part can now be edited.
11/17/2022
* Fixes part variables not being saved during part creation.
==Client 1.5.3, Server 4.7.3==
11/17/2022
===New features===
*Variables recorded on a part can now be edited.
*Clicking on a part from a part variable chart will now open a new part editor instead of closing the chart and reusing the existing editor window.
*Clicking on a part from a part variable chart will now open a new part editor instead of closing the chart and reusing the existing editor window.
*Part variable chart formatting has been improved.
*Part variable chart formatting has been improved.
===Bugs fixed===
* Tool assemblies can now be duplicated.
*Parts without a value for a variable will no longer cause errors in the variable charts. Instead, they will be skipped on the chart.
*When a variable is not being reported, showing the alert will no longer cause a database write loop.
==Client 1.5.2, Server 4.7.2==
11/16/2022
*Fixes a bug where mapped variables do not get saved with parts.
*Chart context menus will no longer run off the right edge of the screen.
* The variable list in the machine editor now behaves more predictably.
*Fixes a typo in the missing variable system alert.
==Client 1.5.1, Server 4.7.1==
11/16/2022
*Fixes a bug where every part produced on a machine would create two parts in OnTakt. This update will automatically remove duplicate parts and restore tool life during installation.
*Fixes multiple parts created at the same time being connected in the wrong order on part charts when using Safari or Chromium-based browsers like Google Chrome and Microsoft Edge:[[File:20221115_sawtooth.png|sawtooth and fixed charts]]
==Client 1.5.0, Server 4.7.0, Proxy 2.4.2==
11/14/2022
=== Processes===
Program groups have been replaced with processes, which are containers for a machine,
programs, tool assemblies, and settings that define a real-world process.
====During the upgrade====
* Program groups that contain at least one program will be converted to processes automatically.
*If a program group contains programs from multiple machines, the machine to which the ''most'' programs belong will be kept in the process, and all other programs will be ungrouped.
*Settings from a group's programs will be combined into the settings for the process using the following rules:
**'''Common variable map:''' merge all program maps into one superset map
**'''Cycle time:''' average of program settings
**'''Parts per cycle:''' most common of program settings
** '''Part count variable:''' most common of program settings
*Tools that are assigned to program groups and already in assemblies and will have their assembly added to the new process created for the program group.
*Tools that are assigned to program groups but not in an assembly will be placed into new assemblies named with the program group and tool location, and then the new assembly will be added to the new process. If multiple tools assigned to the same program group are in the same location, they will be added to the same assembly.
*Tool reorder notifications are now configured in the options window.
===Other new features===
*Tool assemblies can now be duplicated.
*Tool assemblies can now be merged.
*Tool assemblies can now be merged.
*Tools now have a "torque specification" field.
*Tools now have a "torque specification" field.
*Added tool types for holders and bodies.
*Added tool types for holders and bodies.
*Changed labels on tool replacement cancellation confirmation buttons to be more intuitive.
*Changed labels on tool replacement cancellation confirmation buttons to be more intuitive.
*Allow shop users to edit event notes.
* Allow shop users to edit event notes.
*Added an API endpoint (<code>POST /api/machines/:id/update</code>) and a "custom" machine system type for building custom machine integrations using Caron MiConnect or other software.
*Added an API endpoint (<code>POST /api/machines/:id/update</code>) and a "custom" machine system type for building custom machine integrations using Caron MiConnect or other software.
*Tool assembly and location are now shown in the tool replacement detail window.
*Tool assembly and location are now shown in the tool replacement detail window.
*View combined replacement and rebuild history for all tools in an assembly.
*View combined replacement and rebuild history for all tools in an assembly.
*Tool rebuild status is shown in the notes column of the tools table for tools that have it set.
* Tool rebuild status is shown in the notes column of the tools table for tools that have it set.
*Mark parts as "reworked" and they will appear yellow in part charts
* Mark parts as "reworked" and they will appear yellow in part charts
*In addition to selecting many parts at once to scrap, you can now remove their scrapped status and change their reworked status in bulk as well. Just right-click the part selection and click "Flag".
*In addition to selecting many parts at once to scrap, you can now remove their scrapped status and change their reworked status in bulk as well. Just right-click the part selection and click "Flag".
*Inventory items now have only one part number for all suppliers.
* Inventory items now have only one part number for all suppliers.
*Tools will keep track of which inventory item they were using at the time of replacement to allow for easier analysis of longevity between equivalent items.
*Tools will keep track of which inventory item they were using at the time of replacement to allow for easier analysis of longevity between equivalent items.
*Updated Microsoft Teams webhook support to support their new URL format.
==== Kudos to you====
[[File:20230131_kudos.png|right]]
To encourage helpful notes, you can now give kudos to other users for good documentation by clicking
the reaction emoji under a note. You can choose your own personal reaction emoji in your user settings.
Managers can run a kudos report to see which users received the most kudos in a given time period.
Which user gets credit for the helpful note depends on the target: for tool replacements this will be the
user who replaced the tool; for parts and events it will be whoever last saved changes; and for maintenance
entries and issues it will be whoever created the entry or issue.
====Processes====
Program groups have been replaced with processes, which are containers for a machine,
programs, tool assemblies, and settings that define a real-world process.
=====During the upgrade=====
*Program groups that contain at least one program will be converted to processes automatically.
*If a program group contains programs from multiple machines, the machine to which the ''most'' programs belong will be kept in the process, and all other programs will be ungrouped.
*Settings from a group's programs will be combined into the settings for the process using the following rules:
** '''Common variable map:''' merge all program maps into one superset map
** '''Cycle time:''' average of program settings
**'''Parts per cycle:''' most common of program settings
**'''Part count variable:''' most common of program settings
*Tools that are assigned to program groups and already in assemblies and will have their assembly added to the new process created for the program group.
*Tools that are assigned to program groups but not in an assembly will be placed into new assemblies named with the program group and tool location, and then the new assembly will be added to the new process. If multiple tools assigned to the same program group are in the same location, they will be added to the same assembly.
*Tool reorder notifications are now configured in the options window.
===Bugs fixed===
===Bugs fixed===
*Fix "Add Supplier" button not working when creating a new inventory item.
*Fixed the internal server error that occurred when deleting machines.
* Fix the audit log undo button not working in most cases.
*Non-integral numbers are now allowed in the "notify when" field of the common variable mapping window.
*In the case where a machine selection dropdown is opened when a value is already selected, it will no longer jump back to the top of the list when machine data is updated.
*The NC authentication field (which may be named differently depending on a machine's system type) will no longer be clobbered by saving changes to a machine without entering a new value.
*The report output viewport now has a light background to match its printed appearance even when the dark color scheme is selected by the operating system.
*"Machine not configured" alerts will no longer show up for machines of the "custom" system type
*Maintenance reminders will now only be sent once between entries.
*Machine part counts are once again exposed via the API as <code>Machine.last_part_count</code>. Note that if a machine is using a variable as a part counter, this will be the last reported value of the selected variable instead of the control's part counter.
*Improves proxy log message when a machine is missing a TMAC API key
* Fixed "assigned to any loaded process" tool table filter returning all tools.
* In the tool replacement wizard, the substitute tool selection is now cleared when the tool substitution option is unchecked, so the server will no longer reject these replacements.
*The "create inventory item" button in the tool editor now correctly selects the newly created item.
*In the variable mapping window, variables set to "never notify" will no longer show a useless and confusing value entry field.
*The "Add to inventory point" option when selecting inventory items now works again.
* Fixed "chamfer fill" typo of "chamfer mill" tool types.
*The job ID field of TMAC events should now be populated for future alarms.
*NC alarms from machines using FOCAS should no longer have garbage trailing characters.
*OctoPrint machines in the "finishing" state are now treated as running instead of idle.
*Many parts created at the same time will no longer be removed during upgrade
*Fixes a segmentation fault that occurred when there was an error parsing MTConnect XML
*Fixed the maintenance page machine selection not filtering maintenance issues table.
*Fixed "move selected items to another inventory point" not working in the inventory verification window.
*Dropdowns no longer scroll horizontally.
*Unknown tool maintenances states will no longer cause errors during page rendering, and will instead show up as "(Unknown status)".
*Percentage-based tool life tracking is no longer used for alerts, so the tool life reported in alerts and notifications will now match the tool life displayed in the OnTakt interface.
* The y-axis range of charted variables is no longer required to contain zero.
*Audit log tables were not rendering correctly
*Fix server error when rebuilding a durable tool with a substitute tool selected.
*Improved reliability of data from FANUC controls by disconnecting from and reconnecting to the control each time the proxy updates machine data. This was the behavior of proxy versions &lt;2.5.0.
*Fix TMAC data not being recorded on the server
* Client version 1.5.5 displayed goals incorrectly in machine cards.
*Server version 4.7.5 failed to create parts for programs not belonging to a process.
* Demo machines will no longer generate negative feed rate override values
*Programs without names will no longer cause a suggested process alert.
*Tool usage report generation no longer fails with an error when some tools do not have an inventory item set.
*The location column of the inventory verification window now shows values again.
*The tool usage tab of the part editor will now display correctly when there are tools that are not in an assembly.
*Fixed a bug in the part editor's tool life table that prevented tool locations from showing up.
*Fixed part variables not being saved during part creation.
*Parts without a value for a variable will no longer cause errors in the variable charts. Instead, they will be skipped on the chart.
*When a variable is not being reported, showing the alert will no longer cause a database write loop
*Fixes a bug where mapped variables do not get saved with parts.
*Chart context menus will no longer run off the right edge of the screen.
*The variable list in the machine editor now behaves more predictably.
*Fixes a typo in the missing variable system alert
* Fixes a bug where every part produced on a machine would create two parts in OnTakt. This update will automatically remove duplicate parts and restore tool life during installation.
*Fixes multiple parts created at the same time being connected in the wrong order on part charts when using Safari or Chromium-based browsers like Google Chrome and Microsoft Edge:[[File:20221115_sawtooth.png|sawtooth and fixed charts]
* Fix "Add Supplier" button not working when creating a new inventory item.
*Fix the audit log undo button not working in most cases.
*Show undefined OEE as 0% instead of N/A.
*Show undefined OEE as 0% instead of N/A.
*Fix error when deleting a tool that is in an assembly.
*Fix error when deleting a tool that is in an assembly.
*Tool active time ("in use for x days") was shown in tools table even when the lifetime expectancy was not set on the tool.
*Tool active time ("in use for x days") was shown in tools table even when the lifetime expectancy was not set on the tool.
===FANUC compatibility improvements===
*Fix error when clearing database before restoring a backup
 
=== FANUC compatibility improvements===
*The proxy now reads the '''main program''' instead of the current '''sub-program''', so program names should now be consistent between parts.
*The proxy now reads the '''main program''' instead of the current '''sub-program''', so program names should now be consistent between parts.
*To improve communication reliability, only variables set in OnTakt for program selection, part counting, or in the current process's variable map will be read from the machine.
*To improve communication reliability, only variables set in OnTakt for program selection, part counting, or in the current process's variable map will be read from the machine.
*Feed rate override is now read from machines with FANUC controls.
*Feed rate override is now read from machines with FANUC controls.
===Known issues===
 
=== Known issues===
*Tool replacements created prior to updating will show up on all production charts of all machines. This is because the data associating tool replacements to a machine was not previously recorded. Tool replacements created after updating will be associated to a given process and therefore only a single machine.
*Tool replacements created prior to updating will show up on all production charts of all machines. This is because the data associating tool replacements to a machine was not previously recorded. Tool replacements created after updating will be associated to a given process and therefore only a single machine.
*If tools are assigned to multiple program groups, it is not determinate which process they will end up assigned to. '''This should be reviewed manually after the upgrade.'''
*If tools are assigned to multiple program groups, it is not determinate which process they will end up assigned to. '''This should be reviewed manually after the upgrade.'''
*Downgrading after installing this upgrade will result in a '''loss of data''' (tool and program assignments will be removed), so make sure to take a backup of the OnTakt database before upgrading to this version.
*Downgrading after installing this upgrade will result in a '''loss of data''' (tool and program assignments will be removed), so make sure to take a backup of the OnTakt database before upgrading to this version.
===Breaking changes ===
 
==== Functionality====
===Breaking changes===
====Functionality====
* Program groups have been removed and more or less replaced by processes.
* Program groups have been removed and more or less replaced by processes.
*Tools cannot be directly assigned to programs or processes; they must be placed into an assembly and then the assembly can be assigned to a process.
* Tools cannot be directly assigned to programs or processes; they must be placed into an assembly and then the assembly can be assigned to a process.
*When sorting the tools table by usage, tools without a part life set are now treated as having an infinite part life
*When sorting the tools table by usage, tools without a part life set are now treated as having an infinite part life
====Data model====  
* Restoring database backups is no longer allowed via the API. Use the service management panel instead.
*Tools no longer have a <code>location</code> directly; this must be set on their assembly.
*Now only administrators can change the time zone and global shift time options. Machine-specific shift times can still be set by planners
 
====Data model====
* Tools no longer have a <code>location</code> directly; this must be set on their assembly.
*<code>part_count_cv</code> can no longer be set on a machine directly; it must be set on a process.
*<code>part_count_cv</code> can no longer be set on a machine directly; it must be set on a process.
*<code>time_per_part</code>, <code>cv_map</code>, <code>parts_per_cycle</code>, and <code>part_count_cv</code> can no longer be set on programs directly; they must be set on a process.
*<code>time_per_part</code>, <code>cv_map</code>, <code>parts_per_cycle</code>, and <code>part_count_cv</code> can no longer be set on programs directly; they must be set on a process.
Line 697: Line 1,592:
*The <code>ToolOrderItem</code> type has been renamed to <code>InventoryItem</code>.
*The <code>ToolOrderItem</code> type has been renamed to <code>InventoryItem</code>.
*The <code>order_item</code> and <code>order_item_id</code> properties of the <code>Tool</code> type have been renamed to <code>inventory_item</code> and <code>inventory_item_id</code>.
*The <code>order_item</code> and <code>order_item_id</code> properties of the <code>Tool</code> type have been renamed to <code>inventory_item</code> and <code>inventory_item_id</code>.
====API====
 
*Removed <code>/api/program_groups/...</code>
===API changes===
* Moved <code>GET /api/programs/variables</code> to <code>GET /api/processes/variables</code>  
*<code>/api/parts</code> now allows specifying multiple machines, and the preferred parameter name is now <code>machine_id</code> instead of <code>machine</code>.
*Added <code>/api/parts/:id</code> for getting details of a single part.
* The <code>tmac_3</code> field has been removed from the <code>Machine</code> type. OnTakt has not supported TMAC MP for over a year.
*The <code>inspection_part_id</code> field has been removed from the <code>Part</code> type. Parts are now referenced from the Inspection side
*Removed <code>/api/parts/withVariables</code>. Use <code>/api/parts</code> with <code>variable</code> parameter(s) instead.
*Deprecated the <code>day</code> parameter of <code>/api/parts</code>, and it may be removed in a future server update. Use the new <code>start</code> and <code>end</code> parameters instead
*Demo machines must now have the demo system type explicitly selected in machine settings.
*The <code>goals</code> data item returned by <code>/api/machines/:id/chart</code> is now an array of arrays instead of an object.
*<code>/socket/proxy/:machineId/:dataSrc</code> has been removed. Use the new <code>/socket/proxy</code> with tagged messages instead. The proxy now uses a single socket communicate with the server for all machines instead of one per machine and TMAC unit to reduce the number of concurrent network connections each must maintain.
*MTConnect XML parsing now happens on the proxy instead of the server. This should not change any behavior and offers the benefit of increased performance, but there may be unforeseen inconsistencies in data handling
*Removed <code>/api/program_groups/...</code>  
*Moved <code>GET /api/programs/variables</code> to <code>GET /api/processes/variables</code>
*Replaced <code>GET /api/tools/replacements/program/:id</code> with <code>GET /api/tools/replacements/process/:id</code>
*Replaced <code>GET /api/tools/replacements/program/:id</code> with <code>GET /api/tools/replacements/process/:id</code>
*Removed <code>POST /api/parts/scrap</code>; call <code>POST /api/parts/flag</code> with <code>{"scrapped": true}</code> instead.
*Removed <code>POST /api/parts/scrap</code>; call <code>POST /api/parts/flag</code> with <code>{"scrapped": true}</code> instead.
*The <code>order_item</code> query parameter of <code>GET /api/tools/</code> has been renamed to <code>inventory_item</code>.
*The <code>order_item</code> query parameter of <code>GET /api/tools/</code> has been renamed to <code>inventory_item</code>.
*The <code>order_items</code> field returned by <code>POST /api/tools/inventory/:id/receiveOrder</code> is now called <code>inventory_items</code>.
*The <code>order_items</code> field returned by <code>POST /api/tools/inventory/:id/receiveOrder</code> is now called <code>inventory_items</code>
==Server 4.6.6==
 
10/20/2022
*Fix error when clearing database before restoring a backup.
==Server 4.6.5==
10/20/2022
*Update Microsoft Teams webhook support to support their new URL format.
==Client 1.4.6, Server 4.6.4==
==Client 1.4.6, Server 4.6.4==
9/21/2022
9/21/2022
===New features===
*All NC alarms can now send notifications, not just those with "ALARM_A" in their name.
*All NC alarms can now send notifications, not just those with "ALARM_A" in their name.
*Added buttons in the notifications tab of the options window to send a test message to configured notification channels.
*Added buttons in the notifications tab of the options window to send a test message to configured notification channels.
* Disable the "Finish" button of the tool replacement wizard while the replacement is submitting to reduce double-submissions.
*Users can now edit notes and conditions of previous tool replacements.
==Client 1.4.5, Server 4.6.3==
9/21/2022
===New features===
* Users can now edit notes and conditions of previous tool replacements.
*Added a help page describing machine colors.
*Added a help page describing machine colors.
=== Bugs fixed===
*When creating tool order items, only the name entered was saved, but now all fields work correctly.
* After creating a tool order item from the inventory tab of the tool editor, the newly created item will once again be selected automatically.
==Client 1.4.4==
9/08/2022
*New tool types:
*New tool types:
**Boring: Burnisher, Tap, Thread mill
**Boring: Burnisher, Tap, Thread mill
** Cutting: Ballnose endmill, Chamfer mill, Double chamfer mill, Dovetail, Groover, Radial endmill
**Cutting: Ballnose endmill, Chamfer mill, Double chamfer mill, Dovetail, Groover, Radial endmill
**Durable: Drive, EDM electrode pins, Filter
**Durable: Drive, EDM electrode pins, Filter
**Inserts: Groover, Rougher
**Inserts: Groover, Rougher
Line 733: Line 1,627:
*New icons for existing tool types:
*New icons for existing tool types:
**Boring: Reamer
**Boring: Reamer
**Cutting: Endmill
**Cutting: Endmil
==Client 1.4.3==
* Added good, scrapped, and total part counts to the overview cards on the machines page
9/06/2022
*Fixes a bug where good and total part counts would not update correctly in part chart tooltips after navigating between days or scrapping parts.
*Adds good, scrapped, and total part counts to the overview cards on the machines page.
==Client 1.4.2==
8/25/2022
* Fixes a memory leak on the tools page that caused the browser tab to crash or the browser to reject network requests depending on when the memory limit for the tab was reached.
*Offer to refresh the page if the server reports a different version after the event bus has reconnected.
*Offer to refresh the page if the server reports a different version after the event bus has reconnected.
==Server 4.6.2==
8/24/2022
*Fixes a bug that prevents database changes from being saved when an external notification is sent by the action that made the changes.
==Client 1.4.1, Server 4.6.1==
8/23/2022
*Now you can select along the x-axis of tool replacement life charts to limit the replacements shown in the table.
*Now you can select along the x-axis of tool replacement life charts to limit the replacements shown in the table.
*Added tool, section, and time increment columns in the TMAC events table on machine production pages.
*Added tool, section, and time increment columns in the TMAC events table on machine production pages.
*Added a dropdown to the tool editor to change which assembly the tool belongs to.
*Added a dropdown to the tool editor to change which assembly the tool belongs to.
* Internal server changes for better database performance and parity with Inspection.
*Internal server changes for better database performance and parity with Inspection
==Client 1.4.0, Server 4.6.0==
8/10/2022
===New features===
*Field to enter brand of tool order items.
*Field to enter brand of tool order items.
*Field to enter pack quantity of tool order items to round up to a multiple of it when generating orders.
*Field to enter pack quantity of tool order items to round up to a multiple of it when generating orders.
* Simplified order spreadsheet columns.
*Simplified order spreadsheet columns.
*When rebuilding durable tools, the location field of the original tool will be moved to the substitute tool.
*When rebuilding durable tools, the location field of the original tool will be moved to the substitute tool.
*Added maintenance module for scheduling repeated maintenance tasks or measurements, and for logging/tracking machine issues
*Added tool life chart to tool replacement history window
===Bugs fixed===
===Bugs fixed===
* Check tool list when adding to assembly to prevent database corruption.
*Disabled the "Finish" button of the tool replacement wizard while the replacement is submitting to reduce double-submissions.
*When creating tool order items, only the name entered was saved, but now all fields work correctly.
*After creating a tool order item from the inventory tab of the tool editor, the newly created item will once again be selected automatically
*Fixed a bug where good and total part counts would not update correctly in part chart tooltips after navigating between days or scrapping parts.
*Fixed a memory leak on the tools page that caused the browser tab to crash or the browser to reject network requests depending on when the memory limit for the tab was reached.
*Fixed a bug that prevents database changes from being saved when an external notification is sent by the action that made the changes
*Check tool list when adding to assembly to prevent database corruption.
*Start the y-axis of tool life charts at zero
*Fixes an issue where turning the tool history window chart on, off, and back on would freeze the page
*Fixed time rounding in production chart compare mode
*Fixes a bug introduced in client 1.2.0 that caused the tools table '''Usage''' column to sort by part count instead of parts remaining. After installing client 1.2.1, it will sort by parts remaining again
 
===Breaking changes===
===Breaking changes===
*For API users: <code>Tool.folder</code> has been removed.
*For API users: <code>Tool.folder</code> has been removed.
*Some server code has been extracted and merged with redundant code from Inspection into <abbr title="Wolfram Python Utilities">WPU</abbr>, so there may be new bugs introduced for edge cases.
*Some server code has been extracted and merged with redundant code from Inspection into <abbr title="Wolfram Python Utilities">WPU</abbr>, so there may be new bugs introduced for edge cases
==Client 1.3.2==
8/08/2022
*Start the y-axis of tool life charts at zero.
==Client 1.3.1 ==
8/08/2022
*Fixes an issue where turning the tool history window chart on, off, and back on would freeze the page.
==Client 1.3.0, Server 4.5.0==
8/08/2022
*Added maintenance module for scheduling repeated maintenance tasks or measurements, and for logging/tracking machine issues
*Added tool life chart to tool replacement history window
* Fixed time rounding in production chart compare mode
==Client 1.2.1 ==
7/27/2022
*Fixes a bug introduced in client 1.2.0 that caused the tools table '''Usage''' column to sort by part count instead of parts remaining. After installing client 1.2.1, it will sort by parts remaining again.
==Client 1.2.0, Server 4.4.0, Proxy 2.4.0==
==Client 1.2.0, Server 4.4.0, Proxy 2.4.0==
7/27/2022
7/27/2022
Line 783: Line 1,663:
in mind while deciding when to install this update.
in mind while deciding when to install this update.
===New features===
===New features===
* Click the pin button for a tool on the tools page to keep it at the top of the table when sorting. The pinned state of a tool is shared across all users.
*Click the pin button for a tool on the tools page to keep it at the top of the table when sorting. The pinned state of a tool is shared across all users.
*Tool replacement breakdowns are saved when the tool is replaced, so the data will not change if the tool is unassigned from programs/groups.
*Tool replacement breakdowns are saved when the tool is replaced, so the data will not change if the tool is unassigned from programs/groups.
*Durable tool rebuild status is now tracked and can be set in the tool editor or from the rebuild wizard.
*Durable tool rebuild status is now tracked and can be set in the tool editor or from the rebuild wizard.
* For machines with FANUC controls, the reported program name will now be populated with the program's comment if one is set on the control.
*For machines with FANUC controls, the reported program name will now be populated with the program's comment if one is set on the control.
===Bugs fixed ===
===Bugs fixed===
====Production monitoring====  
====Production monitoring====
*TMAC alarms are now correctly color-coded in charts.
*TMAC alarms are now correctly color-coded in charts.
*Compare mode on part charts now counts all parts between the selected parts, including both endpoints, regardless of their scrapped status.
*Compare mode on part charts now counts all parts between the selected parts, including both endpoints, regardless of their scrapped status.
*The "launch TMAC job editor" button in the event window now works correctly. This only applies to TMAC events recorded after installing server version 4.4.0 and proxy version 2.4.0.
*The "launch TMAC job editor" button in the event window now works correctly. This only applies to TMAC events recorded after installing server version 4.4.0 and proxy version 2.4.0.
* Part and event editor windows now open reliably when using the buttons in the tables on the machine production pages instead of clicking on the chart.
*Part and event editor windows now open reliably when using the buttons in the tables on the machine production pages instead of clicking on the chart.
====Reporting====
====Reporting====
*Production overview (heatmap) windows now clear when opening instead of showing irrelevant data.
*Production overview (heatmap) windows now clear when opening instead of showing irrelevant data.
*Production overview generation is now more accurate when counting parts produced shortly before or after midnight, and about 53 times faster overall.
*Production overview generation is now more accurate when counting parts produced shortly before or after midnight, and about 53 times faster overall.
*Periodic machine reports sent to Slack/Teams will now be for the current day instead of yesterday.
*Periodic machine reports sent to Slack/Teams will now be for the current day instead of yesterday.
====Tool management ====
====Tool management====
*Favorite tools are now respected by all tool filter modes.
*Favorite tools are now respected by all tool filter modes.
*Tool replacements that index the tool past the number of corners set on the order item will be rejected.
*Tool replacements that index the tool past the number of corners set on the order item will be rejected.
Line 803: Line 1,683:
*The current part count is now read at the correct memory address from FANUC controls, so it is no longer necessary to use a macro variable for all programs.
*The current part count is now read at the correct memory address from FANUC controls, so it is no longer necessary to use a macro variable for all programs.
*Alarm names are now read at the correct memory address from FANUC controls, so they will no longer show up missing the first four characters.
*Alarm names are now read at the correct memory address from FANUC controls, so they will no longer show up missing the first four characters.
* For TMAC alarms, the <code>jobId</code> field will contain the ID of the current job, in addition to the current <code>job</code> field that contains its name.
*For TMAC alarms, the <code>jobId</code> field will contain the ID of the current job, in addition to the current <code>job</code> field that contains its name.
===Breaking changes===
===Breaking changes===
*The physical attributes tab of the tool order item editor has been removed. This data is still accessible for reading and writing via the API.
*The physical attributes tab of the tool order item editor has been removed. This data is still accessible for reading and writing via the API.
*For API users: <code>/api/tools/replacements/:id/usage</code> has been removed. Read the <code>parts</code> property of returned <code>ToolReplacement</code> objects instead.
*For API users: <code>/api/tools/replacements/:id/usage</code> has been removed. Read the <code>parts</code> property of returned <code>ToolReplacement</code> objects instead
==Client 1.1.8, Server 4.3.0==
7/19/2022
* Added a checkbox to move assignments to a substitute tool when rebuilding durable tools
*Show full alarm text for Haas machines using MTConnect
*Breaking change for API users: <code>POST /api/tools</code> has been removed. Use <code>PUT /api/tools</code> to create tools instead.
== Server 4.2.9 ==
7/14/2022
* Changed the name of the login session cookie to avoid conflicting with Inspection.
==Client 1.1.7, Server 4.2.8==
7/14/2022
===New features===
*Tools now track how many days they have been in use, and there is an option to set a threshold that will trigger a warning notification and show time usage in the tools table.
*Show tool ID in the tool editor's info tab
===Bugs fixed===
*Fixed an issue that caused internal server errors when using the API key to authenticate requests to some protected endpoints.
== Client 1.1.6, Server 4.2.7==
7/11/2022
*Program group tool replacement charts now include replacements of tools assigned to individual programs in the group.
*The program/group tool replacement history chart windows now open immediately and show a loading indicator instead of appearing to do nothing while loading and rendering.
*Internal change to how users are loaded from the database during session creation (login) and session restoration (after, for example, a browser restart).
==Client 1.1.5, Server 4.2.6==
7/06/2022
===New features===
*View all the tools using an inventory item by clicking the tools button next to it on the inventory page.
*The release notes window can now be opened from the user menu in the navigation bar. Also, there is now a user menu in the navigation bar.
===Bugs fixed===
*Tool order calculations were not counting all usages of the tool.
*The login screen and help pages now load correctly when using OnTakt from a computer that does not have internet access.
==Client 1.1.4, Server 4.2.5==
7/05/2022
=== New features===
*Tables under machine production pages now have buttons to open the same detail windows as clicking on the chart objects.
*Tool page can be filtered by machine.
*Inventory page can be filtered by machine.
===Bugs fixed ===
*The job editor button in the event details window that links into the TMAC web interface now works correctly. The alarm metadata needed for this to work is only available for alarms recorded after installing OnTakt Server 4.2.5 and TMAC 3.1.3 (build 977) or newer.
==Client 1.1.3, Server 4.2.4==
6/22/2022
===New features===
*'''Shift notes:''' expand a machine card and click the Shift Notes button to quickly check and/or enter notes for all the TMAC alarms, scrapped parts, tool changes, and OEE for a single machine on a given day.
*Don't suggest grouping unnamed programs (in format "O#")
===Bugs fixed===
*Fix error when replacing tools without an inventory point set.
* Notification destinations can now only have one channel selected.
*Don't close the tool replace window until it saves successfully.
*Round tool/corner usage numbers for display to avoid overflow.
==Server 4.2.3==
6/16/2022
*Event reports sent to Slack and Teams are now flat text because these applications do not render tables. Event reports run manually are still formatted as tables.
*Database migrations can once again run in reverse without crashing.
==Client 1.1.1, Server 4.2.2==
6/16/2022
===New features===
*Tool stock remaining time report.
* Tool stock out notifications (enable in Options &rarr; Tools).
*Tool life analysis mode on the tool table.
===Bugs fixed===
* Replacing a tool that is assigned to multiple loaded programs no longer causes an error.
*Tool replacement window would not open for tools without an order item set.
*Correct tooltip units on production heatmaps.
===Breaking changes ===
*Removed <code>/api/programs/find</code>
==Server 4.2.1==
6/07/2022
*Fixed OEE availability calculation.
== Client 1.1.0, Server 4.2.0==
6/07/2022
===New features===
*Added a safety stock field to tool inventory items. When ordering, it will ensure there are enough replacements to continue production on the chosen number of days.
*Added a button to delete tool replacements.
*There is also an undo button on the most recent tool replacement that will revert the tool's life and restore an inventory item.
* Added a button to learn cycle times for selected programs. This only updates programs that do not already have a cycle time set.
* Machine alarms are now included in the Event report.
===Bugs fixed===
*Existing program/group selections in the tool table filters were showing as their ID instead of their name.
*The "reorder quantity" field label was missing in the tool editor.
===Breaking API changes===
* Removed <code>/api/programs/names</code> in favor of reading the various name fields from <code>/api/programs</code>
==Client 1.0.23==
6/01/2022
*Fixes all checkboxes showing "null" when filtering tools to order by selecting programs.
==Client 1.0.22, Server 4.1.12==
6/01/2022
===New features===
*Search program and program group filter lists in the tools table.
*Bulk select/deselect programs in the programs table.
*Show explanation when program production cannot be forecast.
*Option to hide program breakdowns in the tool replacement history window.
===Bugs fixed ===
*Unexpected logouts due to a new browser security rule.
==Client 1.0.21, Server 4.1.11==
5/12/2022
*Overlay machine name on production chart instead of showing underneath.
*Better machine status time display format.
*Fix OEE performance calculation.
*Document OEE calculations in help pages.
==Client 1.0.20, Server 4.1.10 ==
5/10/2022
===New features===
*Favorite tools per-user for quick access.
*Override program names and provide program descriptions.
*Calculate OEE and store historical OEE calculations and score breakdowns.
* When replacing a tool, the "tool was indexed" box is now checked by default if indexing is possible.
*Store part count at time of tool replacement (provides an "other" listing in the history window).
*More information in support files.
===Bugs fixed ===
* Deleted items not displaying correctly.
*Error when TMAC reports an alarm for the first time.
==Server 4.1.9==
4/20/2022
*Fix help page title display.
*Address FANUC common variable range in documentation.
*Publish API documentation.
==Client 1.0.19 ==
4/18/2022
*Update NC &amp; TMAC alarms on production charts in real time.
*Automatically reload the TV view page when the event bus reconnects in case any changes were missed while it was disconnected.
== Client 1.0.18, Server 4.1.8 ==
4/14/2022
*Better handling of long-running browser sessions: parts are limited to the chart date range displayed, and machine card charts automatically advance to the next day.
*Introduces "TV mode" - a slideshow of all machines.
*Backend changes that should slightly improve server performance.
==Client 1.0.17, Server 4.1.7==
4/13/2022
*Allow selecting program groups when ordering in tool inventory table.
*Use day cutoff in local time zone for parts report.
*Fix issue where the tool history window keep previous replacements shown when opening it for a different tool.
* Include database schema in backups, wipe existing data before restoring.
*Update API HTTP server library and switch to new backend WebSocket library.
==Client 1.0.16, Server 4.1.6==
4/11/2022
*Fixes an issue where the proxy version was not displayed correctly.
*Block machine updates when license is missing or expired.
==Client 1.0.15, Server 4.1.5==
4/04/2022 
*Tools table column options are now saved between visits.
*Tool usage breakdowns in the tool ordering table are now rounded to 2 decimal places and show a separate number for the usage per selected interval.
*Added buttons to select/deselect all machines when running a report that asks for a list of machines.
*Part counts in the parts report are now formatted with commas for easier readability.
* Fixes a bug where sensitive options would be accessible to non-admin users via separate HTTP requests.
*Removes some duplicated features that have been moved to the host process.
*Added an option to the Sort &amp; Filter dropdown on the machines pages that sorts them by their current status in the following order:
#Any status not listed here
#Not yet reported
#Has a TMAC alarm
#Feed hold
#Production stopped
#Optional stop
#Emergency stop
# Active
==Client 1.0.14, Server 4.1.4==
3/22/2022
*Fix TMAC alarm name lookups so they don't all show up as extreme alarms.
*Allow scheduling automatic backups.
*Fix the options window freezing when ontaktd is not available.
*Improve the display format of the backup device dropdown.
* Refresh data after event bus reconnects.
==Client 1.0.13, Server 4.1.3==
3/15/2022
*Store TMAC job and learn status on each machine and display them in the expanded cards.
*Record the active TMAC job when replacing a tool and show it in the replacement history.
*Display machine overview data (parts counts and average cycle time) as a heatmap again.
*Display only the last 10 audit log and trash entries to avoid running out of memory on the client.
*Allow setting the system NTP server (on supported installations).
* Check for the presence of <code>ontaktd</code> before attempting communication (scanning for backup devices, setting the NTP server, applying license keys, etc.). This means things will load faster instead of timing out when it is not present.
==Client 1.0.12, Server 4.1.2==
3/10/2022
*Show 10 tool replacements at a time for better performance.
*List server backup devices in options window.
==Client 1.0.11, Server 4.1.1==
3/08/2022
*More reliable TMAC alarm reporting.
* Animation on machine card color chips when new alarms appear.
*'''Breaking change:''' OnTakt 4.1.0+ requires TMAC 3.1.0+ and OnTakt Proxy 2.1.0+
==Client 1.0.10==
3/08/2022
*Ask password managers not to autofill the TMAC API key field in the machine editor.
==Client 1.0.9, Server 4.0.8==
3/03/2021
*Separate field in the tool editor for tool stickout reference point.
*Option to show tool stickout/reference in the tools table.
*Label durable tools in the inventory table.
*Disable "show tools" buttons in the inventory point table for points without any tools.
==Client 1.0.8, Server 4.0.7 ==
2/14/2022
*New license key system.
*Remove Google Analytics.
==Client 1.0.7, Server 4.0.6 ==
2/01/2022
===Low tool stock notifications ===
#Enable notification destinations in the tool editor.
#Set the reorder point for the tool.
#A message will be sent to the selected channels when the total quantity of the tool in stock equals the reorder point.
==Client 1.0.6, Server 4.0.5==
1/31/2022
*Scrapping multiple parts now offers a notes field that will be added to the notes of each part.
*Fixed an error when charting production of individual programs and program groups.
== Client 1.0.5==
1/27/2022
*When replacing a tool, the number of that tool currently on order is now shown under the source selection list.
==Server 4.0.4==
1/24/2022
*Add a "Tool Usage" report type that shows the expected and actual rates at which tool order items have been consumed by a chosen set of machines in a given time period.
==Client 1.0.4, Server 4.0.3==
1/21/2022
===Favorite machines===
*Click the star on a machine to favorite it
*Hide non-favorited machines in the Filter &amp; Sort menu
*Favorites are stored in each user account
===Machine tags===
*Administrators and planners can set tags on machines in the Edit Machine window.
*Customize machine tag colors in Options &rarr; Machines.
*Enter a list of tags in the Filter &amp; Sort menu to show only machines that have at least one of those tags.
==Client 1.0.3, Server 4.0.2==
1/20/2022
===New features===
*Chart date navigation buttons now fit their text format to the screen size better.
*Chart date navigation buttons now only show the precision available (weeks or years instead of always days).
*Machine/program/group overview charts are now line charts that show average cycle time instead of heatmaps:
[[File:20210120_production_overview.png|production overview chart screenshot|818x818px]]
===Bugs fixed===
*Notification bug preventing alarm message lookups
*Formatting error in Keyence MD-X error S096 preventing alarm message lookups
*Improved login performance
==Client 1.0.2, Server 4.0.1==
1/13/2022
*The list of Okuma alarms with detail text available has been expanded.
*Individual alarms can be muted from notifying by adding them to a list in the machine's notification settings.
*The time it takes for the colors to fade on the machines page can be customized in the global shift options.
*Some bugs involving sorting tools while ordering have been fixed.
==Client 1.0.1==
1/03/2022
*The first part of each program on production charts now displays the name of the program next to it.
*Also, hovering over any part will now show its program name again.
==Client 1.0.0, Server 4.0.0==
12/30/2021
 
The next time a tool is expected to need replacing is now shown on the charts (if the "tool replacements"switch is on at the bottom), as shown below:
 
[[File:20211230_expected_replacements.png|screenshot|869x869px]]


For now:
*Tools that are already past due for replacement are ignored.
*Only the next replacement time of each tool is shown.
[[Category:OnTakt]]
[[Category:OnTakt]]

Latest revision as of 12:17, 18 November 2024

Server 4.3.11, Client 2.4.10

11/18/2024

Machines

  • New Preflight failure causes will now be added to the currently open Preflight record (if there is one) for visibility.
  • The machine hold list and "scheduled holds" page now show upcoming manually-scheduled machine holds.
  • Added "show only unassigned programs" option to programs page to allow showing all programs in one place.
  • Machine cards now show mapped state names (as defined in the machine state definition list) instead of state strings reported by the machine.
    • This can be reverted by enabling the "show raw machine states" global machine setting.
  • Changing part flags now requires entering notes.
  • Auto-calculated downtime values are now rounded to 2 decimal places.
  • Attempting to set a machine hold's start timestamp later than its end timestamp now causes an error.
  • Fixed state history chart rolling interval mode not updating state blocks.
  • Improved parity with XMC's "count on program change" functionality: when creating parts due to a program name change, attribute them to the previous program and not the newly-loaded program.

Tools

  • Tool selection dropdowns now show each tool's tags.
  • Maintenance status tracking is now available for all tools instead of only durable tools.
  • Tool selection dropdowns no longer show the "hide tools already in assembly" filter when not choosing a tool to add to an assembly.

Maintenance

  • Maintenance items, reports, etc. can now be scheduled with hourly frequency.
  • Maintenance items can now be imported using a spreadsheet template and exported as a TSV file.
  • Maintenance items can now be assigned to specific processes, and they will only be considered as needed when that process is active.
    • These maintenance items will be listed on the process's details page.
  • Maintenance items that are not currently needed now have an indicator next to their due date in the maintenance table.
  • Fixed machine and equipment columns missing from maintenance page.

Miscellaneous bugs fixed

  • Fixed database connection failures caused by sending too-large event bus message payloads.
  • Disable swiping from the left to accidentally open the alerts pane or to-do list.

API changes

  • Preflight check responses now have a "record" property with the new/updated record instead of listing the causes separately.
  • Added GET /api/machines/holds endpoint to query across all machine holds.
  • Maintenance items now export a currently_needed boolean property.
  • GET /api/preflight/check/:machineID now returns an uncommitted property with the latest failure data, since GET requests will not create or modify Preflight records to contain this information.

Server 4.13.8, Client 2.4.8

10/02/2024

Machine improvements

  • Machines can now automatically start downtime for specific NC alarms and end it when the machine becomes active again.
    • The list of alarms for a specific machine can be set under Edit -> Info -> Shop.
  • Maintenance items can now become due early if their associated machine triggers specific alarms. Learn more
  • Added a global machine setting to fail Preflight when there is not a process loaded. This setting is disabled by default.
  • Reports that take a list of machines now allow selecting machines by tag.
    • For scheduled reports, adding or removing machines from a tag will update future runs of the report as well.
  • The utilization history report now has an option to show utilization in hours instead of as a percentage.
  • Configurable offline machine detection
    • Added global machine settings to control how long the NC, TMAC, and Preflight components can go without communicating before being considered "offline".
    • Added a global machine setting to send a notification when a machine goes offline.
    • Offline machines now appear as alerts instead of to-do items.
  • Downtime blocks in production charts now have clickable segments across the top that directly open the downtime editor.
  • Added a "Process" column to the tools table. It can be enabled using the Columns dropdown menu.
  • When calculating the value of automatically-ending downtime, the machine's earn rate will be used if there is no process available. Processes without a cycle time set will still cause an alert to be shown instead.

Machine holds

  • Multiple holds can now be created on the same machine. The machine will not pass Preflight until all holds have been released.
  • Holds now track which user placed them, and can now have detailed notes.
  • The start (and optionally end) of a hold can be specified to automatically hold and/or release a machine in the future.
  • Hold schedules can be created for automatic, recurring holds.
  • A reason must now be entered to hold a machine.
  • A warning is now displayed when attempting to hold a machine that is not set up for Preflight.
  • The machine hold bar across the top of the machine card is now labelled with "Machine held" before the reason(s).

Tool and Tool Assembly improvements

  • Machine running without an active shift are now assumed to be running lights-out. This means Preflight will now only stop for tool expiration outside of a shift if the tool is critical.
  • OnTakt will now send a warning to the machine's notification channel during the last staffed shift before lights-out shifts if a critical tool will need replacement before the next staffed shift.
  • "Add tool to assembly" dialog improvements:
    • Show location of each option's assembly.
    • Show process of each option (if in one).
    • Allow filtering by process.
    • Option to hide tools that are already in another assembly.
    • Confirm when adding a tool that's already in another assembly.
  • The "new tool assembly" and "new tool with assembly" dialogs have been merged.
    • The tool assembly editor now allows adding and creating tools for both new and existing assemblies.
  • The "Testing" badge in the Usage column of the tools table for a tool in test mode can now be clicked or tapped to show the testing notes.
  • The "corners" field is now shown for all cutting tools instead of only inserts.

Other improvements

  • Reports are now grouped into categories.
  • The API documentation link now goes directly to the docs for the current server version.
  • The maintenance item "Performed when machine is in use" checkbox has been relabeled as "Performed when machine is in use (not archived)" for clarity.
  • The default set of machine state definitions after installation now maps the OPTIONAL_STOP state used by MTConnect 1.4+ to match the PROGRAM_OPTIONAL_STOP state used by older versions of the standard.
  • When a machine's reported state matches multiple state definitions, the first state definition alphabetically by name will always be used.
  • The built-in Markdown editor now has buttons to format selected text and insert links.
  • Screenshare mode now shows fake machine, tool, and issue tag names.

Bugs fixed

  • Fixed state history charts not re-rendering on mobile devices when the screen orientation changes.
  • Fixed client error when editing existing downtime that doesn't have a category set.
  • Fixed client error after deleting a machine.
  • Fixed server error when a client disconnects from the event bus unexpectedly.
  • Fixed server warning when creating a new machine.
  • Fixed server error when deleting a machine that has downtime.
  • Removed superfluous Content-Type header from HTTP 204 responses.
  • Fixed predicted tool replacements appearing too early.
  • Fixed server error when automatically ending downtime created by Preflight.
  • Fixed error when preparing to restore a backup when the database contains downtime blocks that were created automatically.
  • The "Noted parts" table header on the production page now displays correctly.
  • The Preflight record details window no longer shows "[#]" for tools without a location set.
  • Fixed client error when rendering the tool usage table in the part editor.
  • Fixed the tools page failing to load when the persisted usage mode filter is invalid.
  • Fixed bars appearing in the reverse order of the y-axis labels in the utilization history report.
  • Fixed client error when editing or duplicating a scheduled report.

Server 4.13.4, Client 2.4.4

9/16/2024

New features

  • Maintenance page sort and filter options are now persisted per-user.
  • Critical maintenance items are now shown first in machine/equipment maintenance dropdown lists.
  • Added more process and program names for screenshare mode.

Bugs fixed

  • Fixed new users not being able to log in until their password is changed.
  • Fixed Microsoft Excel "number stored as text" warning in part report spreadsheets.
  • Fixed a server bug related to event bus broadcasts.

Server 4.13.3, Client 2.4.2

9/04/2024

Machines

  • Parts can now be flagged as "suspect" (in addition to "scrapped" or "reworked").
    • Reworked parts are now charted as light blue instead of amber, as suspect parts are now charted as amber.
  • The downtime editor now has a duplicate button that copies the downtime block to other machines.
  • The machines page table view now has a "parts" column available that shows the number of good, scrapped, and goal parts.
  • The global machine color timing settings can now be set to zero.
  • Parts can now be manually created on machines that have never reported a program.
  • Fixed production charts sometimes showing incorrect shift names after changing dates.
  • When sorting machines by production data, the machines page now shows a loading indicator until all visible charts have loaded to avoid cards moving around as each chart loads.
  • Machine cards now show "OFFLINE" after 5 minutes instead of 1 hour.
  • Machine descriptions can now be clicked to open them in a dialog that allows text selection and copying.
  • When charting goals for past shifts that did not have any parts, rather than drawing a flat goal line OnTakt will instead try to use the cycle time from:
    1. The next part that was produced
    2. The currently-loaded program
  • Fixed the state history page rolling interval settings wrapping into two lines on desktop.

Preflight™

  • Machines that have failed Preflight now show a "PREFLIGHT" status on their cards. Clicking on this status will show the reason(s) for the failure.
    • The "PREFLIGHT" machine card status takes precedence over the "OFFLINE" status.
  • Preflight failures are now logged along with the reason(s) for the stop. This log can be accessed from the machine menu.
  • Added a global machine setting to send a message to the machine's notification channel when Preflight stops a machine.
  • Added a global machine setting to automatically start downtime when Preflight stops a machine.
    • The downtime editor now has a button to open the associated record when the downtime was automatically created due to a Preflight failure.
    • The created downtime block will automatically end when the Preflight failure ends.
  • Machine cards now show the last Preflight check time when expanded. When this is more than 5 minutes ago, an indicator will be added to the top-right corner of the card under the alarm indicators.

Custom shift notes fields

  • Shift notes fields can now be assigned to individual shifts.
    • If a field is not assigned to any shifts, it will appear for all shifts, so installing this update will not immediately change any behavior.
  • If a custom shift notes field is not assigned to any machines, it will now appear for all machines.
  • Shift notes fields can now be archived. This hides them during shift notes submission but preserves their historical data for later analysis.

Processes

  • Added Screenshare mode to hide proprietary process information.
  • Process dropdowns now show machine names and allow searching by process or machine in:
    • Inventory page order mode
    • Combined tool/assembly creator
    • Tool assemblies page filter menu.
  • Fixed server error when duplicating processes.

Tools

  • Tool replacement notification rules
    • Existing "repeated breakage" notification settings will be converted to a notification rule when installing the update.
  • Tool life history
    • Past changes to the part life of existing tools will be converted to life history entries when installing the update.
  • Tool location history
  • Tools listed inside the tool assemblies table now have a "remove from assembly" button in their action menus.
  • Added a button to export all selected tools to a TSV file using the current column selection.
  • Tool replacements can now be backdated.
  • When undoing a tool replacement, the tool's runtime counter at the time of replacement is now added back to the tool's runtime counter.
  • Existing tool replacements can now be changed to testing tools from the tool replacement editor.
    • To maintain inventory accuracy, the reverse is not allowed.
  • When a tool is replaced with a test inventory item, the usual life fields are now hidden and OnTakt will not notify about its life usage.
  • Added buttons to quickly clear the search and tags filter fields on the tools page.
  • Added an optional "last replacement date" column to the tools table. Clicking the date will open the replacement details.
  • Fixed sorting the tools table by the machine or last part columns not working reliably.
  • Fixed the tool replacement history charts showing the wrong bars as test replacements.
  • Fixed "Other" not always appearing at the end of the program breakdown list in the tool history window.
  • Fixed the "duplicate tool" button editing the existing tool instead of creating a new one.
  • The tool history window will no longer load older replacements when mousing over the oldest bars in the chart view. It will still load older replacements when scrolling to the bottom of the table or clicking the "load more replacements" button.
  • Fixed server error when creating a tool with a life specified.

Tool assemblies

  • Tool assemblies now have a button to add a tool in their action menus.
  • Tool assembly dropdowns in the tool editor and "with selected tools" sidebar now show the process name of each assembly and allow searching by "#location" and process name in addition to assembly name.
  • Fixed "[object Object]" list items appearing in the tool assembly bulk action sidebar.
  • The process selection dropdown in the tool assembly editor now shows:
    • the machine each process belongs to
    • (and allows searching by) the name of each process's machine
  • Fixed server error when duplicating tool assemblies.

Inventory

  • Added a new inventory item type: Collet (under Durable).
  • The Inventory Points page now highlights zero and negative item quantities.
  • Improvements to the source inventory point dropdown in the tool replacement and maintenance entry wizards:
    • The default option is now always listed to avoid showing the default inventory point's ID instead of its name when it doesn't have any of the required item in stock.
    • The quantity of the required item in stock at the selected inventory point is now shown in the dropdown header and not just when the dropdown list is visible.
  • The inventory points table now always fits vertically on the screen.
  • Fixed the source inventory point dropdown sorting inventory points with the same quantity of items in reverse alphabetical order.

Maintenance

  • The maintenance calendar now shows all future recurrences of each item.
  • Maintenance items can now be assigned a difficulty level for filtering and sorting.
  • Maintenance items assigned to a subsystem (equipment belonging to a machine) can now be tracked by the cycle time of the associated machine.
  • Maintenance entry completion is now automatically timed.
    • The expected time can be compared and adjusted to the actual average time by selecting maintenance items and then clicking "Analyze Completion Durations" in the sidebar that opens.
    • The maintenance training matrix report now includes a second sheet with the average completion times.
  • Critical maintenance items are now displayed as blue text in machine and equipment maintenance dropdown lists.
  • Improved accuracy of item due date calculation for runtime-scheduled maintenance items.

Reports

  • The parts report now includes columns for the total number of parts produced during the entire selected time range and the cost of the tool life used by each part.
  • Added a tooling cost report (experimental).
  • Fixed error when running the production summary report with shifts near midnight.
  • Fixed Parts Report failing to generate when it includes multiple programs with the same filename.

Other bugs fixed

  • Server error when TMAC reports an alarm without a tool number.
  • Fixed server error when loading audit logs.
  • Fixed not being able to click in the notes cell of a table row when kudos buttons are displayed.
  • Fixed client error when adding or removing kudos on a part after editing the note.
  • Fixed email notifications not working with SMTP servers lacking the AUTH extension.

Other changes

  • Removed per-user machine color timing settings. The global settings are still available.
  • Updated open-source licenses.

API changes

  • Added GET /api/preflight/log/:machineID.
  • The Preflight™ check endpoint has been moved from GET /api/machines/:id/preflight to GET/POST /api/preflight/check/:machineID (and now accepts POST requests as well). GET requests will continue to work as before, while POST requests also have server-side effects, such as recording the failure, creating downtime, and sending notifications. The request and response formats have not changed.
  • Added GET /api/tools/:id/lifeHistory to get the life history records for a given tool.
  • Added GET /api/tools/replacements/rules/* endpoints to manage tool replacement notification rules.
  • GET /api/processes/analyzeCycleTimes has been replaced by POST /api/processes/averageCycleTimes. The new endpoint allows specifying multiple process IDs in a single request, and the response format is now keyed by process ID instead of "minutes".
  • Added POST /api/maintenance/items/averageCompletionDurations
  • Downtime objects now include a preflight_record field if they were automatically created by Preflight™.
  • After being deprecated in server 4.11.0, POST requests are no longer supported by /api/machines, /api/processes, and /api/tools/assemblies. Send PUT requests to these endpoints instead.
  • Setting priority to 0 on a machine or maintenance issue now returns an error instead of silently failing.

Server 4.12.22, Client 2.3.22, Proxy 2.8.10

7/18/2024

Machines

  • The Equipment page is now nested under the Machines page.
  • Machine menus are now dropdowns instead of buttons.
  • Moved unassigned programs from the Processes page to a new Programs page under it.
  • The "chart range" setting on the Machines page is now persisted per-user with the other view options.
  • Removed the redundant year column from production overview CSV exports.

Preflight™

  • Machines now fail Preflight™ if any of their tools are at or over 100% usage, not just over 100% usage.
  • Individual shifts now now be set to ignore Preflight™ failures.
  • Tools can be marked as critical. During lights-out shifts, only these tools can cause a Preflight™ failure.
  • Machines can be placed on hold, causing them to fail Preflight™ with a provided reason.

Shift management

  • Shifts have been moved to their own page in the Machines navigation dropdown.
  • Shift notes can now be submitted for multiple machines at once from the action menu on the Shifts page.
  • Assigning custom shift notes fields to machines now uses a checkbox matrix instead of a list of machines for each field.
  • The Shifts page can now show the shifts assigned to a selected machine as a weekly calendar.
  • Custom shift notes fields are now formatted better in Slack notifications:
    • Checkbox fields are displayed inline
    • Empty text fields are not listed
  • Moved custom shift notes fields from a button on the Shifts page to their own Shift notes fields page.
  • The global shift notes notification channel setting has been moved from the Machines page settings to the Shifts page settings.

Machine compatibility

  • DMG MORI machines now have a "MAPPS name" configuration item.
  • OnTakt now reads the rapid override from machines with SIEMENS SINUMERIK controls.
  • Fixed incorrect or inaccurate rapid override when reading from machines using FANUC FOCAS.
  • Fixed OctoPrint machines not working due to a configuration schema mismatch.

Tools & Tool Assemblies

New features & improvements

  • Added a global tool setting to send an alert (and optionally an external notification) when the same tool is replaced due to damage/breakage a configurable number of times in a row.
  • The tools table can now be filtered by usage mode (parts, clock time, or cycle time).
  • The "assigned to a chosen process" filter dropdown now shows the machine each listed process belongs to.
  • The "using a chosen inventory item" filter dropdown now only lists tool-type items that match the current consumable/durable filter and shows item type icons.
  • The machine filter dropdown on the tools page now shows the name of the process active on each machine.
  • The "in a chosen assembly" filter dropdown now shows the process currently using each assembly and the assembly's location within the process.
  • When replacing a tool for the first time, the "max runtime" and "day life" fields are now set based on the counters of the tool before replacement. Previously, only the "part life" field was learned this way.
  • Tool replacement history can now be filtered to only show replacements with test items.
  • Tool replacement predictions on production charts now account for tools in usage modes other than "parts".

Bugs fixed

  • Fixed the "move" button being greyed out when bulk-removing tool assemblies from their processes.
  • The tool replacement wizard no longer freezes after choosing "No" when asked to continue testing but then re-checking the test mode box in the inventory step.
  • Fixed the tool replacement history window not highlighting replacements in the chart when hovering over table rows.
  • Fixed the tool replacement history table allowing multiple of the same column.
  • Fixed the tool replacements table header being offset by one column when the chart is visible.
  • Past tool replacements on production charts no longer falsely render as "predicted" or "testing".
  • The program breakdown is now hidden from the tool editor when it is empty.
  • Corrected the hint text of the tool editor's notes field.

Other changes

  • Tool schedule notifications have been removed. (Clock time is now a standalone tool usage mode and this feature has been superseded by the maintenance module.)
  • Improved tools table layout and usability on phones.
  • Clarified the test tool checkbox help text in the tool replacement wizard.
  • Clarified the tool replacement test mode continuation prompt text.

Inventory

  • Moved inventory points from a button on the Inventory page to a new Inventory Points page under it.
  • Added a table showing "maintenance items using this inventory item" when expanding inventory item table rows.
  • The inventory items table can now be filtered by whether items are assigned to tools or maintenance items.
  • Added a toggle to show the inventory point list as a table with the quantity of every inventory item at each inventory point to make it easier to find items throughout the shop.
  • Selecting the "other" type category in the inventory item table's "item type" dropdown no longer causes the webpage to freeze.

Maintenance & Issues

New features

  • Maintenance items now have a "completion duration" field that is shown in the calendar view to make balanced scheduling easier.
  • The maintenance calendar now has a summary view that shows the number of items and total completion duration for each day.
  • The issues table now shows issue tags in the name column instead of a separate column to make the table fit on smaller screens when many columns are selected.
  • The maintenance item dropdown in the issue editor now shows the machine or equipment associated with each maintenance item.
    • It also now allows searching by machine or equipment name in addition to maintenance item name.
  • The "next due" column of the maintenance item table now shows the warning date under the due (reminder) date.
  • Issue resolutions:
    • When closing an issue, there is now a separate field for entering the resolution.
    • When viewing a closed issue, clicking the Resolution button will show the original description and final resolution for future documentation.
  • The maintenance item editor now shows "Task" or "Measurement" in the header depending on the type of item being edited.

Bugs fixed

  • The "current usage" section of the maintenance item editor is now hidden when creating a new item.
  • Fixed the downtime editor showing the ID instead of the name of the linked issue when editing existing downtime that was already linked to an issue.
  • Fixed client error when opening the issues table column selection interface.
  • Fixed the maintenance page not showing measurement/task filter options.
  • Pending auto-ending downtime no longer shows as a negative downtime duration in the issues table.
  • Suggested downtime values are now reasonably rounded.
  • Fixed server error when trying to get recurrences of a new/empty maintenance item.
  • Fixed server error when filtering issues by resolved/unresolved status.

Reports

  • Added a new part cycle report that shows the actual vs. expected cycle time of each individual part.
  • Added a new production summary report that shows the total time a machine spends in each state during each shift.
  • The billable excess capacity report now shows a "utilized hours" column.
  • Report types can now be pinned to the top of the list. Each user has their own pinned reports.
  • Time ranges in the utilization history report are no longer shown in reverse chronological order.
  • In the utilization history report, the utilization value for each time range is shown as a label at the end of the bar.

General user interface improvements

  • The current page's dropdown items are now shown as a secondary navigation bar for faster switching.
  • Navigation dropdowns now include the top-level page above the nested pages.
  • Notification channel selection dropdowns are now searchable.
  • Markdown fields now have a preview toggle.
  • When scrolling to the top or bottom of a scrollable dialog window, the page behind it no longer scrolls instead.
  • Image upload fields now all accept the same formats: JPEG, PNG, and WEBP.

Mobile layout & usability improvements

  • Chart and calendar date navigation buttons no longer wrap onto multiple lines.
  • The issue editor and scheduled report editor no longer allow their OK/Cancel buttons to scroll off the page.
  • The machine toolbar now uses smaller icons on small screens.
  • The "Help" button in page headers is now just an icon.
  • The "New" buttons in some page and table headers has been moved to a floating action button at the bottom right.
  • The reports page header no longer wraps on smalls screens.
  • Improved the mobile layout of production and process pages.

API changes

  • GET /api/tools now accepts a ?usage_mode query parameter.
  • Tools listed in preflight responses now include an assembly_location field.
  • The response body of GET /api/tools/replacements/process/:id and the tool_replacements response field of GET /api/machines/:id/chart are now a map of tool ID to replacements directly instead of redundantly nesting it inside a tools property.
  • The tools production chart feature now adds an upcoming_tool_replacements field to the chart response.
  • When serializing maintenance items to JSON, they now each have a maintenance_items field.
  • PUT /api/shiftNotes/fields now accepts properties beyond name when creating a new custom shift notes field.

Server 4.12.18, Client 2.3.18, Proxy 2.8.7

6/19/2024

Machines

  • Fixed Haas machines configured to use MTConnect causing the proxy to hang when setting 143 on the control was not set to 5051.
  • Fixed the "parts with notes" table missing from the production page.
  • Assigning shifts to machines is now done with a checkbox matrix.
  • Fixed the process dropdown in the program editor listing processes from other machines.

Unified machine system schema

The system and model options in machine setup have been merged into one field.

  • The path field is now only shown for machine models that support multiple paths.
  • Removed FOCAS sub-models when setting up a machine.

Machine priority

Indicates to the shop which machines to focus on.

  • Can be set in the machine editor.
  • Machines page can be sorted by descending priority.
  • Low/high priority indicators are shown before the machine name in the machines page card view.
  • Available as a sortable column in the machines page table view.

Shift notes

  • Added a global shift notes notification channel to the machine settings window.
    • Shift notes notifications for all machines will be sent to the selected channel.
    • The per-machine shift notes notification setting now controls whether a duplicate notification is sent to the machine's notification channel as well.
  • Tools listed in shift notes submission notifications now include the location as well as the name.
  • Shift notes notifications now have a separate section for overdue tool replacements instead of showing negative time and/or parts remaining.

Rapid override

  • Rapid override is now recorded from the following machine systems:
    • FANUC FOCAS
    • DMG MORI (MTConnect)
    • Haas (MTConnect)
    • Mazak (MTConnect)
  • Rapid override is now shown in expanded machine cards (for machines that support it).
  • Rapid override is now available as a production chart layer.

Downtime

  • The issue linking dropdown in the downtime editor no longer requires filtering by date. Instead, it allows searching by name or description.
  • Auto-calculated downtime values now allow for partial cycles.

State history

  • The state history page is now always shown as a single column.
  • Machines on the states page can be dragged to reorder.
    • This order is shared with the machines page and between all users.

Equipment

  • The equipment page now shows a loading indicator instead of falsely stating there is no equipment while loading.
  • Removed the table view option from the equipment page.

Maintenance

  • Planned downtime can now be linked to maintenance items instead of issues. This downtime can be listed by clicking the Downtime option in a maintenance item's actions menu.
  • New "Maintenance Training Matrix" report shows how many times each user has completed each maintenance item.
  • Added Markdown support to maintenance item instructions.
  • Added an audit log button to the maintenance item action menu.
  • When editing an existing maintenance item, the OK button is now shown for all steps.

Scheduling

  • Maintenance items can now be scheduled with custom calendar-based rules.
  • Added a maintenance calendar that shows the next due date of each maintenance item.
  • The maintenance items table now shows the interval for items using the clock time and cycle time scheduling modes.
  • The "interval" and "warning interval" fields in the maintenance item editor now default to days instead of hours.

Critical maintenance items

Maintenance items can be marked as "critical".

  • They will appear in a separate to-do section and are highlighted in the maintenance items table.
  • Indicators for critical maintenance items are shown in the machine/equipment maintenance history timeline.

Inventory

  • Added new "hardware" and "spare part" inventory item types.
  • For maintenance-type inventory items, the "Tools using this item" menu action is replaced with "Maintenance items using this item".

Issues

  • When filtering issues by machine (for example, when linking downtime to an issue), issues for that machine's equipment are now listed as well.
  • When linking downtime to an issue, the dropdown will now be populated with issues from the past week until a search is performed instead of showing an empty list.
  • Issues assigned to equipment that belongs to a machine now show the machine's name in the issues table.
  • Fixed equipment-related issues being included when filtering for shop-wide issues.

Tools

  • When replacing a tool, the replacement reason no longer defaults to "other" and must now be manually selected.
  • Added Markdown support to tool notes and post-replacement messages.
  • Fixed the "TMAC recordings" button in the tool actions menu not working.
  • Tools reported for the part currently being produced are now counted as "recently seen" for the active process.
  • Audit log entries were being created each time a tool's runtime counter changed. This has been fixed and any such audit log entries will be deleted during the upgrade.

Alerts & to-do list

  • Removed unused and unassigned tool alerts. Instead, unused tools are indicated in the process's tool assemblies table, which also now adds placeholder rows for unassigned tool locations.
  • The alerts pane now allows filtering alerts by the associated machine.
  • "Production behind" notifications will now only be sent when the machine first falls behind instead of repeating every hour.
  • Fixed the "edit tool", "edit downtime", and "edit process" buttons not working in alert and to-do actions.
  • To-do items to submit shift notes are no longer shown for lights-out shifts.
  • The to-do list now automatically refreshes after completing an item.
  • Tool life alerts now have a "replace" button.

Other changes

  • The inventory table can now be filtered by item type, including entire type categories.
  • The navigation bar labels are now hidden on mobile devices to save space.
  • Added a "presentation mode" user setting that disables the automatic release notes popup.
  • Fixed the "server updated" dialog not showing a dismiss button.
  • The scheduled reports table now shows the next run date of each report.
  • Administrators can now view saved secrets, including the SMTP password, TMAC API keys, and webhook URLs, but not user account passwords.
  • Fixed the billable excess capacity report showing all shifts for all machines instead of respecting assignments.
  • The Accept-Language and X-Timezone headers were not being parsed correctly due to a change made in server version 4.12.12 to support global language and timezone settings. This has been fixed.

API changes

  • Added GET /api/machines/<id>/preflight to check whether a machine is ready to run, meaning it has no overdue tool replacements and no overdue critical maintenance items.
  • Removed the model and nc_url fields from Machine objects.
    • Use system and nc_properties instead.
    • Existing machines will be migrated to the new system names automatically.
  • GET /api/issues now has a q query parameter that allows searching issues by name and/or description.

Proxy 2.8.4

5/24/2024

  • Fixed a bug where alarms were not being cleared from FOCAS machines.

Server 4.12.13, Client 2.3.14, Proxy 2.8.3

5/17/2024

Machines

  • Added support for multi-path machines.
    • Create a separate machine for each path and set the path number each one should use.
    • Supported on Okuma and DMG MORI machines using MTConnect and any machines using FANUC FOCAS.
  • Shift notes notifications now include a list of tools that were replaced and tools that will need to be replaced soon.
  • The machines page now allows hiding offline machines.
  • Machines can now be disabled, which will hide them from the UI and stop the proxy from attempting to connect to them.
  • Fixed server error when deleting a custom shift notes field that had values already entered. The values will now be deleted as well.
  • The "Event Viewer" button is now labeled "Data Viewer" in the alarm detail window for consistency with TMAC.
  • The "Open in Inspection" button in the part editor will no longer show up if Inspection is not installed. Requires OnTakt Daemon version 1.0.9 or newer.

State history

  • The States page now hides archived machines unless the "Show machine archive" option is checked. This option syncs with the same option in the machines page filters.
  • The States page now has an option to show only favorite machines. This option syncs with the same option in the machines page filters.
  • The average utilization of all machines is now always shown at the top of the states page, not just when a tag is selected.
  • The states page now supports a "rolling window" time interval mode.
  • Fixed state history card progress bars showing 100% utilization in dense view mode.

Maintenance

  • Maintenance history: see a timeline of issues and maintenance records from the Equipment page.
  • Added a "Pump" inventory item type.
  • The to-do list now includes maintenance items from machines and equipment instead of only showing shop-wide items.
  • Maintenance reminders are no longer shown as alerts. This upgrade does not automatically delete existing maintenance alerts.
  • Fixed "new issue" button in maintenance item menu not working.
  • Fixed server error when deleting an inventory item that is used for maintenance. The maintenance item will now have the inventory item requirement removed.

Issues

  • Issues now have an "additional value" field that is added to the automatically-calculated downtime value.
  • Issues can now have a solution cost, which allows OnTakt to calculate how quickly fixing the issue will pay for itself.
  • Issue menus now have an "end issue" button.
  • Added a "Duplicate" action to the issue menu.

Reports

  • Pressing the browser's back button after selecting a report to run will now return to the reports list instead of navigating away.
  • Reports with date intervals are now more consistent about handling date boundaries with respect to time zones.
  • Added a global language setting for use in automated notifications and scheduled reports. The web interface language will still follow the browser's settings.
  • Added a global currency setting that shows consistent currency symbols in the web interface for all users as well as reports.

Settings

  • OEE is now disabled by default, but can be enabled in the global machine settings window.
  • The "max idle time" and "max feed hold time" options can now be set to 0 to disable color fading entirely.
  • Email addresses stored in notification channels can now be viewed after saving.
  • The selected timezone option is now validated before use.
  • The URL field of the notification channel editor no longer shows "Unchanged" when creating a new channel.

Other changes

  • The daily scheduled auto-refresh now occurs without prompting if there are no dialog windows open.
  • The "broken" tool replacement reason has been renamed to "damaged".
  • The proxy will now leave machine update fields blank if it could not read data from the machine, which should reduce the chances of ghost parts and duplicate alarms.

API changes

  • The /api/options/calculator endpoints have been removed. Use GET /api/options and POST /api/options/savings_calculator instead.

Server 4.12.10, Client 2.3.10, Proxy 2.7.13

4/24/2024

Machines

  • New CNC machine icon.
  • New machines will no longer create parts when they first connect, which will prevent them from creating hundreds of ghost parts immediately.
  • The machine editor now has checkboxes for clearing the "NC authentication" and "TMAC API key" fields.
  • The OK/Cancel buttons will now always fit in the machine edit window instead of scrolling.
  • Fixed an error that occurred when deleting machines.
  • TRUMPF lasers are now supported via OPC-UA.

Dashboard

  • Archiving machines: machines that will not be used for a while should be archived to declutter the machines list and enable the correct set of maintenance items, which can now be set as needed for non-archived and/or archived machines.
  • The current work order of a machine is now displayed on its machine card beside the active program and process information.
  • Machine alarms without timestamps will no longer cause the client to fail to load the machines page.
  • The filter and sort options for the machines page are now saved to individual user accounts instead of the browser. Note that this does not include the drag-and-drop machine sort order, which is still shared across all accounts.
  • The machines page can now be sorted by the value of each machine's display variable.
  • Machine description previews are now displayed in expanded machine cards. Clicking the preview will show the full text in a window.
  • Part counts displayed in machine cards are now for only the current shift.
    • This can be changed from the Sort & Filter menu.
    • If the machine is not inside a shift, the part count is for the entire chart.
  • Utilization displayed in expanded machine cards is now only based on the current shift.
    • This can be changed from the Sort & Filter menu.
    • If the machine is not inside a shift, utilization is calculated for the entire chart.
  • The machines table view now has a tags column that can be enabled.
  • Fixed the machine menu buttons in expanded machine cards overflowing into the machine status details section on certain screen widths.

Charting

  • The feed rate line is now rendered as a step chart for more visual accuracy when the feed rate does not change often.
  • Upcoming tool replacements are now predicted for all tools in use instead of only tools that have been replaced within the time range shown on the chart.
  • Time outside the current shift is now shaded on production charts.
  • Goals on production charts are now calculated per-shift.
  • Added a marker on production charts indicating the current time.
  • Enabled production chart layers are now saved to user accounts.
  • Fixed a bug that caused charted TMAC events to do nothing when clicked.

Parts

  • The part editor now includes a link to the corresponding parts in Inspection. This functionality will offer better features in a future Inspection update.
  • Fixed double-clicking a day in the chart time range selection calendar not selecting a single day correctly.
  • Fixed tool usage progress bars in the part editor always showing 100%.
  • Fixed incorrect scroll behavior in the part editor.

Downtime

  • Fixed auto-ending downtime failing when the associated process does not have a cycle time set.
  • Errors encountered when calculating the value of an auto-ending downtime block will now appear as alerts.

States

  • Machines that have not reported in an hour will now show an OFFLINE indicator instead of the last reported status and color.
  • The States page is now located in the Machines tab drop-down menu.
  • The states page now has a dense view option that can show up to six times more machines on the screen at once.
  • State definitions can now be merged. This will not delete historical state records and instead reassign their state definition.
  • Added a popup window for editing the machine state list of a state definition.
  • Fixed server error when deleting a state definition that is currently in use by a machine. The machine's state will now be cleared instead.
  • The error message displayed when creating a machine state definition that uses a state string that is already in use by another state definition now shows useful information.
  • Fixed the x-axis of states charts not correctly adjusting to dense mode and showing overlapping time labels.
  • The machine states page can now be filtered by tag(s). When filtering by tag, the average utilization across all matching machines will be shown at the top of the page.
  • The machine states page can now be sorted by the default order, machine name, or utilization.
  • There is now a button to manage machine state definitions in the edit menu on the machines page.

Shift notes

  • Shift notes are now submitted per-shift instead of per-day.
  • Individual shift notes submissions are now tracked.
  • Mid-shift and end-of-shift messages are now sent per-shift instead of per-day.
  • When calculating OEE for days with downtime reported, the duration of the downtime will be used as the unavailable time instead of estimating it from part time deltas.

Operator view

  • Multiple machines can now be viewed together. To do this, filter the machines page by tag(s), and then click "Operator View" at the top right of the summary card.
  • The machine actions menu is now displayed above each machine.
  • The current value of the display variable is now shown for each machine.
  • The current values of process-mapped variables are now shown for each machine.
  • The tools table can now be filtered by maximum number of parts remaining.
  • Fixed the operator page not loading sometimes.
  • Machines in operator view can now be sorted by a named variable.

Tools

  • Experimental tool run time tracking. See tool usage modes for more information.
  • The client will no longer include tools with blank quantities when submitting an inventory verification, which caused a server error.
  • Fixed the tool replacement checklist editor in the global settings window not working.
  • Text in the tools table notes and stickout columns will now wrap correctly.
  • Fixed tool replacement hover text not displaying on production charts.
  • Tags can now be removed from all selected tools.
  • The tools page now shows the active filter mode at the top.
  • Tool Assemblies has been moved to the dropdown menu of the Tools tab.
  • Each tool now keeps track of the last part it produced. This can be displayed in the tools table by enabling the "Last part" column.

Active tool tracking

  • The tool number a machine is currently using is displayed in NC section of expanded machine cards.
  • Assigned tool not used alerts: when a machine completes several parts without using a tool location that has an assembly assigned in OnTakt, an alert will be created with an option to remove the tool assembly from the process to avoid falsely counting parts against its life.
  • Unassigned tool alerts: when a machine uses a tool that doesn't have an assembly assigned in OnTakt, an alert will be created to make sure all tool life is being counted correctly.

Inventory

  • The inventory verification window now uses pop-up quantity field editing to avoid re-sorting the table while typing a new quantity when the table is set to sort by the quantity column.
  • The lists in expanded inventory item table rows are now displayed as tables.
  • When importing inventory point counts from a CSV file, the "name" column can now also be labelled as item name in the file.
  • Added new maintenance-related inventory item types:
    • Batteries
      • Alkaline
      • Button
      • Rechargeable
      • Other
    • Filters
      • Air
      • Liquid
      • Other (items using the "Durable, Filter" type will be converted to this one during the upgrade)
    • Fluids
      • Coolant
      • Grease
      • Oil
      • Other
    • Seals
      • O-Ring
      • Other
  • The "corners" field in the inventory item editor will now only appear if an "insert" type is selected.
  • Added a button to zero the on-order quantities of multiple selected inventory items.

Maintenance

  • Equipment and subsystems: Use the Equipment tab to create equipment (standalone) or subsystems (tied to a machine). Maintenance items and issues can then be assigned to equipment separately from machines.
  • Downtime categories now have additional metadata that can be used to simplify the downtime entry process. Planned or unplanned maintenance categories will hide the planned checkbox.

Maintenance items

  • Maintenance items can now specify a warning interval. This will cause it to show up in the upcoming maintenance section of the to-do list that far before the due date.
  • Upcoming and due maintenance items are now shown in the equipment page tree view, on machine cards, and on machine production pages.
  • Maintenance items can now store a list of inventory items they consume.
    • Items without a quantity specified will not be consumed, but their presence is required to complete the maintenance item.
  • Added a checkbox to show only overdue maintenance items.
  • The maintenance item table now shows the next due date of each item.
  • Maintenance items can now have an initial entry date that will be used as the start of the first reminder interval. This is useful when creating maintenance items in the middle of their interval. Once an entry is created for an item, the last entry date is automatically used instead.
  • The maintenance item editor is now a wizard-style interface to make sure all tabs are seen before saving.

Maintenance measurements

  • Added a button to download charted maintenance measurements as a CSV file.
  • Maintenance measurement entries now store the unit entered at the time of creation in case the unit in the maintenance item changes later.

Issues

  • "Maintenance issues" are now called just "Issues" and have their own top-level tab.
  • Issues can now refer to the item that was neglected to cause the issue.
  • Improved interface for linking to issues from the downtime editor.
  • The issues table and issue edit dialog now show the name of the user who reported the issue.
  • Issues can now be assigned a priority (low, medium, or high).
  • Issues can now be tagged and filtered by tags.
  • The columns of the issues table can now be customized per-user.
  • There is now a button in the issue actions menu to view a list of downtime blocks linked to an issue.
  • Issue total downtime and value are now recalculated when updating from the server instead of appearing blank.

One-time maintenance issues are now downtime

The one-time maintenance issue feature has been removed, and existing one-time maintenance issues will be merged into the downtime feature during the upgrade:

  • One-time maintenance issues associated with a single downtime block will have their notes added to the notes of the downtime block.
  • One-time maintenance issues associated with a machine but not with any downtime blocks will be converted to downtime on that machine.
  • One-time maintenance issues associated with multiple downtime blocks are not actually one-time issues and will be kept as maintenance issues.
  • One-time maintenance issues that are not associated with any machines or downtime will be kept as maintenance issues.

Reports

  • When emailing scheduled HTML reports, an HTML attachment with the report contents will now be included. When using email clients that do not display inline SVG images (such as the Gmail webmail client), download and open this HTML file in a browser to view the report.
  • Alerts for scheduled report errors now include the name of the scheduled report that encountered the error.
  • The state history report now includes the average utilization of each machine.
  • Fixed margin report overcounting shift durations.
  • The downtime report will no longer fail when downtime blocks do not have a value set.
  • These reports can now show data broken down by shift:
    • Machine Runtime Report
    • Parts Report
    • State History Report
    • Utilization History Report
  • Fixed a server error when sending tool stock reports.
  • Redesigned the Reports page to be easier to use.
    • Scheduled Reports are now on their own page in the Reports dropdown at the top.

To-do list

  • The to-do list shows machines that need attention (prioritized by earn rate), offline machines, missing shift notes, overdue shop-wide maintenance items, and upcoming tool replacements in one place.
  • It can be opened by clicking the clipboard icon at the top left of the screen.

Notifications

  • Fixed message links and actions not showing up in Microsoft Teams.
  • For notification channels with an unknown service, a generic webhook icon is now shown instead of poorly rendered text.
  • More helpful error message when the SMTP hostname is invalid.
  • When an SMTP connection times out, the server now logs an error message instead of just returning HTTP 500.
  • Notification channel dropdowns now have a button to manage the list of notification channels.
  • Fixed notification channel edits not being published to the event bus, so it is no longer necessary to refresh after editing notification channels.
  • When testing a notification channel, the test button will show a loading indicator.

Other improvements

  • When clicking help buttons on a computer without an internet connection, a QR code linking to the help page will now be displayed so users can open it on a mobile phone with network access.
  • Recurring alerts will no longer be moved back to the top of the list. Instead, a "times seen" counter will increment and they will remain wherever they were in the list when they first appeared.
  • Added a button to view the audit log of a single user's actions.
  • New kudos emoji options: 🥳🤪🐦🐧🐸🐙🐝🦋🩵👆🤜🤛👀🌞⭐💡
  • Improved desktop and mobile page layouts of page header buttons.

Other bugs fixed

  • Fixed parts per cycle not being considered when calculating goals.
  • Alerts are now correctly sorted newest-first.
  • Wizard-style interfaces now respect reduced motion.
  • The global settings dialog has been simplified by moving settings relevant to only one page into the page itself.
  • Fixed "OnTakt | OnTakt" being displayed as the page title while loading.
  • Fixed client routing errors resulting in an infinite loading spinner.

Installation notes

  • Any machines that have not yet been upgraded to the new array-style alarm persistence format will have their alarm state cleared from the database during this upgrade. The proxy will immediately re-populate the alarms of online machines.

Breaking changes

  • The offline tool tracking spreadsheet has been removed.
  • The historical machines page dialog has been removed because the machines page now allows viewing multiple days.

Proxy changes

  • Machines can now be configured to be ignored by the default proxy and handled by additional proxy instances instead.
  • The proxy will now negotiate the security mode with OPC-UA servers even when using anonymous login.
  • The proxy now supports authentication via user API key.
  • The proxy will now log "Ignoring machine [ID] because it is not enabled in the config file" only once per machine.
  • Fixed error message formatting in proxy log when TMAC job lookup fails while fetching tool work history.
  • The proxy will now search a wider range of time for TMAC event monitors when reporting alarms. This means the "open in event viewer" link for events will work for more TMAC alarms.

API changes

New features

  • Added GET /api/downtime for querying downtime blocks across all machines.
  • Added GET /api/downtime/<id> for retrieving a single downtime block.
  • Inventory points are now published to the event bus when their item quantities change.

Breaking changes

  • Renamed the Event model type to Alarm to prevent confusion with the (unrelated) event bus
    • Moved /api/events/* to /api/alarms/*
    • Renamed Downtime.event_id to Downtime.alarm_id
    • Renamed Machine.event_notification_grouping to Machine.alarm_notification_grouping
    • Renamed the alarms production chart feature to nc_alarms
    • Renamed the events production chart feature to tmac_alarms
    • Renamed the event query parameter of GET /api/downtime to alarm
    • Renamed the event_report report type to alarm_report
  • Renamed the MaintenanceIssue model type to Issue
    • Moved /api/maintenance/issues/* to /api/issues/*
    • Renamed Downtime.maintenance_issue_id to Downtime.issue_id
    • Renamed the maintenance_issue query parameter of GET /api/downtime to issue
    • Renamed maintenance_issues to issues in the response body of GET /api/shiftNotes/list and the request body of POST /api/shiftNotes/submit.
  • The read-only shift_notes_submitted field of Machine objects has been renamed to last_shift_notes_submission, and it is now an object instead of a timestamp.
  • Inventory endpoints have been moved out of the tools endpoint:
    • Moved /api/tools/inventory/* to /api/inventory/*
    • Moved /api/tools/ordering/* to /api/inventory/ordering/*
  • The items in each inventory point are now stored more efficiently and resiliently.
    • Renamed InventoryPoint.tools to InventoryPoint.items
  • Applying multiple mutually-exclusive filters to GET /api/tools will now result in a 400 error instead of the server silently picking one.
  • POST /api/tools/bulkAddTags has been renamed to POST /api/tools/bulkChangeTags, and its tags request property has been renamed to add. The new remove request property will remove tags.

Deprecations

Some API endpoints used POST to create new objects, but that is now deprecated and will be removed in a future update. Use PUT instead for:

  • /api/machines
  • /api/processes
  • /api/tools/assemblies

Removals

  • Removed POST /api/tools/replacements/sheet. This feature is no longer available.
  • Removed GET /api/maintenance/issues/names
  • Removed the issue_type field from the MaintenanceIssue type because one-time maintenance issues no longer exist. Use the downtime feature instead.
  • Removed the inventory_points property from the data returned by GET /api/tools/<id>/replace. A new default_inventory_point_id property has been added instead.
  • The experimental percent_life and percent_warn fields of Tool objects are now omitted from API responses.API endpoints deprecated in a previous release have been removed:
  • Removed POST /api/tools/inventory/<ipt_id>/receiveOrder. Use POST /api/tools/ordering/items/<item_id>/receiveOrder instead.
  • Removed GET /api/machines/<id>/shiftNotes/<date>. Use GET /api/shiftNotes/list?date=<date>&machine_id=<machine_id> instead.
  • Removed POST /api/machines/<id>/shiftNotes/<date>. Use POST /api/shiftNotes/submit?date=<date>&machine_id=<machine_id> instead.

Server 4.10.24, Client 2.1.23, Proxy 2.7.10

1/15/2024

New features

  • Machines page table view: click the table icon in the toolbar to switch to a tabular machine view with customizable columns.
  • Tool replacement images: users can now upload a photo when replacing a tool.
  • Billable excess capacity report: machines can now specify a target utilization and earning rate to use for this report.
  • Auto-ending downtime will now calculate its value when it ends unless a value has already been specified.
  • The tool replacement history table columns can now be customized.
  • Added a global option to send a notification when the life of any tool changes.
  • Machine states are no longer case-sensitive and wildcards are supported. Learn more
  • New installations will now ship with machine state definitions for Siemens OPC-UA and XMC machines, and the TOOL/MDI machine state will be in a new "Setup" state definition.
  • There is now an "Add all" button when assigning shifts to machines in the shift editor.
  • Dialogs are now better adjusted for auditor users: the OK/Cancel buttons are hidden and a close button is always present.
  • Added a button to edit the list of inventory points from the inventory point dropdown in the machine editor.
  • Improved production chart rendering performance when there are many parts.

Work orders

  • Set the work order of a machine from the machine editor or under the production chart to automatically assign it to new parts. You can also choose whether to keep the work order set after the machine changes to a different process.
  • Set the work order of an individual part from the part editor.
  • Set the work order of many parts at once by selecting them on the chart and choosing "Set work order" from the right click menu.
  • Parts with a new work order will be labelled on production charts.

Bugs fixed

  • Leaving a required numeric field blank will now set it to zero instead of causing a server error.
  • Entering order quantities in the inventory item ordering table now uses popup field editing to avoid a situation where the displayed value got out of sync with the stored value during a table re-sort.
  • State times in the machine runtime report will now be limited to the time range selected.
  • Clicking on days in the machine overview window now navigates to the production chart for that day correctly.
  • The inventory verification window now adjusts to fit on small screens.
  • Fixed error during database downgrade when there is pending downtime.
  • Fixed the inventory point dropdown menu in the machine editor.
  • Fixed inventory items being added to the downtime category list when they are modified on the server instead of modified downtime categories.
  • Fixed an error when updating downtime on production charts.
  • The server will no longer attempt to send event bus messages to WebSocket clients that have experienced a network error.
  • The proxy will now restart itself when a single NC update has taken one minute. This should better handle the case where cnc_allclibhndl3 hangs indefinitely.

Other changes

  • The object trash is now accessible from the user menu instead of the global settings window.
  • The Favorite and Pin buttons in the tools table have been moved from the Name column to the Actions column for better mobile usability and desktop appearance.
  • Machines will no longer be considered "stuck" is they have recently switched states even if they have not produced a part.
  • Now using system tooltips on repeated elements for better rendering performance of long lists.

API changes

  • GET /api/machines/<id>/chart now supports requesting specific response fields via the feature query parameter for better performance.
  • GET /api/parts now supports filtering parts by work order via the work_order query parameter.

Server 4.10.21, Client 2.1.20, Proxy 2.7.8

11/28/2023

Production charting

New features

  • The machines page now allows charting an arbitrary number of days (ending with the current day) instead of just the current day or week.
  • Production pages now allow charting any range of days instead of just a day or week at a time.
  • When choosing dates to chart on the production page, there is now an indicator on days with parts.
  • When charting multiple days, there are now vertical separators between days.
  • Machine action buttons are now shown on the production page in addition to expanded machine cards.
  • Manually creating parts will default to the current time on the last day of the selected time window rather than the end of the last selected day.

Bugs fixed

  • Fixed incorrect goal rendering on production parts with cross-day shifts.
  • Fixed incorrect cross-day shift rendering on production charts.
  • Double-clicking a day in the date range selection calendar will select only that day.
  • Ellipsize shift labels instead of overlapping them when there are too many to fit across the width of the production chart.
  • Fixed tool replacements not showing up correctly in the table under the production chart.
  • Fixed incorrect goal calculations when charting time spans that include days with and without shifts.
  • Downtime that started on a previous day and has not yet ended is now shown as current downtime on machine cards.

Tool management

New features

  • Item-oriented tool receiving: click "Receive into inventory points" in an inventory item's menu to distribute the received quantity into inventory points, rather than selecting multiple items to receive into a single inventory point.
  • The inventory point manager is now a dialog window, leaving more screen space for the inventory items table.
  • Tool post-replacement checklists: items must be checked off after replacing a tool. These items can be defined in global settings and overridden for individual tools.
  • When filtering the tools table by machine, switching to the tool assemblies table will now automatically filter by that machine's current process.
  • Added an inventory point merge button.

Bugs fixed

  • Fixed server error preventing importing tools from a spreadsheet.
  • Fixed the tool life tab of the part editor not fitting on shorter screens.
  • Fixed "tools using this item" inventory item link not showing all tools due to the "only show tools that are past their warning threshold" filter applying by default.

Other changes

  • Added support for reading macro variables from Haas machines without MTConnect using Q-Commands.
  • Added a global setting to disable the "production stopped" machine status.
  • Ignoring zero part counts is now an opt-in setting on each machine instead of automatically affecting all FOCAS machines.
  • Removed useless machine filter from programs table on process pages.
  • The log message "Skipped field '...' when applying dict to <...> because the current user is not allowed to write to it" will no longer appear for fields that no users are allowed to modify.

API changes

  • Added an optional month query parameter to /overview endpoints.
  • Deprecated POST /api/tools/inventory/<inventory_point_id>/receiveOrder. Use the new POST /api/tools/ordering/items/<item_id>/receiveOrder endpoint instead.

Server 4.10.18, Client 2.1.16, Proxy 2.7.7

10/17/2023

Tools

  • Tool assemblies can be marked as shared.
    • When the machine in their assigned process switches to a different process, these tool assemblies will automatically be moved to the newly active process.
    • Shared tool assemblies are shown in the tool assemblies table for all processes on their machine unless Show shared tool assemblies is switched off above the table.
  • Tools and assemblies now have an image field for a photo or diagram to make setup and calibration documentation easier.
    • Click the image cell to upload an image or view/update the existing image.
    • The image column is hidden by default in the tools table. To show it, click the Columns button and drag it into the Selected area.
  • The image column is always shown in the tool assemblies table.
  • The inventory item selector in the tool editor is now searchable.
  • In order mode, inventory items are now displayed in the table as long as their suggested quantity is greater than zero.
    • Entering a quantity of zero will no longer remove an item from the table.
    • Clearing the quantity field will display the suggested quantity.
  • Tools can now have a replacement message that is displayed to the user after replacing the tool.
  • Added a global setting to automatically increase the minimum on-hand quantities of inventory items to ensure there is at least one per machine using tools based on that item.
  • Work report improvements:
    • The tool work report can now be run without including tool replacements. If the tool replacements chart is not enabled, the tool work chart is aligned to number of cuts instead of time.
    • Added total parts and work to the tool work report.
    • Added TMAC tool work limits to tool work report charts.
  • Added a tool alarm report.
  • Improved the tool editor's assembly selection dropdown:
    • The location and process name of each assembly are now displayed.
    • The list is searchable by assembly name, process name, or assembly location.

Machines

  • The proxy now looks up and reports the monitor ID for TMAC alarms. This means that TMAC alarms reported after installing this version will link to the specific recording from the event editor.
  • Downtime categories can now be customized from by clicking "Downtime categories" in the machines section of the global settings window or the edit button next to the category dropdown in the downtime editor.
  • Clicking the machine name at the top of a production page now shows a list of all machines with their current status, and clicking on a machine in the list will switch to its production page without resetting the date selection.
  • Reworked parts are now listed next to scrapped parts under the production chart.
  • When opening parts from the production chart, the part editor will have a States tab that shows the state history of the machine between the previous part and the selected part. This is not available for the first part of each day.
  • Added a per-machine setting to send a notification when the machine finishes a cycle with at least one part.
  • Machines page filters are now persisted between page loads.
  • Added custom shift notes fields.
    • Set these up in Global settings > Machines > Custom shift notes fields.
    • Values entered for custom fields will be included in shift notes submission notifications.

Processes

  • The processes table now has a menu for each row that allows manipulating the process without opening its dedicated page first.
  • This same menu is also available as a toolbar on each process's page.
  • The changeover button in the process menu allows running a changeover from any other process to the selected process.
  • Processes can now be duplicated.

General improvements

  • Added OPC-UA support for SINUMERIK 840D sl controls.
  • Added start and end times to the "downtime blocks with notes" table in the downtime report.
  • Downtime with notes in the downtime report now have edit buttons that open the downtime editor for that block in the client.
  • Added a tool number column to the tool replacements table on the production page.
  • Added confirmations when closing the shift notes entry wizard or switching between days.
  • Downtime report improvements:
    • Pie chart legends are now tables.
    • Legend entries now include the total value lost.
    • Renamed "Reason" chart to "Planned".
    • Improved layout for printing in portrait mode.
  • Clicking the tool assembly name in the TMAC alarms table will now open the tool assembly editor.
  • The user who replaced a tool is now displayed in the tool replacement history table and in the tool replacement editor.
  • Added a button to remove the value for a variable from the part editor.
  • Added maintenance issue column to downtime table on production page.
  • If a process to filter is selected on the tools page, it will now carry over when switching to the tool assemblies page.
  • The program and process editors are now both linked from the overview tab of the machine editor.
  • The interface language will now change immediately when the browser's language changes without requiring a page refresh.
  • The license name is now pre-filled in the feedback form linked from the user menu.
  • Individual users can now turn on developer mode for themselves from the API keys section of the user settings window. This will display object IDs in tables and editors to make it easier to manipulate objects with the OnTakt API.
  • Italian translation has been completed.
  • Added the PUT /api/alerts API endpoint for showing (and optionally messaging) custom alerts.
  • Added the GET /api/maintenance/issues/:id API endpoint for retrieving a single maintenance issue.

Bugs fixed

  • Fixed TMAC alarms falsely showing zero savings when reporting events in a notification.
  • Fixed TMAC tool and section not showing up in the TMAC alarms table on production pages.
  • Auto-ended downtime blocks will now update in the client without requiring a manual refresh.
  • The name, notes, and suppliers columns of the inventory item table now wrap when the text is too long.
  • The client will no longer allow submitting maintenance issues without a name.
  • Fixed the reports page not loading report parameters from the URL on page load, which prevented the "tool work" shortcut menu item from working correctly.
  • Fixed scheduled reports not updating the last run date when running as a background task.
  • Use the correct external URL for links in reports (requires OnTakt Daemon 1.0.5)
  • Fixed goals not charting for past days.
  • Fixed machine tag listings only including the first letter of each tag.
  • Fixed a bug in the input fields for relative time parameters when scheduling a report where negative offsets were not accessible with the number field spin buttons.
  • Fixed a bug where the description of a downtime category could not be set empty.
  • Fixed a bug where the associated machine column of the shift manager was not wrapping machines onto multiple lines.
  • Accessing a report generation URL (for example, by clicking "Run report" in a scheduled report notification), will now redirect to the login page instead of showing an authentication error if there is no active login session.
  • Fixed the duplicate tool assembly dialog freezing after clicking OK.

Server 4.10.5, Client 2.1.6, Proxy 2.7.4

8/16/2023

New features

Machines

  • Machine states are now customizable. Learn more
  • Multiple shifts can now be defined and assigned to machines. Learn more
  • New report: utilization history.
  • Users can now set their own idle and feed hold time limits for color fading.
  • Downtime start/end times can now be set manually in the downtime editor.
  • Server messages are now translated according to the Accept-Language header.
  • Selecting tags in the machines page filter popup will show aggregated data from machines matching the filter.
  • Utilization is now shown when expanding machine cards.
  • Clicking programs table rows on the production page will now open the program editor.
  • Machine feed rate override is now charted as a line instead of a gradient fill.
  • Added a "false alarm" flag to events. The events report will call these out separately.
  • Alarms can now be linked to downtime. The events report will show the value of an event from the value of its associated downtime.
  • Programs can now be created manually before they are reported by a machine.
  • When opening the downtime editor for a block that was previously set to auto-end and has already auto-ended, the downtime block will no longer reset to waiting for its end condition.
  • Overview charts can now be exported as CSV by clicking the download button in the window header.

Tools

  • When replacing tools that last replaced in test mode, there is now a confirmation to continue the test, and if confirmed, the tool can be indexed indefinitely.
  • Added an "Import" button to inventory point menus for importing inventory counts from a spreadsheet file.
  • The tables in the inventory verification window now show a part number column and allow searching by part number in addition to name.
  • Tool usage days are now counted based on days with shifts scheduled instead of always Monday through Friday when "weekdays" is selected as the day counting type.

Inventory

  • The header row of the inventory items table now stays fixed at the top when scrolling.
  • When in order or receive mode, the selection sidebar for inventory items will shrink the rest of the page instead of covering the table.
  • When in receive mode, entering a quantity greater than zero will select the row.
  • Inventory page table columns can now be customized. Customizations are saved per-user and will apply on any computer a user logs into. Each mode (display, order, receive) has its own set of columns to customize.
  • The tool number column of the inventory verification window is now sortable.

Reports

  • A notification channel can now be an email address instead of a webhook URL. This requires configuring an email server in the global notification settings to work.
  • Added a "Work report" button to tool menus that links to the reports page with the tool work report and tool already selected.
  • Added optional tool and section parameters to the tool work report.
  • The tool work report charts are now separated by time increment.
  • The "Copy" button on the reports page now copies a link to the page with the report parameters filled in instead of copying a link to the report output.
  • Added a machine utilization report, which allows exporting custom state history charts.
  • Added tool work report, charting work done by tools in TMAC alongside their replacement history.
  • The report type list now has a search box at the top.

Interface cleanup

  • Date inputs now support typing in dates directly.
  • Date range start and end inputs have been replaced with a unified date range input that allows selecting ranges on the calendar or typing in the range directly.
  • Added per-user settings to hide display variables from machine cards and stop alarm flashing after a set interval.
  • The shift bars at the top of production charts are now hidden by default, but can be enabled from the layers menu.
  • Fixed the total number of corners not showing up in the tool usage column of the tools table and removed the number of corners remaining.
  • The alerts pane can now be closed by clicking outside of it.
  • New application icon.

Bugs fixed

  • Fixed tools without an inventory item being excluded from the tools column of the tool assemblies table, which falsely showed "Empty" without an expand button when there were no other tools in the assembly.
  • Fixed manual date entry not working when the browser language is set to something other than English.
  • Fixed process changeover alert title translations.
  • Translated and internationalized reports.
  • Removed the system check report as it was superseded in usefulness by the alert system years ago.
  • The "last NC/TMAC contact" times will now only update when the proxy communicated with the machine and not when the proxy is just reporting a communication error.
  • Spanish and German translations are complete.
  • Fixed HTTP errors being returned as internal server errors with a support file.
  • Delete button icons are now consistent.
  • Fixed translation formatting error in proxy alert title.
  • Fixed XMC integration.
  • Fixed reports failing to generate when only one machine is selected.
  • Fixed audit log failing to record updates of objects with timestamp fields.
  • Fixed machine custom alarms not matching correctly.
  • Fixed kudos report failing to generate when downtime received kudos in the selected time window.
  • Fixed kudos report failing to render emoji correctly.
  • Report errors no longer appear as JSON (when report is requested with GET).
  • Demo machine feed rate override values are now more realistic.
  • Fixed machine cards failing to indicate current downtime for downtime that has no end time set.
  • Tools table filter popup card will now close automatically when clicking outside of it.
  • Fixed single-section tool notes showing line breaks as "<br>".
  • Fixed "tool created successfully" message not being formatted correctly.
  • Event bus deletion messages can now have an array of deleted object IDs instead of just one, which should improve performance significantly when deleting hundreds or thousands parts in bulk.
  • The audit log no longer stores all properties and instead stores only changed properties. This will reduce the size of the database significantly, so during the upgrade, unchanged properties will be removed from old audit log entries. This may take a few minutes depending on the size of the audit log table
  • Fixed an "error 404" popup when opening the tool editor to create a new tool.

Server 4.10.1, Client 2.1.1, Proxy 2.7.0

6/27/2023

The OnTakt frontend/client application has been completely overhauled with a new interface. The layout and organization is the same as before, but the new framework behind the interface should offer increased performance and browser compatibility, with greater flexibility for future improvements.

The interface has also been prepared for translation, with several languages coming soon.

New features

  • More NC and TMAC alarm information is now recorded, including the alarm code and other machine-specific attributes.
  • The alerts pane can now be filtered by alert severity.
  • The machine card expanded details section has been redesigned to organize the information into NC and TMAC sections.
  • OEE and tool history windows now scroll infinitely instead of needing to click "load more" each time.
  • All users can now create their own API keys that provide the same level of access as their account.
    • A new API key should be created for each application that will use the OnTakt API. This allows revoking an API key without disrupting other applications' usage of the OnTakt API.
    • The global API token is no longer accessible, but it will still work for administrator-level access if already in use.
  • NC and TMAC alarm indicators on machine cards are now icons instead of red squares for clarity.
  • Importing tools with the spreadsheet template will now create inventory items if the "Durable" column is filled in.
  • When importing tools with the spreadsheet template, assemblies will now be named after the first tool row with a given location.
  • Added a setting that allows users of the "shop" access level to replace tools into test mode.
  • The machine runtime report now also includes a pie chart showing the time spent in each execution state.
  • Tools table column customizations are now stored per-user instead of per-computer, so custom layouts will follow each user no matter what computer they log in from, and they will not affect other users.
  • The inventory item of the tool history window now shows the inventory item selected during the previous replacement/rebuild, so for each row it is the inventory item in use during that replacement's lifetime.
  • Machine cards now change color when the machine is inside a downtime block.
  • The per-program usage of a tool can now be viewed from the tool editor before replacing the tool.
  • The margin and part report default filenames now include the selected start and end dates.
  • Support for reading the feed rate override from Okuma milling machines via MTConnect.
  • The columns of the tools table can now be reordered.
  • The last part count a machine reported is now shown in the variables tab of the machine editor.
  • Allow selecting which tools table columns to display.
  • Clicking on an inventory point now opens the inventory verification window. Inventory points can be renamed from the actions menu instead.
  • Added close button to top right of part and event editor windows.
  • The number of parts in the chart selection area is now shown in the context menu.
  • The state history page now has an option to switch to week view instead of a single day.
  • Tool type icons have been redesigned for improved clarity.
  • OnTakt will now prompt to refresh the page after midnight to maintain performance and data consistency. If TV mode is active, the page will refresh without prompting.
  • There is now a button in the user menu to send feedback or request support.
  • Help buttons are now native browser links so the URL can be previewed by hovering.

Bugs fixed

  • Fixed the part editor not saving changes when clicking OK.
  • Fixed the part editor previous/next part buttons only working once after opening from a chart.
  • Fixed tool replacements not showing up in the life chart of the tool history window after being edited.
  • FANUC FOCAS machines that report a part count of zero will now be ignored until they report a different part count to avoid creating ghost parts when FOCAS falsely reports the part count as zero.
  • Part counts in production chart context menu actions are now formatted correctly.
  • When reading FOCAS part counters, a read of zero will trigger a fallback read of a different variable to double-check.
  • Additional checks when getting FOCAS alarms to avoid reading garbage characters.
  • Partially successful FOCAS machine updates will now be sent to the server, which will report errors reading variables, feed rate override, emergency stop state, and alarms to the user as alerts instead of skipping the update.
  • Shifts that cross midnight (start time is later in the day than end time) will no longer cause part goals to be negative, charts to have goals that decrease throughout the day, or machines to falsely show as "production stopped".
  • Typing to search the "running processes" field of the inventory ordering form no longer fails to filter the list.
  • Part and event report notification messages are now formatted correctly.
  • The downtime report is no longer overly precise when displaying durations.
  • Fixed not being able to click into fields of the user editor when opened from the options window.
  • State history charts no longer fail to render immediately in Safari.
  • Fixed some external links not working.
  • Fixed release notes dialog sizing on mobile devices.
  • Improved machines and tools page header button layout on mobile devices.
  • Detect when report output pop-ups are blocked by Safari and show an error message.
  • Display variables for machines using FANUC FOCAS are now requested even when they are not used otherwise.
  • Rename tool "location" to "Tool #" and warn when it is not set on a tool assembly.
  • Machine card preview charts now wait to download and render chart data until they are scrolled into view to improve performance and reduce memory usage for instances with many machines.
  • Fixed inventory table not sorting by order and receive quantities.
  • Fixed tools table and processes table filter dropdowns showing the selected item's ID instead of its name when the page loads with a value already selected.
  • Fixed machine card production chart previews growing outside their containers as new parts are rendered.
  • Machine card production chart previews are now re-rendered when the available width for the chart changes due to resizing the window.
  • Fixed tools table not sorting by type.
  • Fixed production page downtime table not sorting by duration.
  • Fixed awkward machine editor scrolling on small viewports.
  • Fixed feed rate always rendering as solid black on production charts.
  • TV mode will now autoplay correctly when the controls are hidden.
  • Inventory verification window:
    • Fixed the location column of the "present tools" table always being blank.
    • Fixed the "other tools" table not showing any tools.
    • Fixed "remove from inventory point" button not working.
  • Fixed file download spinners stopping before the file has been completely downloaded.
  • Fixed inventory verification window quantities resetting when focus leaves a quantity input field.
  • Fixed tool notes and stickout display in the tools table.
  • Limit height of machine card production chart thumbnails.
  • Fixed tools table not sorting by parts remaining when sorting by the usage column.
  • Fixed "favorite machine" toggle button tooltip text.
  • Fixed server error when deleting machines.
  • Fixed server error when restoring database.
  • Variables reported by the machine with excessive floating point precision will now be rounded when used as a display variable.
  • Machine utilization will no longer be incorrectly reported as less than 0% or greater than 100%.
  • Machine state history charts should no longer sometime show incorrect times in tooltips.
  • The "analyze historical run times" button is no longer shown in the process editor when creating a new process.

API changes

  • The alarm format in machine state updates has changed from an object to an array of alarm objects. For more information, see the machine state format specification. This is not a breaking change yet because the server will still accept the old format.
  • The new API key system requires the use of Authorization: Bearer <API_KEY> instead of X-Auth-Token: <API_TOKEN>.
  • Removed date and timeRange query parameters (deprecated in 4.9.1) from the following endpoints:
    • GET /api/machines/:id/goals
    • GET /api/machines/:id/chart
    • GET /api/processes/:id/chart
    • GET /api/programs/:id/chart
  • Removed the day query parameter (deprecated in 4.9.1) from GET /api/parts.
  • Removed the shift property (deprecated in 4.9.1) from the object returned by /chart endpoints.

Server 4.9.4, Proxy 2.6.7

5/01/2023

  • Added machine model for DMG MORI via MTConnect.
  • Added machine system for connecting to XMC.
  • Paths can now be specified in NC URLs when using MTConnect. This is only required for DMG MORI machines at this time.
  • The system check report is no longer incorrectly listed as a spreadsheet.

Server 4.9.3, Client 1.6.4, Proxy 2.6.6

4/26/2023

New features

  • Combined tool & assembly creator makes it easier to get started entering tool data.
  • The state history chart for the selected time window is now shown under production charts.
  • Tool assembly tables now show the tool types each assembly contains for faster identification.
  • There is now a warning icon on a machine's card in place of a process if there is no active process.
  • Machine states are now recorded. This can be viewed from the States page.
  • Downtime can now be set to end automatically when the machine either produces a part or becomes active.
  • Users can now choose the page they see by default when opening OnTakt.
  • Tool replacements can now be only one of: broken, scheduled, or preemptive.
  • Tool changeovers can now be performed in advance by clicking the Changeover button on a process in the processes table.
  • Programs that are not in a process (unassigned programs) are now displayed alongside processes instead of on their own page.
  • Tools can now be filtered by warning state, so only tools that are past their warning life threshold are shown. This is enabled by default to reduce page load time, but it can be disabled to show all tools from the filter menu.
  • The inventory page is now a top-level navigation item.
  • The tool assemblies page has been removed from the main navigation and is now accessible from the tools page.
  • Machine states can now be mapped for customization or compatibility.
  • The notification channel selection radio buttons have been replaced with a searchable drop-down.
  • Added downtime tracking.
  • Added tool replacement test mode.
  • Added "scheduled" as a tool replacement reason and changed "damage types" to "tool condition".
  • When manually creating parts, it is now possible to change the program and timestamp.
  • Inventory items can now have a minimum on-hand quantity in addition to the existing safety stock days.
    • Added "minimum on-hand quantity" and "safety stock" columns to inventory item table in "order" mode.
    • Added "brand" and "corners" columns to inventory item table in all modes.
  • Tables under production charts will no longer be shown if they are empty.
  • Maintenance issues now appear when entering shift notes.
  • Audit logs and the trash are now filtered by date.
  • The parts report can now be broken up into a chosen interval, and it is now returned as a Microsoft Excel spreadsheet.
  • Improved chart context menu layout.
  • Tool assemblies can now be linked to TMAC alarms. This will happen automatically if there is an assembly with the location indicated in the TMAC alarm, and the relevant tool can be changed for any TMAC alarm in the event editor.
  • Tool assemblies linked to TMAC alarms will appear in the alarm's table row under production charts.
  • When rebuilding a durable tool, if the chosen substitute tool is already in an assembly, it will now offer an option to move the tool from that assembly automatically.
  • There is now a "tool replacement minimum usage" setting. When replacing tools with usage below this threshold, either flag selection or notes entry will be required.
  • Tool life expectancy alerts now have a button to open the editor for the affected tool.
  • There are now more specific "broken" tool conditions. When replacing a broken tool, one of these options may be chosen, otherwise note entry will be required.
  • There is now a per-machine setting that will send changeover messages to the machine's notification channel.
  • The proxy will now report errors it encounters while communicating with TMAC to the server and they will appear in the alerts pane alongside NC communication alerts.
  • Tool assemblies can now be created from inside the tool editor.
  • Tool assemblies can now be created from the process page tool assemblies table.
  • Release notes are now pulled from the knowledge base for only the current software versions.
  • Editing tool replacement part counts and day counts is now allowed.
  • During durable tool rebuild, the substitute tool (if selected) is now recorded and displayed in the tool's history.
  • Part and day counts in the tool history window are now formatted with thousands separators according to the browser's language settings.
  • TMAC event details are now displayed in a simpler format.
  • Process tool replacement history charts now load one year of data at a time to reduce load time and browser memory usage.
  • Replacements of tools that were replaced while they were not assigned to a process now show an indicator in the machine tool replacements table under production charts explaining why they appear on all machines.

Bugs fixed

  • Fixed the daily goal always being zero for days where a machine has not yet finished a part.
  • Inventory items are now correctly removed from the suggested order list when they are no longer needed after deselecting processes from the run list.
  • Fixed an error that occurred when creating a missing variable alert for a machine that does not have a process loaded, resulting in no alert shown.
  • Fixed date inputs in variable chart and shift notes.
  • Fixed utilization calculating incorrectly when the first state of the day is not an active state.
  • Fixed date/time input for manual part creation and maintenance entries.
  • Fixed machine goals always charting as zero.
  • The utilization calculation displayed above state history charts will now update in real time as the chart updates.
  • Only time in the past is considered when calculating utilization, so it will no longer be lower earlier in the day.
  • Better context menu event handling for charts to improve the states page on mobile devices.
  • The time range of state history charts is now defined by the server's time zone.
  • State history charts now include the first and last state in the selected time range even if extends outside the range.
  • The order of machines will no longer update to reflect changes from another client until the page is refreshed.
  • Production charts will now always clip to the selected time window.
  • Fixed production chart date navigation moving one day at a time when set to week mode.
  • Fixed server error when creating a tool without a maintenance status specified.
  • Fixed tool creation window not loading correctly.
  • Fixed server error when reporting downtime without specifying a category.
  • Fixed server error when completing a maintenance reminder.
  • Fixed server error when an inventory point contains an invalid (non-integral) quantity of a tool.
  • The x-axes of variable charts are now aligned even when a part does not have a value for the given variable.
  • Fixed the selection in the machine drop-down of the maintenance item creator jumping to the top every time new machine data arrives.
  • Tool usage counts are now formatted correctly (with thousands separators) in the usage column of the tools table.
  • Preemptive tool replacements are no longer counted in average tool life.
  • Fixed some help buttons linking to "#undefined" on the knowledge base pages.
  • Tables in report output had invisible text in dark mode.
  • Fix error in TMAC alert handling.
  • Fixed server error when loading shift notes.
  • Variable charts will no longer show incorrect values in part tooltips when parts are added to the chart.
  • TMAC alarm lines on charts will no longer appear as the wrong color or with the wrong tooltip after navigating between production days.
  • Suggested process alerts will no longer suggest processes from machines other than the program's own.
  • Variable charts now include parts that don't have all the specified variables, but do have at least one.
  • The displayed part count of a tool replacement is no longer cleared when saving the tool replacement. No part count data was permanently lost, but it would not be shown until the page was refreshed.
  • NC alarm names will now have leading and trailing spaces removed before being saved to the database. Previous alarms already in the database will be cleaned up during the update.

Reports

  • Added a downtime report that analyzes downtime by cause.
  • The reports page now shows a brief description of each report and an icon indicating whether it returns a webpage or a spreadsheet.
  • Reports that return webpages are now opened in new windows to allow side-by-side viewing.
  • The margin (formerly profit) report now has a "total margin" column.
  • The margin report can now be broken into a chosen interval.
  • The tool usage report now includes tool cost.
  • The parts report no longer falsely reports 0 parts for some days.
  • Machine runtime reports no longer have blanks for missing process IDs.
  • Machine runtime reports now calculate total time correctly.

API changes

  • Process.last_cycle is now an object with finished and program_id fields instead of an array of the part's timestamp, the machine's ID, and the machine's name. This is not considered a breaking change because the last_value field for processes was not documented, but it is now in the API models documentation.
  • Added start and end parameters to the following endpoints, deprecating their date and timeRange parameters:
    • GET /api/machines/:id/chart
    • GET /api/machines/:id/goals
    • GET /api/processes/:id/chart
    • GET /api/programs/:id/chart
  • If the start and end timestamps supplied to GET /api/machines/:id/chart extend beyond a single day, the returned shift.start and shift.end values will be the start of the shift on the first day and the end of the shift on the last day. The shift object returned by this endpoint is now deprecated for this reason.
  • The broken, preemptive, and scheduled fields of tool replacements are now stored as one field, where 1 means broken, 2 means preemptive, and 3 means scheduled.
  • The GET /api/tools endpoint now has a warn_life query parameter that only returns tools past their warning life threshold.
  • The CSV export report has been removed. All the data it could export is accessible via the API, and database exports can be downloaded for offline processing instead.
  • The "new process is not loaded on the machine" error returned by POST /api/processes/:from/changeover/:to now has a dedicated response status of HTTP 412.
  • POST /api/processes/:from/changeover/:to now has a planned query parameter that bypasses the 412 return code.
  • Added start and end parameters to the following endpoints to allow filtering results by time:
    • GET /api/maintenance/issues
    • GET /api/auditLog
    • GET /api/auditLog/user/:user_id
    • GET /api/auditLog/action/:action
    • GET /api/auditLog/:object_type/:object_id
    • GET /api/auditLog/trash
  • Fixed typo of machine filter parameter name in documentation of GET /api/maintenance/issues.
  • Maintenance issue objects now include downtime information.
  • The program_filename field of POST /api/parts/create has been changed to program_id in both name and behavior.
  • Fixed variable parameters on GET /api/parts behaving like var[NAME] parameters (all must be present instead of any must be present).
  • Added optional start and end parameters to GET /api/tools/replacements/process/:id to narrow results by time

Server 4.8.7, Client 1.5.14

2/22/2023

New features

  • Maintenance items can now be scheduled by machine runtime in addition to normal clock time.
  • When selecting a substitute tool in the durable tool replace wizard, there is now an option to show only tools that are "ready for use".
  • There is now a button to edit processes directly from the processes page without first opening a process.
  • The program editor can now be opened directly from machine cards by clicking the program name.
  • When undoing audit log entries, the undo button now indicates progress and success states.
  • Process cycle time can now be entered in different time units.

Bugs fixed

  • Tool replacements will no longer fail to render in the shift notes wizard.
  • Some mapped variables were failing to save when parts were produced. This should be fixed now.
  • Fixed machine goal alerts not firing.
  • Help links have been updated to point to the new knowledge base page locations.
  • Fixed a rare divide-by-zero error when calculating a machine's status color.
  • Single-machine processes (the fact that processes can only contain programs from one machine) is now enforced by the database to prevent assignment errors by the server.
  • Fixed machine deletion messages not getting sent to the proxy, causing the proxy to continue attempting to communicate with it and possibly fill the log with errors.
  • Audit logs and the trash list will now load much faster.

Breaking changes

  • Removed API endpoint POST /api/processes/updateCycleTimes. Use PATCH /api/processes/:id for each process individually instead

Server 4.8.6, Proxy 2.6.5

2/08/2023

New features

  • There is now an export button in the variable chart window that will download the displayed data as a CSV file for offline analysis.
  • Tool replacements are now listed in a table under production charts.
  • Support for Mazak MAZATROL controls via MTConnect has been added.
  • A new "machine runtime" report has been added that breaks down the total time the machine spent running during a selected timeframe by process.
  • Tools now have a "replacement duration" field to store the amount of time it should take to perform a tool replacement. This field is not yet used by OnTakt internally, but it is available for data entry.
  • Tools now have an "offset number" field to store the offset of the tool's data in the machine control's memory. This field is also not used by OnTakt internally at this time.
  • The tool torque specification field now allows a choice between metric (N⋅m) and imperial (lb⋅ft) units. This is for reference only so conversion is not performed automatically.
  • Tools without a life set have their usage column highlighted green in the tools table to indicate that they should be checked for wear more often until their first replacement.
  • Use searchable dropdowns instead of system dropdowns where possible. This makes finding items in the list faster and allows them to appear in single-window in-browser screen captures.
  • Process run times in machine run report have been changed from running total to individual.
  • For each machine, you can now specify the maximum length of time TMAC monitoring can be disabled before a warning notification is sent to its notification channel. This message will have a link to the TMAC web interface.
  • You can now select a display variable for a process to show its value on the machine's color chip while the process is loaded.
  • There are now "select all" and "deselect all" buttons in the tool changeover verification window.
  • Machine variables are now always sent with machine objects, so the variables display in the machine editor can now update in real time instead of requiring a refresh button click.
  • The tool assembly editor now has buttons to add or create tools directly.
  • If an "Open in TMAC" button is disabled in the event editor, a message will now explain why.
  • If someone else edits the notes of a part or event you are editing, it will prompt you to accept their changes or keep your own. If the part or event is deleted, the editor will close and explain why.
  • Tools can now be bulk-imported into a process by downloading a spreadsheet template from the process's details page under the tool assemblies table.
  • Added a button to duplicate maintenance items.
  • The time zone list in the options window is now searchable.
  • Added an option to filter inventory items by active machine when in receive mode.
  • Added a button to load more audit log entries at the bottom of the list.
  • Added help text to inventory item order and receive tabs.
  • Improved performance of part, event, and tool replacement queries and charting.
  • The processes table can now be filtered by machine.
  • The total number of tools is now displayed on the tools page filter button.
  • The total number of tool assemblies is now displayed on the tool assemblies page filter button.
  • If a substitute tool is specified when replacing a durable tool, the substitute tool's status is automatically set to "in service". The "received from rebuild" status is no longer available for selection in the web interface, but tools that already have this status will continue to display it, and tools can still be assigned this status via the API.
  • When duplicating an assembly, new names can now be specified for tools set to be duplicated.
  • Feed rate override is available as a layer on production charts. Turn on the "Feed rate" switch under a chart to see it.
  • Feed rate override can now be read from machines with FANUC controls.
  • In the variable charting window, only variables that exist on parts produced in the selected time range are listed.
  • Tools now have a number of "slots". This determines how many inventory items to consume during a replacement/rebuild of the tool, is displayed next to the item name in the tool replacement/rebuild wizard, and will multiply order quantities.
  • The part count variable can now again be set for a machine, allowing parts from programs not in a process to count parts. If the active process on a machine has a part count variable of its own, it will override the machine's setting as long as the process is loaded.
  • Added a toggle in the part variable charting window to switch the x-axis of the charts from time to number of parts for even spacing.
  • Added a goal calculator to the process editor that will allow setting the cycle time by entering the number of parts that should be produced during each shift.
  • A message will be sent to a machine's notification channel when it has not produced a part on schedule. This can be disabled in each machine's notification settings.
  • Line breaks in tool notes are now displayed in the tools table
  • Production chart pages now include a table breaking down the number of parts produced by program and part flags.
  • Added Previous and Next buttons to the part editor that navigate between parts in the order they appear on the chart.
  • Report generation errors now return a support file.
  • Experimental support for adding 3D printers run by OctoPrint as machines. Part counting may be unreliable at this time.
  • Haas macro variables are now numbered consistently with the control's numbering scheme.
  • Requests for data from machines are now offset by random sub-second times in order to reduce network load caused by all machines sending data at the same time.
  • The part editor's tool life table now also displays the usage as a progress bar.
  • Date/time display formatting uses the browser's language setting
  • Variables recorded on a part can now be edited.
  • Clicking on a part from a part variable chart will now open a new part editor instead of closing the chart and reusing the existing editor window.
  • Part variable chart formatting has been improved.
  • Tool assemblies can now be duplicated.
  • Tool assemblies can now be merged.
  • Tools now have a "torque specification" field.
  • Added tool types for holders and bodies.
  • Changed labels on tool replacement cancellation confirmation buttons to be more intuitive.
  • Allow shop users to edit event notes.
  • Added an API endpoint (POST /api/machines/:id/update) and a "custom" machine system type for building custom machine integrations using Caron MiConnect or other software.
  • Tool assembly and location are now shown in the tool replacement detail window.
  • View combined replacement and rebuild history for all tools in an assembly.
  • Tool rebuild status is shown in the notes column of the tools table for tools that have it set.
  • Mark parts as "reworked" and they will appear yellow in part charts
  • In addition to selecting many parts at once to scrap, you can now remove their scrapped status and change their reworked status in bulk as well. Just right-click the part selection and click "Flag".
  • Inventory items now have only one part number for all suppliers.
  • Tools will keep track of which inventory item they were using at the time of replacement to allow for easier analysis of longevity between equivalent items.
  • Updated Microsoft Teams webhook support to support their new URL format.

Kudos to you

20230131 kudos.png

To encourage helpful notes, you can now give kudos to other users for good documentation by clicking the reaction emoji under a note. You can choose your own personal reaction emoji in your user settings. Managers can run a kudos report to see which users received the most kudos in a given time period.

Which user gets credit for the helpful note depends on the target: for tool replacements this will be the user who replaced the tool; for parts and events it will be whoever last saved changes; and for maintenance entries and issues it will be whoever created the entry or issue.

Processes

Program groups have been replaced with processes, which are containers for a machine, programs, tool assemblies, and settings that define a real-world process.

During the upgrade
  • Program groups that contain at least one program will be converted to processes automatically.
  • If a program group contains programs from multiple machines, the machine to which the most programs belong will be kept in the process, and all other programs will be ungrouped.
  • Settings from a group's programs will be combined into the settings for the process using the following rules:
    • Common variable map: merge all program maps into one superset map
    • Cycle time: average of program settings
    • Parts per cycle: most common of program settings
    • Part count variable: most common of program settings
  • Tools that are assigned to program groups and already in assemblies and will have their assembly added to the new process created for the program group.
  • Tools that are assigned to program groups but not in an assembly will be placed into new assemblies named with the program group and tool location, and then the new assembly will be added to the new process. If multiple tools assigned to the same program group are in the same location, they will be added to the same assembly.
  • Tool reorder notifications are now configured in the options window.

Bugs fixed

  • Fixed the internal server error that occurred when deleting machines.
  • Non-integral numbers are now allowed in the "notify when" field of the common variable mapping window.
  • In the case where a machine selection dropdown is opened when a value is already selected, it will no longer jump back to the top of the list when machine data is updated.
  • The NC authentication field (which may be named differently depending on a machine's system type) will no longer be clobbered by saving changes to a machine without entering a new value.
  • The report output viewport now has a light background to match its printed appearance even when the dark color scheme is selected by the operating system.
  • "Machine not configured" alerts will no longer show up for machines of the "custom" system type
  • Maintenance reminders will now only be sent once between entries.
  • Machine part counts are once again exposed via the API as Machine.last_part_count. Note that if a machine is using a variable as a part counter, this will be the last reported value of the selected variable instead of the control's part counter.
  • Improves proxy log message when a machine is missing a TMAC API key
  • Fixed "assigned to any loaded process" tool table filter returning all tools.
  • In the tool replacement wizard, the substitute tool selection is now cleared when the tool substitution option is unchecked, so the server will no longer reject these replacements.
  • The "create inventory item" button in the tool editor now correctly selects the newly created item.
  • In the variable mapping window, variables set to "never notify" will no longer show a useless and confusing value entry field.
  • The "Add to inventory point" option when selecting inventory items now works again.
  • Fixed "chamfer fill" typo of "chamfer mill" tool types.
  • The job ID field of TMAC events should now be populated for future alarms.
  • NC alarms from machines using FOCAS should no longer have garbage trailing characters.
  • OctoPrint machines in the "finishing" state are now treated as running instead of idle.
  • Many parts created at the same time will no longer be removed during upgrade
  • Fixes a segmentation fault that occurred when there was an error parsing MTConnect XML
  • Fixed the maintenance page machine selection not filtering maintenance issues table.
  • Fixed "move selected items to another inventory point" not working in the inventory verification window.
  • Dropdowns no longer scroll horizontally.
  • Unknown tool maintenances states will no longer cause errors during page rendering, and will instead show up as "(Unknown status)".
  • Percentage-based tool life tracking is no longer used for alerts, so the tool life reported in alerts and notifications will now match the tool life displayed in the OnTakt interface.
  • The y-axis range of charted variables is no longer required to contain zero.
  • Audit log tables were not rendering correctly
  • Fix server error when rebuilding a durable tool with a substitute tool selected.
  • Improved reliability of data from FANUC controls by disconnecting from and reconnecting to the control each time the proxy updates machine data. This was the behavior of proxy versions <2.5.0.
  • Fix TMAC data not being recorded on the server
  • Client version 1.5.5 displayed goals incorrectly in machine cards.
  • Server version 4.7.5 failed to create parts for programs not belonging to a process.
  • Demo machines will no longer generate negative feed rate override values
  • Programs without names will no longer cause a suggested process alert.
  • Tool usage report generation no longer fails with an error when some tools do not have an inventory item set.
  • The location column of the inventory verification window now shows values again.
  • The tool usage tab of the part editor will now display correctly when there are tools that are not in an assembly.
  • Fixed a bug in the part editor's tool life table that prevented tool locations from showing up.
  • Fixed part variables not being saved during part creation.
  • Parts without a value for a variable will no longer cause errors in the variable charts. Instead, they will be skipped on the chart.
  • When a variable is not being reported, showing the alert will no longer cause a database write loop
  • Fixes a bug where mapped variables do not get saved with parts.
  • Chart context menus will no longer run off the right edge of the screen.
  • The variable list in the machine editor now behaves more predictably.
  • Fixes a typo in the missing variable system alert
  • Fixes a bug where every part produced on a machine would create two parts in OnTakt. This update will automatically remove duplicate parts and restore tool life during installation.
  • Fixes multiple parts created at the same time being connected in the wrong order on part charts when using Safari or Chromium-based browsers like Google Chrome and Microsoft Edge:[[File:20221115_sawtooth.png|sawtooth and fixed charts]
  • Fix "Add Supplier" button not working when creating a new inventory item.
  • Fix the audit log undo button not working in most cases.
  • Show undefined OEE as 0% instead of N/A.
  • Fix error when deleting a tool that is in an assembly.
  • Tool active time ("in use for x days") was shown in tools table even when the lifetime expectancy was not set on the tool.
  • Fix error when clearing database before restoring a backup

FANUC compatibility improvements

  • The proxy now reads the main program instead of the current sub-program, so program names should now be consistent between parts.
  • To improve communication reliability, only variables set in OnTakt for program selection, part counting, or in the current process's variable map will be read from the machine.
  • Feed rate override is now read from machines with FANUC controls.

Known issues

  • Tool replacements created prior to updating will show up on all production charts of all machines. This is because the data associating tool replacements to a machine was not previously recorded. Tool replacements created after updating will be associated to a given process and therefore only a single machine.
  • If tools are assigned to multiple program groups, it is not determinate which process they will end up assigned to. This should be reviewed manually after the upgrade.
  • Downgrading after installing this upgrade will result in a loss of data (tool and program assignments will be removed), so make sure to take a backup of the OnTakt database before upgrading to this version.

Breaking changes

Functionality

  • Program groups have been removed and more or less replaced by processes.
  • Tools cannot be directly assigned to programs or processes; they must be placed into an assembly and then the assembly can be assigned to a process.
  • When sorting the tools table by usage, tools without a part life set are now treated as having an infinite part life
  • Restoring database backups is no longer allowed via the API. Use the service management panel instead.
  • Now only administrators can change the time zone and global shift time options. Machine-specific shift times can still be set by planners

Data model

  • Tools no longer have a location directly; this must be set on their assembly.
  • part_count_cv can no longer be set on a machine directly; it must be set on a process.
  • time_per_part, cv_map, parts_per_cycle, and part_count_cv can no longer be set on programs directly; they must be set on a process.
  • Tools no longer have a redundant monitoring property. If the monitoring_dest property is set to a non-null value, monitoring is enabled.
  • The ToolOrderItem type has been renamed to InventoryItem.
  • The order_item and order_item_id properties of the Tool type have been renamed to inventory_item and inventory_item_id.

API changes

  • /api/parts now allows specifying multiple machines, and the preferred parameter name is now machine_id instead of machine.
  • Added /api/parts/:id for getting details of a single part.
  • The tmac_3 field has been removed from the Machine type. OnTakt has not supported TMAC MP for over a year.
  • The inspection_part_id field has been removed from the Part type. Parts are now referenced from the Inspection side
  • Removed /api/parts/withVariables. Use /api/parts with variable parameter(s) instead.
  • Deprecated the day parameter of /api/parts, and it may be removed in a future server update. Use the new start and end parameters instead
  • Demo machines must now have the demo system type explicitly selected in machine settings.
  • The goals data item returned by /api/machines/:id/chart is now an array of arrays instead of an object.
  • /socket/proxy/:machineId/:dataSrc has been removed. Use the new /socket/proxy with tagged messages instead. The proxy now uses a single socket communicate with the server for all machines instead of one per machine and TMAC unit to reduce the number of concurrent network connections each must maintain.
  • MTConnect XML parsing now happens on the proxy instead of the server. This should not change any behavior and offers the benefit of increased performance, but there may be unforeseen inconsistencies in data handling
  • Removed /api/program_groups/...
  • Moved GET /api/programs/variables to GET /api/processes/variables
  • Replaced GET /api/tools/replacements/program/:id with GET /api/tools/replacements/process/:id
  • Removed POST /api/parts/scrap; call POST /api/parts/flag with {"scrapped": true} instead.
  • The order_item query parameter of GET /api/tools/ has been renamed to inventory_item.
  • The order_items field returned by POST /api/tools/inventory/:id/receiveOrder is now called inventory_items

Client 1.4.6, Server 4.6.4

9/21/2022

New features

  • All NC alarms can now send notifications, not just those with "ALARM_A" in their name.
  • Added buttons in the notifications tab of the options window to send a test message to configured notification channels.
  • Users can now edit notes and conditions of previous tool replacements.
  • Added a help page describing machine colors.
  • New tool types:
    • Boring: Burnisher, Tap, Thread mill
    • Cutting: Ballnose endmill, Chamfer mill, Double chamfer mill, Dovetail, Groover, Radial endmill
    • Durable: Drive, EDM electrode pins, Filter
    • Inserts: Groover, Rougher
    • Other: Hone, Part-off blade
  • New icons for existing tool types:
    • Boring: Reamer
    • Cutting: Endmil
  • Added good, scrapped, and total part counts to the overview cards on the machines page
  • Offer to refresh the page if the server reports a different version after the event bus has reconnected.
  • Now you can select along the x-axis of tool replacement life charts to limit the replacements shown in the table.
  • Added tool, section, and time increment columns in the TMAC events table on machine production pages.
  • Added a dropdown to the tool editor to change which assembly the tool belongs to.
  • Internal server changes for better database performance and parity with Inspection
  • Field to enter brand of tool order items.
  • Field to enter pack quantity of tool order items to round up to a multiple of it when generating orders.
  • Simplified order spreadsheet columns.
  • When rebuilding durable tools, the location field of the original tool will be moved to the substitute tool.
  • Added maintenance module for scheduling repeated maintenance tasks or measurements, and for logging/tracking machine issues
  • Added tool life chart to tool replacement history window

Bugs fixed

  • Disabled the "Finish" button of the tool replacement wizard while the replacement is submitting to reduce double-submissions.
  • When creating tool order items, only the name entered was saved, but now all fields work correctly.
  • After creating a tool order item from the inventory tab of the tool editor, the newly created item will once again be selected automatically
  • Fixed a bug where good and total part counts would not update correctly in part chart tooltips after navigating between days or scrapping parts.
  • Fixed a memory leak on the tools page that caused the browser tab to crash or the browser to reject network requests depending on when the memory limit for the tab was reached.
  • Fixed a bug that prevents database changes from being saved when an external notification is sent by the action that made the changes
  • Check tool list when adding to assembly to prevent database corruption.
  • Start the y-axis of tool life charts at zero
  • Fixes an issue where turning the tool history window chart on, off, and back on would freeze the page
  • Fixed time rounding in production chart compare mode
  • Fixes a bug introduced in client 1.2.0 that caused the tools table Usage column to sort by part count instead of parts remaining. After installing client 1.2.1, it will sort by parts remaining again

Breaking changes

  • For API users: Tool.folder has been removed.
  • Some server code has been extracted and merged with redundant code from Inspection into WPU, so there may be new bugs introduced for edge cases

Client 1.2.0, Server 4.4.0, Proxy 2.4.0

7/27/2022 This update can take a few minutes longer than usual to install because usage breakdowns for all existing tool replacements must be back-calculated. During this time, OnTakt may not be available. Please keep this in mind while deciding when to install this update.

New features

  • Click the pin button for a tool on the tools page to keep it at the top of the table when sorting. The pinned state of a tool is shared across all users.
  • Tool replacement breakdowns are saved when the tool is replaced, so the data will not change if the tool is unassigned from programs/groups.
  • Durable tool rebuild status is now tracked and can be set in the tool editor or from the rebuild wizard.
  • For machines with FANUC controls, the reported program name will now be populated with the program's comment if one is set on the control.

Bugs fixed

Production monitoring

  • TMAC alarms are now correctly color-coded in charts.
  • Compare mode on part charts now counts all parts between the selected parts, including both endpoints, regardless of their scrapped status.
  • The "launch TMAC job editor" button in the event window now works correctly. This only applies to TMAC events recorded after installing server version 4.4.0 and proxy version 2.4.0.
  • Part and event editor windows now open reliably when using the buttons in the tables on the machine production pages instead of clicking on the chart.

Reporting

  • Production overview (heatmap) windows now clear when opening instead of showing irrelevant data.
  • Production overview generation is now more accurate when counting parts produced shortly before or after midnight, and about 53 times faster overall.
  • Periodic machine reports sent to Slack/Teams will now be for the current day instead of yesterday.

Tool management

  • Favorite tools are now respected by all tool filter modes.
  • Tool replacements that index the tool past the number of corners set on the order item will be rejected.

Machine connection

  • The current part count is now read at the correct memory address from FANUC controls, so it is no longer necessary to use a macro variable for all programs.
  • Alarm names are now read at the correct memory address from FANUC controls, so they will no longer show up missing the first four characters.
  • For TMAC alarms, the jobId field will contain the ID of the current job, in addition to the current job field that contains its name.

Breaking changes

  • The physical attributes tab of the tool order item editor has been removed. This data is still accessible for reading and writing via the API.
  • For API users: /api/tools/replacements/:id/usage has been removed. Read the parts property of returned ToolReplacement objects instead