Nuclos 4.2026.24

4.2026.24

Open records from list and Kanban directly in an overlay without switching tabs. Bulk-edit several records on the server, and web add-ons plus layout zones gain more room for custom extensions. Status names stay consistent in filters and Kanban, and unavailable actions are grayed out up front. Also included: smaller improvements to number formatting, column selection, and the dev proxy, plus fixes for the print dialog, dashboard filters, tab navigation, and login.

New features

  • Detail overlay in list and Kanban view. Clicking a row or card opens the detail view as a dialog without switching tabs. The new pencil button still opens the dedicated tab. Unsaved changes are confirmed before closing.
  • Web add-on variant B. Bundles can now be stored on the server and served via GET /meta/addonfile/{webAddonId}. The client prefers variant B and falls back to the static variant on error.
  • Layout zones (layoutcomponent) rendered. <layoutcomponent> elements in layouts are now rendered as widgets; the add-on SDK receives a LayoutComponentContext API with getValue/setValue/onChange.
  • host.executeCustomRule in the add-on SDK. Rules can be invoked via POST; InputRequired dialogs run through a modal dialog host instead of native browser dialogs.

Improvements

  • Bulk processing via REST. Status changes and custom rules in list view now use the CollectiveProcessing service: the server determines available actions and executes them asynchronously. Checkboxes are now also available for entities without a status model.
  • Localized status names in filter chips and Kanban. Chips and Kanban columns now show the same localized name as the record itself.
  • Status-change and rule buttons respect server restrictions. Buttons that cannot be executed for the current status are reported as disabled by the server and grayed out in the client, instead of failing with an error on click.
  • Column selection: preference name capped at 255 characters. On entities with many long column names the auto-generated preference name could exceed the database limit (HTTP 500). The name is now capped; user-defined names are unchanged.
  • Integer values without thousands separator. Whole numbers (e.g. ports, years) are no longer grouped: 8055 instead of 8.055.
  • Dev proxy: target instances with arbitrary Tomcat context. The server picker now accepts host[:port][/context]; the proxy rewrites paths correctly.

Bug fixes

  • Print dialog: target window, error text, and Boolean parameters. The target window opens only on “Create”; server errors (e.g. from report sources) are shown in full; Boolean parameters are no longer pre-filled with true when the server supplies no value.
  • Status chips in list rows no longer filter. Clicking the status badge on a row now opens the record instead of setting a filter.
  • Search filter IDs in dashboard task lists. Unknown filter IDs now fall back correctly to the searchFilterId parameter; invalid IDs show an error state instead of unfiltered data.
  • Delete from detail view activates the result list. After deleting a record the list tab of the business object is activated instead of a random neighboring tab.
  • Back arrow closes clone tabs correctly. Cloned tabs (:clone:) remained open after “Discard & continue”; the tab key is now resolved correctly.
  • List header scrolls horizontally with content. The header and filter rows are now anchored in the scroll container and move with the content horizontally.
  • Bulk processing custom rules as intersection. Only rules executable for all selected records are offered (previously: union).
  • Login: invalid server URI fixed. Login sent a relative path as serverUri, breaking action links on the server (///nuclos/rest/rest/...).