New in Softadmin® 7.14.001

New features and user-visible changes

Single Sign-on with SAML 2.0

We have added support for SAML 2.0-based single sign-on, in addition to the existing support for Active Directory and Azure AD.

First, this enables single sign-on for those organizations that do not have their users in a Windows domain but do have some form of SAML-compatible Identity Provider.

Second, this enables single sign-on for those organizations that do have their users in a Windows domain but who do not host the system inside the domain, as you can set up a SAML integration with an Active Directory Federation Services (AD FS) sever in the domain and the Softadmin® system. (Read more)

User favorites with saved passing fields

Softadmin® allows users to create bookmarks to their favorite menu items. Right now users are only able to favorite menu items that do not take any parameters. This is inconvenient for users who may wish to add parameterized favorites like Show Company: Acme Inc. On the other hand, allowing users to turn anything into a favorite creates an undue burden on the developer, who can no longer edit any menu item in the system without fear of breaking some unsuspecting user's favorites. There is also the risk that users may unwittingly create a favorite to a step in a process flow that they should not be able to return to once the process is finished.

As a compromise, in this version we've added support for the developer to configure menu items with which passing fields can be safely added to a favorite. So, for example, for the Show Company menu item you add CompanyId to the Allowed favorite parameters and now users can add favorites for Show Company: Acme Inc and Show Company: Southwater.

You as a developer may need to use the views SoftadminApi.UserFavorite and SoftadminApi.UserFavoriteParameter to repair or delete any user favorites if you remove, rename, or add extra passing fields to a menu item that uses Allowed favorite parameters.

Headings and separators on parameter pages

Previously, the only form of control container that could be used on parameter pages was the Heading with checkbox control. We've now added support for Heading and Separator as well.

Shows where the new heading button is located in the toolbar

A search page where fields are grouped under the headings Contact details and Company details

Color theme support for heading controls

Custom color themes can now change the colors of heading and heading with checkbox controls in the same way they already could change the headings of info boxes.

A heading control has been colored red.

Box with menu group description

You can now, when desired, add a description to menu groups that is shown in a box above the menu items.

Internal changes and development features

We have introduced the ability to assign an alias (for example Contact.ShowDetails) to menu items and links so that procedures can refer to menu items and links by alias instead of by ID. So instead of ADMIN_ForwardMenuItemId = 123 you can now use ADMIN_ForwardMenuItem = Contact.ShowDetails.

The old way of referencing, by MenuItemId or LinkId, has a few problems. It prevents code reuse between systems as the "same" menu item, for example Show contact, is unlikely to have the same ID in two different systems. Using LinkId even prevents reuse within the same system, as no two menu items will have outgoing links with the same ID. Using IDs can also make debugging harder as a procedure returning ADMIN_ForwardMenuItemId = 123 requires you to actually look up the ID.

Alias support has been added for all SQL calls that currently work with IDs, and to the menuItemPopup JavaScript function.

Unicode-support in names

In the table SoftadminApi.User the columns UsernameFirst and UsernameLast, as well as the computed columns FirstNameLastName, LastNameFirstName and UsernameFull have all been changed from varchar to nvarchar. This means that you can now use unicode characters in names.

The Username column has not been changed and is still varchar.

In order to take advantage of this functionality you need to update the system's stored procedures that administer users to use nvarchar instead of varchar. This is not mandatory, but if you don't then users will continue to be restricted to whatever character set is used by the system's database collation.

Explicit control over whether a grid row shows a checkbox

We have introduced the column Row_ShowCheckbox. By default, a grid with checkboxes will show a checkbox for each row, so you would use this to hide checkboxes on certain rows.

The old way of hiding checkboxes, which is still supported, is to output a NULL value in the first column which is the column that checkboxes use as Row ID. This is incompatible with the Row_ExtraText column, which requires that Row IDs are not NULL (because it wants to keep track of which rows have been expanded), so that there was no way to show expandable extra text for a row that should not have a checkbox.