Executive Summary
Xytech Release 26.4 delivers 19 new features and resolves 15 issues. It includes broad enhancements across the Visualizer, Transmission, API & Webhooks, Jobs and Orders, Time Card, Media Order, Scheduling, and Framework modules.
Highlights include:
- A suite of Visualizer UX improvements for Transmission — including:
- Option to disable background grid dots for a cleaner display of resources and services
- Visual Path resource search fitted to order duration
- Visual Path filter and collapse by Source and Destination
- Dark mode compatibility enhancements
- Replacement of context menus with graphical controls for faster navigation
- Auto-display of the full booking range in the service pop-up (no scrolling required)
- Navigation buttons moved to the top of the canvas, with scroll bar navigation added
- Transmission resource management enhancements — including:
- Resource compatibility filtering in the Visualizer Resource Selector
- Resource capacity availability display when using the Resource Selector
- API & Webhooks updates — including webhook authentication enhancements and an updated Event Trigger standard layout for export adaptors
- Scheduling Flag added as a search criterion for the Order Transactions list
- Asset Disposition and Service Status Progression improvements for Media Order
- Reorder tabs within the current tab strip (Framework)
- Admin Tool — Layout Import/Export now includes layout properties
The resolved issues address:
- Jobs, Orders, and Billing: Corrected monetary value handling when changing time on work orders, foreign currency rounding, transaction offset preservation on order moves, duplicate order date accuracy, and row display behavior on order duplication
- API & Webhooks: Fixed payload inconsistencies for multi-work-order webhooks, Transmission order linking via API, and Order Transaction POST errors
- Time Card: Resolved allocation errors, batch recalculation performance issues, and rapid update errors from batch detail search
- Scheduling, User Setup, and other areas: Fixed schedule book duplication dialog, division search on scheduling groups, work order visibility rules, and actuals loading from billing codes with rollup codes defined
Deprecation Announcements
Smart Client for End Users
Smart Client is no longer supported for normal users in version 11.0 and beyond. Smart Client will still be supported for Layouts and Report Writer until a replacement of equivalent functionality in the web UX is made available in a future release.
Configuration
The Application Server configuration entry for SKY_BROADCAST_CHANGES is deprecated in version 11.0 and beyond. It has been determined that this setting was causing major, unnecessary performance issues in systems with 100 or more users. Going forward the system will not broadcast changes to all user sessions. Users will continue to receive changes from other users upon re-opening a particular Maintenance Document or Search List. This primarily affects refreshing of searches, and the population of dropdown lists when new values are recently added. Broadcasting of booking changes into the Schedule Book will remain active.
REST API V1 (version 1)
The REST API V1 (version 1) has been deprecated as of 11.0. The API will not be removed from the product, but we will no longer enhance the capabilities of the deprecated API, and support for the deprecated version may be limited. It is strongly recommended you do not use deprecated APIs for any new development and begin now to port all API usage to the REST API V2 (version 2). While porting, we recommend taking advantage of the new Webhooks features available in the REST API V2 for outbound integrations.
Pre-Announcing Deprecations in Future Releases
APIs
The SOAP API will be deprecated in a future version. The API will not be removed from the product, but we will no longer enhance the capabilities of the deprecated API, and support for the deprecated API may be limited. It is strongly recommended you do not use deprecated APIs for any new development and begin now to port all API usage to the REST API V2 (version 2). While porting, we recommend taking advantage of the new Webhooks features available in the REST API V2 for outbound integrations.
New Features
API & Webhooks
Webhooks Auth Enhancements - 39133
The Xytech Platform has upgraded its webhook security framework to store tokens and if have not expired as opposed to refreshing the token on every call. This enhancement optimizes communication with external services.
Update Event Trigger Standard Layout For Export Adaptor - 39937
The standard layout for Event Triggers has been optimized to improve the configuration experience for Export Adaptors. By reclaiming screen real estate previously occupied by legacy instruction blocks, the interface now provides a more efficient and spacious environment for managing complex adaptor logic.
- Redundant instruction blocks have been removed from the Event Trigger layout to reduce visual clutter and allow users to focus on primary configuration fields.
- The Template field has been significantly expanded to fill the newly available space, providing a larger area for easier editing of adaptor logic.
- Unnecessary gaps between the Export Adaptor description and the Template field have been eliminated to create a more cohesive and streamlined standard layout.
Framework, Dashboards, Fundamentals
Reorder Tabs Within Current Tab Strip - 29828
Users can now customize their workspace layout by reordering open tabs within a single panel. This improvement provides a more intuitive way to organize active documents and tools, allowing for a personalized navigation experience that persists throughout the session.
- Reorder tabs within a tab strip by holding Ctrl while dragging a tab to a new position; a blue vertical indicator marks the insertion point.
- Use the keyboard shortcuts Ctrl + Left Arrow or Ctrl + Right Arrow to shift a focused tab one position to the left or right.
- Identify reorder mode easily by hovering over a tab with the Ctrl key held, which changes the cursor to a resize arrow (↔).
Admin Tool - Layout Import/Export To Include Layout Properties - 38628
The Xytech Platform Admin Tool has been enhanced to ensure that layout configurations are more comprehensively captured during the migration process. By including extended layout properties in the import and export workflows, administrators can maintain consistent interface behaviors across different environments without manual reconfiguration.
- The layout import and export processes now include properties defined in the layout property tables, ensuring that specific UI settings are preserved.
- Rich text toolbar visibility settings are now part of the exported configuration, allowing administrators to control whether these toolbars are displayed for users after a layout is imported.
Jobs, Orders, Billing (Job Management)
Order Transactions List - Add Scheduling Flag to Criteria - 29585
The order transaction search capabilities have been expanded to include scheduling flags, allowing for more granular filtering and data management within the transaction list. This update ensures that users can quickly isolate and manage records based on specific scheduling statuses that were previously visible but not searchable.
- Added the Scheduling Flag field to the filter and search criteria screens for order transactions, enabling users to find records based on their assigned flags.
- Improved the integration between the results list and the search interface to ensure consistent data availability across the Order Transactions module.
Keep Markup/Discount When Resetting Rates - 37988
The Xytech Platform has introduced a new efficiency for financial workflows, allowing users to preserve existing markups or discounts when resetting rate cards. This enhancement reduces the risk of manual entry errors and streamlines the process of duplicating work orders for ongoing productions where contractually agreed-upon adjustments must remain intact despite rate updates.
-
Users now have a dedicated option to "keep discounts/markups" when performing a "reset rate" action, ensuring that percentage-based adjustments are carried over to the new rates automatically.
- This functionality has been integrated into the work order duplication workflow, enabling users to duplicate multiple work orders simultaneously while maintaining consistent pricing structures.
- The system ensures that manual overrides are minimized by prioritizing the retention of signed deal terms, such as specific markups, during seasonal or annual rate card transitions.
Media Order
Asset Disposition & Service Status Progression - 31446
The Xytech Platform now provides enhanced control over workflow integrity by allowing administrators to define valid status transitions for assets and service rows. These configurable progression rules ensure that data moves through approved stages while offering flexible bypass options for authorized personnel and system-automated processes.
- Administrators can now define "Allowed Updates To" paths within the Asset Disposition and Service Status tables, restricting the next available values based on the current record state.
- A new "Unrestricted Role" configuration has been introduced, allowing specific user groups to bypass progression constraints when manual intervention is required.
-
The system automatically enforces these transition rules across both the User Interface and API, providing meaningful error messages when an unauthorized status change is attempted.
- To streamline high-volume workflows, standard system logic—such as library movements, order phase updates, and superuser actions—remains unrestricted to ensure automated processes are not interrupted.
- Data entry is simplified for standard users as the disposition and status dropdown menus dynamically filter to show only the permitted next steps in the defined workflow.
- Support for batch operations has been integrated, ensuring that Rapid Updates, Grid Updates, and Media Order "Update Status" actions respect the progression rules on a per-record basis.
Payroll Rules, Scheduling Counters & Personnel Rules
Scheduling Counter Penalty - Meal Break Outside Of Specified Time Window - 36396
The Xytech Platform now includes a specialized counter rule designed to ensure compliance with labor regulations regarding meal breaks. This feature automatically detects when a break falls outside of a defined eligibility window based on the shift start time, allowing for automated flagging and compensation.
- A new rule has been introduced that flags meal breaks occurring outside of a permitted time window, such as the third to fifth working hour of a shift.
- Users can now define a "Minimum Hours" threshold within the counter configuration, ensuring the penalty only applies to transactions that meet a specific duration requirement.
- The system supports automated compensation for invalid breaks, which can be configured as a specific pay rate, a fixed amount, or a time-off entitlement.
- This rule operates consistently across all scheduling and timesheet-related transaction types to maintain full auditability and regulatory compliance.
Scheduling
Schedule Book - Allow Shorter Minimum Refresh Interval Than 30 Seconds - 38116
The Schedule Book has been updated to provide more immediate visibility for fast-paced environments, such as live programming. By allowing a more granular refresh interval, users can now view updates and edits to the schedule with significantly reduced latency, ensuring that the visual representation of the book stays closely synchronized with real-time changes.
- The minimum allowable value for the "Minimum refresh interval" has been reduced, enabling the Schedule Book to trigger updates much faster than the previous 30-second limit.
- A new feature flag has been implemented to control the availability of this shorter interval, allowing administrators to manage the performance impact of frequent view refreshes on a per-system basis.
- This interval specifically dictates the waiting period before the system triggers a UI refresh after receiving update notifications, preventing constant reloading while maintaining a highly responsive user experience.
Transmission
Visualizer - Enable Resource Selector To Filter By Resource Compatibility - 38980
The Xytech Platform Visualizer has been updated to streamline resource allocation by introducing intelligent filtering within the resource selection interface. This enhancement ensures that users can quickly identify and assign only those resources that are compatible with the specific requirements of a task, mirroring the robust validation logic found in other areas of the platform.
- The Resource Selector within the Visualizer now automatically filters the available list to display only resources that match the required compatibility criteria for the assignment.
Visualizer - Enable Resource Capacity Availability When Using Resource Selector - 38981
The Xytech Platform Visualizer has been enhanced to provide real-time visibility into resource capacity during the booking process. This update ensures that users can make informed allocation decisions by viewing current availability and receiving immediate feedback to prevent over-scheduling of capacity-based resources.
- Users can now visually identify available capacity directly within the Resource Selector when assigning resources to an order in the Visualizer.
- The Schedule Book has been updated to display current availability for capacity-based resources, providing a clear overview of remaining bandwidth across the timeline.
-
A new validation check triggers a conflict warning if a user attempts to assign a resource to an order that exceeds its remaining available capacity.
Visualizer: Remove Visualizer Grid Dots for Clearer Display of Resources - 25839
The Visualizer now has the option to disable the background grid dots from the display interface. This change ensures a cleaner, more focused viewing experience when analyzing and navigating transmission orders. The preference is accessed via the top preferences button.
Visual Path - Resource Search Fit to Order Duration - 29599
The Visualizer resource search has been improved to now display the full order duration, dynamically adjusting the timeline to include a margin of time prior to and after the order time. This adjustment allows users to quickly see what other bookings exist nearby within the schedule.
- The Visualizer resource search timeline now dynamically expands to include a margin of time both before and after the scheduled order duration.
- Users can view surrounding schedules and adjacent bookings at a single glance without needing to manually adjust the timeline zoom or range.
Visual Path - Filter/collapse by Source & Destinations - 29612
The Visualizer's Visual Path functionality has been enhanced to allow users to filter and collapse paths based on specific sources and destinations. This feature provides greater control over complex layouts, allowing operators to streamline their view and focus strictly on relevant transmission paths.
- Added the ability to filter and collapse the Visual Path display by specific source and destination nodes, reducing clutter on complex system maps.
- Operators can now toggle the visibility of specific connection paths to more efficiently analyze and isolate targeted resource routing.
Visualiser dark mode adjustments for dark compatibility - 39192
The Visualizer interface has been updated with dark mode color adjustments to ensure complete visual compatibility across dark themes. These adjustments optimize contrast levels and readability for all system components and elements within the map layout under dark viewing conditions.
- Refined the interface contrast and color palettes in the Visualizer to support seamless dark theme transitions and visibility.
- Text labels, service maps, and routing lines are now fully legible against dark backgrounds, preventing eye strain for operators during night shifts.
Visualiser - improve UX replacing context menus with graphics - 39733
The Visualizer user experience has been significantly improved by replacing traditional text-based context menus with intuitive, inline graphics. This enhancement provides a more modern and streamlined interface, allowing operators to quickly execute actions directly on the diagram nodes without navigating through cluttered drop-down lists. Additionally, the update resolves node layout overlap issues to maintain a clean and legible workspace during complex configurations.
- Replaced the text-based context menus for operation nodes, service nodes, and service headers with intuitive, inline graphics for faster action execution.
- Implemented a new selection model and updated the layout logic to automatically prevent selected nodes from overlapping with adjacent elements in the system map.
Auto-Display Full Booking Range in Visualizer Service Pop-up (No Scrolling Required) Feature Request - 39902
The Visualizer service pop-up has been enhanced to automatically adjust and display the full booking range without requiring manual scrolling. This update improves interface navigation by ensuring that all relevant service details and booking durations are instantly visible to the user upon opening the pop-up.
- The Visualizer service pop-up interface now dynamically scales to display the complete range of a booking automatically.
- Users can view all service timeline details immediately upon opening the pop-up, eliminating the need to scroll through long booking periods.
Visualiser - Move navigation buttons to the top of the canvas - 40321
The Visualizer canvas interface has been updated to relocate the navigation controls to the top of the workspace. This layout optimization provides greater visibility and a more intuitive workspace flow for managing and viewing system maps and diagrams.
- Moved the primary navigation buttons from the bottom to the top of the Visualizer canvas area, creating a more standardized layout.
- This positioning improves workspace ergonomics, allowing users to navigate and adjust views without blocking or overlapping the diagram components below.
Visualiser - Enable scroll bars for navigation - 40325
The Visualizer interface has been updated to enable scroll bars for canvas navigation. This enhancement ensures that users can easily navigate through large or complex system diagrams that extend beyond the immediate boundaries of the visible screen area.
- Added interactive scroll bars to the Visualizer canvas, allowing operators to smoothly pan and navigate across extensive resource layouts.
- Users can now maintain seamless visibility and access to all diagram components without relying solely on zoom adjustments.
Resolved Issues
API & Webhooks
Webhooks Request Payload Data Inconsistent With Multiple Work Orders In Invoice - 38716
When generating invoices with multiple work orders, the event trigger notifications sent via webhooks occasionally contained field names or placeholder tokens instead of actual data values. This resulted in inconsistent or invalid information being transmitted to external systems, particularly when database updates occurred shortly after the trigger was fired.
The issue was caused by a synchronization conflict where the event trigger attempted to capture data before the database had finalized the record updates for the invoice. Because the trigger was processing "live" data that hadn't been fully committed, it defaulted to displaying the underlying field tokens rather than the final values.
Solution
We implemented a deferred commit mechanism for event triggers during the invoice generation process. The system now ensures all database transactions are fully committed and verified before the webhook payload is generated, guaranteeing that notifications consistently contain accurate and complete field values.
Transmission Orders Not Linking To Job Via API - 39281
When creating transmission orders through the API, the system failed to link them to their associated jobs if the job information was not placed at the very beginning of the data payload. This required users to strictly order their technical data, leading to failed integrations and manual corrections when the expected links were not established.
The issue was caused by the API processing data in a rigid sequential order; when certain nested data tables were encountered before the job details, the system triggered the record creation prematurely. This resulted in subsequent fields, including the job reference, being ignored during the initial save process.
Solution
We updated the API logic to ensure that all data fields are correctly captured and applied regardless of their position in the request. The system now properly identifies and links the associated job records even when nested tables appear earlier in the payload, providing greater flexibility and reliability for external integrations.
Order Transaction POST API Returns 500 Internal Server Error - 41423
Users attempting to create transactions using the jmWoTransaction POST API endpoint encountered a 500 Internal Server Error if the primary key field (trx_no or wo_no_seq) was omitted from the request body. This caused integration failures for external automated workflows and required users to pass a redundant placeholder value to complete the transaction successfully. The root cause was strict primary key validation logic introduced within the dataset converter module. The validation threw an exception for missing key values before checking whether the key field belonged to a document type meant to be automatically generated by the system.
Solution
The primary key validation logic has been updated to check for auto-generated document keys prior to validating the body content. If an omitted primary key is identified as an internal system-generated key, the application will automatically assign the appropriate value and process the transaction normally without throwing an error.
Bids / Budgets
Actuals From Billing Codes With A Rollup Billing Code Defined Not Loading Correctly - 39954
Resolved an issue where actual costs from work order transactions were being loaded as separate line items instead of consolidating into the designated rollup billing code. This caused actuals data to appear in the "Items Not on Bid" section, forcing users to manually calculate totals and leaving incorrect balances on the primary bid rows. The root cause was a data type mismatch and a lack of string trimming in the matching logic, which prevented the system from correctly identifying the relationship between child billing codes and their parent rollup codes during the "Load Actuals" process. Solution: We updated the transaction matching logic to ensure rollup billing codes are correctly identified and mapped to the corresponding bid detail rows. Actual costs now automatically consolidate under the parent rollup code as intended, providing accurate cost comparisons without manual intervention.
Framework, Dashboards, Fundamentals
Work Order Visibility Rule Not Working - 40096
Resolved an issue in the Work Order layout selection where choosing a specific order type, such as Activity under the CNN division, would result in the middle of the layout remaining completely blank. Users were temporarily blocked from creating necessary work orders because layout visibility rules failed to display the designated sections and fields dynamically.
The root cause was a runtime conflict introduced by recent style modifications where specific layout container attributes inadvertently overrode and suppressed the dynamic visibility instructions.
Solution
We corrected the styling rules to ensure layout visibility configurations trigger correctly when selections change. Dynamic layout blocks and fields now render seamlessly as expected across all complex form structures.
Jobs, Orders, Billing (Job Management)
Resource Monetary Value Removed When Changing Time On Work Order - 32148
When users modified the start time or date of a resource assignment on a Work Order within the Schedule Book, any manually entered billing rates and amounts were automatically cleared. This forced users to re-enter financial data for resources without preset rates, leading to potential billing inaccuracies and significant administrative rework. The system was designed to automatically recalculate pricing whenever a time change occurred to check for date-effective rate updates. However, this process unconditionally reset the billing fields to zero, failing to recognize when a user had intentionally overridden the default values with manual entries.
Solution
We updated the pricing logic to verify the source of the billing data before performing a recalculation. The system now preserves manually entered rates and amounts during time adjustments, ensuring that custom financial details remain intact while still allowing for automatic updates when standard rates are used.
Foreign Currency Amount Incorrectly Rounding Up On Work Orders - 38607
When changing the start date or time of a resource assignment on a Work Order, the Foreign Currency (FC) Amount was incorrectly rounding up by 0.01. This discrepancy created small but persistent financial inconsistencies on orders where the Rate Card did not have a defined currency and relied on foreign currency conversions.
The issue was caused by compounding rounding errors during the calculation process. The system was calculating the foreign currency amount based on an intermediate billing value that had already been rounded, rather than using the precise underlying base value, leading to the slight drift in the final total.
Solution
We updated the calculation logic to ensure that foreign currency amounts are derived directly from the unrounded base values. By eliminating the reliance on intermediate rounded figures, the system now produces consistently accurate currency conversions during date and time adjustments.
Order Move Should Preserve Transaction Offsets - 39241
When moving a transmission order to a new start time, the system failed to preserve the relative timing offsets of its associated transactions. Instead of maintaining their specific positions within the schedule, all transactions were incorrectly reset to align exactly with the new order start and end times.
This issue was caused by a synchronization error where the system used the order’s absolute start and end times to update all linked operations. The logic did not account for existing manual offsets, resulting in a loss of the original transaction timing structure during the move.
Solution
We updated the order move logic to correctly calculate and apply the time delta to all linked transactions. The system now preserves manually entered offsets, ensuring that the relative timing of every transaction remains intact when an order is rescheduled.
Duplicated Order Dates Do Not Reflect Selections On The Order Duplicate Window - 39359
When duplicating a work order or media order from the record's action menu, the newly created order incorrectly retained the start and end dates of the original record. Even when users manually specified new target dates within the duplication window, those selections were ignored, resulting in orders being scheduled for the wrong time periods.
The issue was caused by a mismatch in how the system identified the source record during the duplication process. Instead of referencing the original order to calculate the new dates, the logic was pointing to the newly cloned record—which had not yet been finalized—causing the system to default back to the original date values.
Solution
We updated the duplication logic to ensure the system correctly references the source order's metadata when calculating new schedules. The duplication process now accurately applies the dates selected in the "Order Duplicate" window, ensuring all new records are created with the intended start and end dates.
Row Display Re-Setting Back to Customer on Order Duplication - 41122
Resolved an issue where manually customized Row Display descriptions in the scheduling system would unexpectedly revert back to the default customer name when an order was duplicated. This occurred for orders associated with a specific job, forcing users to repeatedly re-enter customized descriptions for copied bookings. The root cause was an inaccurate state flag within the duplicator window logic; when default job and customer information was initially pulled during duplication, the system incorrectly triggered a reset sequence that overrode the copied row display values.
Solution
We updated the duplicator window's evaluation logic to ensure manually edited Row Display values are properly prioritized and preserved during order duplication. The system now correctly respects the "Copy Row Display" preference alongside scheduling defaults.
Scheduling
Duplicate Work Order From Schedule Book Forces Layout Choice - 27503
When duplicating a work order, media order, or transmission order within the Schedule Book, users were consistently prompted to select a layout. The "Always Use Selected Layout" option was missing or non-functional, which created a repetitive and unnecessary step in the duplication workflow.
The layout-selection logic relied on navigation-based context that did not account for duplication flows. Additionally, the system was checking general prompt settings rather than verifying the existence of specific saved layout rules.
Solution
We updated the layout selector to correctly identify duplication workflows and display the "Always Use Selected Layout" checkbox. The system now properly remembers and applies saved layout preferences, allowing for a more streamlined duplication process without redundant prompts.
Time Card
Time Card Allocation Error - 32293
When two users attempted to modify the same time card detail simultaneously—one through a batch process and another via a site-specific custom allocation—the system encountered a conflict. This error prevented users from saving their changes, frequently requiring them to restart their session and clear their cache to continue working.
The issue was caused by a synchronization failure when handling concurrent edits across different entry points. The system was unable to properly reconcile simultaneous updates to the same record, leading to a session-blocking error.
Solution
We updated the synchronization logic for time card details to better manage concurrent data entry. The system now correctly handles simultaneous edit requests from different processes, ensuring data integrity and a more stable experience for users working in high-volume environments.
Time Card Batch Recalculate Payroll Rules Taking Long Time - 32718
When executing the Recalculate Payroll Rules action on a Time Card Batch, the system experienced significant performance delays, often taking several minutes to complete even for moderately sized batches. Users were forced to wait without any progress feedback, leading to a fragmented workflow and uncertainty regarding whether the process was still running.
The slowdown was caused by the inefficient loading of setup data, which was being pulled individually for every record in the batch rather than being retrieved once and cached. Additionally, the system was updating cache generation numbers for each detail row one at a time instead of using a more efficient batch update method.
Solution
We optimized the payroll recalculation process by implementing a batch-loading strategy for necessary setup data and caching it for the duration of the task. We also updated the system to process cache generation updates in groups, resulting in a significant reduction in processing time and a more responsive experience when managing large time card batches.
Time Card Batch Rapid Update Error From Time Card Batch Detail Search - 38695
When using the Rapid Update tool within the Time Card Batch Detail Search, users encountered a system error that prevented updates from being saved. This issue specifically occurred when attempting to modify fields such as "Final Approval" or "End Date," resulting in the application failing to commit any changes to the batch.
The problem was caused by an incorrect table join configuration that triggered a failure when loading custom template data. This inconsistency prevented the system from properly reconciling the updated fields with the underlying database records during the save process.
Solution
We updated the data loading logic to ensure that table joins are correctly mapped when using custom templates. The Rapid Update tool now successfully processes and saves changes to all batch detail fields, restoring full functionality to the batch update workflow.
User Setup, Roles, Security Classes & Login Security
Unable To Search By Division On Scheduling Groups Document - 39238
When non-Super Users attempted to filter the Scheduling Groups document by a specific division, the system failed to restrict the results correctly. Instead of showing only the selected division, the search continued to display all records from every division within the user's broad security scope.
This issue was caused by a security parameter conflict in the underlying logic layer. When a search was initiated, the system would automatically overwrite the specific division filter with the user's entire authorized security range, effectively ignoring the manual selection.
Solution
We updated the search logic to ensure that manual division filters are prioritized over general security parameters. The system now correctly restricts search results to the specifically selected division, providing accurate and relevant data for non-Super Users.
Release Xytech Release 26.4 — 34 items