New in Softadmin® 8.4.0

June 2025

UX Changes

New Small Screen Multirow

This version introduces a new design for the Multirow control, specifically optimized for small screens. This is the default new design, but you can revert to the old multirow with the control setting Smallscreen mode: Desktop view.

mobile multirow.png

You can add a column with the new control type Multirow Row Heading. This allows you to assign titles to rows and make them collapsible, making it easier for end-users to navigate the control's contents.

multirow heading.png

Grid Action Row

This version introduces a new link type, Component content link, which is closely related to the Top link. It is currently only supported by the Grid component, where these links appear as action buttons above the grid rows.

Use Component content links for menu items that operate directly on the grid's content, such as a New button or buttons that operate on the currently checked rows. Top links should still be used for navigation away from the grid or for actions on entities not primarily represented within it.

Existing Top links that reference grid checkboxes will be automatically converted to Component content links. We will also attempt to convert New links, though this conversion is conservative.

Links that operate on all rows in the grid should be converted to Component content links but can not be migrated automatically. You will need to change these manually.

In this example, all buttons act directly on the icons and should be content links.

gridactionrow_icons.png

On the other hand, in this example only the New button acts on the grid's contents. The other buttons are top links.

gridactionrow_credentials.png

More Obvious Toggle for Editable Grid

The button that toggles Editing mode for Grid: Editable Grid Mode is now a toggle switch. This change makes it more apparent to end-users and provides a larger click target.

editablegrid.png

Browser Back Button Integration

End users can now use the browser's back button as a shorthand for clicking the back button in the interface. This allows users to return to the previous menu item or close the active popup.

Please note that this solution is a workaround and may have limitations. It might break if users click the back button too quickly or attempt to go back more than once on iOS. These issues will not be solved in the near future, so temper your expectations.

The escape-key remains the more reliable shortcut for triggering the back button.

New UX Features

AI Mark

The Uneditable Text and Info Text controls have a new option, AI generated, to display a notice that the content was generated by AI. It works both in NewEdit menu items and in InfoSQL.

Here, we can see a grid with customer feedback, and InfoSQL with an AI generated summary of that feedback.

ai_mark.png

Control Accessibility on a Per-User Basis

Previously, the extended accessibility features could only be enabled on a system-wide basis, by setting the UseAccessibilityMode setting.

The column UseAccessibilityMode has been added to the SoftadminApi.User table. You can either update it using SoftadminApi.User_InsertUpdate, or updating the table directly. The default value of NULL still uses the system setting, but you can use this to enable or disable accessibility mode for individual users.

New Features

Dynamic Field Groups in Grid

We have added support for dynamically assigning column groups in the Grid component.

Before using this feature, you should consider whether the Pivot Grid component would be a better fit. For example, if all cells contain the same kind of value, and you need row labels and column labels (optionally with column groups), then a Pivot Grid is more suitable.

SELECT
	CONCAT('Q', N) AS ADMINFieldName,
	CONCAT('Q', N) AS FieldLabel,
	'Right' AS CellAlignment,
	CONVERT(varchar, @Year) AS ColumnGroupLabel
FROM
	SoftadminUtil.Number_Range(1, 4);

Custom Headers in Mail Component

The Email component now supports adding custom email headers to outgoing emails. This is used when an email service requires nonstandard headers, or to use standard headers not normally supported by the Email component.

Developer Features

JavaScript Function fieldHasValue

This version introduces the JavaScript function fieldHasValue, primarily intended for visibility and enable scripts.

fieldHasValue('Comment')

instead of

{Comment} != ''

The fieldHasValue function removes the need to know the return type of each control type. While most controls return '' while empty, some return null and others return []. The fieldHasValue function handles all these cases correctly.

Quickly Add Existing Field Tables To Menu Item

A new method has been added to add existing field tables to a menu item. You can now easily search for field information whose name matches the column name.

existingfield1.png
existingfield2.png

You can use this feature by right-clicking to open the developer context menu. It is available for NewEdit, Grid, and InfoSQL.

Enable Profiler Log Temporarily

The Profiler Log should not usually be enabled outside of development systems, as its use has a memory cost. However, enabling and disabling it was inconvenient, and so it was usually left enabled.

From this version, the log starts out disabled in stage and production, and will automatically be disabled again after being enabled for one hour.

DB Sync Uses One File Per Table Row

By default, the DbSync.exe tool will now create one file per table row when scripting the contents of many tables. You can force the old behavior with the -OneFilePerTable flag.

This should reduce the risk of merge conflicts when multiple developers are working on data in the same table.

Function for Normalizing Swedish Organisation Numbers

The new function SoftadminUtil.OrganisationNumber_Normalize both validates and normalizes organisation numbers, accepting multiple input formats but ensuring a consistent output format.

It is otherwise similar to SoftadminUtil.PersonalIdentityNumber_Normalize which was introduced in earlier versions.

Database Designer (beta)

Alter Column

Columns can now be altered, renamed and dropped. It is also possible to update their internal description, stored as MS_Description.

Import from Softadmin® Map

Import from Map can now be customized by Softadmin® Map import settings found under the Settings in Database Designer.

More actions will be added in future releases. For current designer capabilities, check Database designer information under the Database designer overview.