General Enhancements and Changes

Summary

The following enhancements and changes have been made as part of the 2023.3 (11.3) release. These are outlined below and described in the Details section that follows:

  • An updated set of object type icons is now available; when selected, the icons will display for object types in the various hierarchies in both the STEP Workbench and the Web UI.

  • Functionality is extended in the JavaScript API to add requested methods, in the REST API to provide requests for Gateway endpoints and deletion processes, and in the GraphQL API to improve search and sort capabilities.

  • Individual contexts are now displayed as objects with a new icon in the System Setup hierarchy where they are relevant. This new format shows the relationship between contexts and dimensions / dimension points and also allows selecting individual contexts for a change package.

  • A new healthcheck and log entry identifies the use of reflection in JavaScript business rules to assist users in identifying rules that need to be rewritten before reflection is disabled.

  • STEP's ability to delete a large number of objects is now more stable and efficient with improved user feedback. Also, a new healthcheck reports the absence of scheduled cleanup processes that remove unnecessary data from the system.

  • Support for legacy 'Website' object types is discontinued; customer action is required before upgrading. Outbound integration endpoints are the recommended functionality for publishing data.

  • Access to the Admin Portal (System Administration) is now available via single sign on (SSO) for on-premises hosted STEP systems using SAML.

  • DaaS improvements, including better handling of derived events and dimension-dependent LOVs, are provided to better serve customers using the DaaS offering.

  • The Start Page displays the links and link categories based on the user privileges for SaaS environments, eliminating screen congestion and irrelevant link categories.

  • List of Values log is enhanced, capturing the details in a more descriptive format.

  • Existing List of Values can be exported and imported using Excel format, which allows for easier management and maintenance of large LOVs.

  • 'Price Lists' and 'Attributes Inherited from Classification' can be exported using CSV and Excel format, providing human-readable extracts for this combined information and supporting customers who need to export price data as part of ETIM and/or ECLASS extracts.

  • A new 'Fraction (No Decimal)' attribute validation base type is available, which does not allow decimals as a value.

  • The 'Started by' user field can be edited in Scheduled and Queued Processes. This allows for changes to the user without the manual work of deleting existing scheduled processes and scheduling new ones, for example, when the original user is either no longer with the company or changes roles within the company.

  • The Lionbridge APIv2 Connector has been certified by Lionbridge, meeting requirements from Lionbridge to ensure a stable and updated integration between STEP and Lionbridge. This update which also gives customers time to review and approve jobs, now has a new quarantine state before jobs are completed or archived, as well as updated execution reports.

  • An Azure SQL Database delivery method solution is now available for Audit Message Framework (AMF) for SaaS systems.

  • A new PDX Channels Context bind is now available for use as part of the syndication of product data from Instrument (STEP) to receivers via PDX.

Additionally, as part of continuous efforts to maintain the core of our software, this release includes fundamental updates to adopt new technologies in our database access layer. This makes it easier for us to extend and evolve our software. Enhancements are also included to ensure the continued security and supportability of the platform.

Details

Object type icon update

A bold refresh of STEP object type icons has been made available to all customers with this release. The object type icons that display throughout the STEP Workbench and the Web UI have been updated to both contemporize the visual look and feel of the STEP interfaces and to follow the principles laid out in Google's Material Design visual language. The updated icon set is displayed in the 'Select Icon' dialog, shown in the screenshot below.

New STEP implementations will automatically have the updated icons for all system object types. Current STEP customers updating to 2023.3 (11.3) will have system object type icons automatically updated with the new SVG icons if those icons have never been replaced. For object types whose icon has been replaced, users who want the new icons will need to manually swap out the old icons with the new; if no icons are swapped, the old icons will continue to display.

All new object type icons will be of the Scalable Vector Graphics (.svg) file type as images of this type retain image fidelity when reduced or enlarged, present no issues with regard to aspect ratio, and are generally easier to create, edit, and maintain.

Icons assigned to object types in the workbench will also determine the icon assignment in the Web UI.

For more information on assigning object type icons, refer to the Object Type Icons topic in the System Setup documentation.

For more information on how the updated icon set may impact your current object type icon assignments, refer to the 2023.3 (11.3) Upgrade Guide.

Updates to JavaScript, REST, and GraphQL APIs

The JavaScript API, the REST API, and the GraphQL API have been extended to improve functionality in existing methods. These improvements provide consistency among the APIs and help to support customers in automating testing efforts using the desired API.

JavaScript API

The JavaScript API has been improved with the following updates:

  • In addition to the previous functionality of adding and removing attributes from attribute groups, now reference types and data container types can be identified, added, and removed from attribute groups via getAttributeGroups(), addAttributeGroup(), and removeAttributeGroup().

  • Previously, the inheritance of a value has been visible, and now, the name on an object can also be checked for inheritance via isNameDimensionPointInherited().

  • Previously, a product override could be created from a Business Rule, and now, a method to set the product to optionally override is available via setOverriddenProduct().

  • STEP can convert units on values, such as meters to centimeters, which is often needed when showing values to users. Now, the functions are publicly available via convertValueToUnit().

  • The ability to access information about which dimension point a translated value is set is now publicly available for values and LOV values via get DimensionPoints().

Details on the JavaScript API functionality are included in the Technical Documentation (STEP API Documentation prior to 2024.3), accessible at [system]/sdk or from the system Start Page, within the Extension API section from the Javadoc link.

REST API

The REST API has been improved with the following updates:

  • Functionality already available for outbound and inbound integration endpoints is now available in REST API for gateway integration endpoints (GIEPs). Users can get a list of GIEP IDs, get the status of a GIEP by ID, and enable / disable a GIEP by ID.

  • Now, the REST API can be used to approve deletions and purge assets, classifications, entities, and products that are in the recycle bin. For automated testing systems, temporary data (assets, classifications, entities, and products) is often created and should be cleaned up to avoid degraded system performance. For most other use cases, it is recommended to use a scheduled empty recycle bin instead.

Details on the REST API functionality are included in the Technical Documentation (STEP API Documentation prior to 2024.3), accessible at [system]/sdk or from the system Start Page, using the link in the REST API section.

GraphQL API

The GraphQL API has been improved with the following updates:

  • When STEP IDs are not known by external systems, Keys can be implemented to uniquely identify objects through data known by external system. Keys can already be used through REST API, and are now also available in GraphQL API via the keyID parameter.

  • Previously, the existing DateTimeValueConditionInput has only been available for use on attributes with the 'ISO Date and Time' validation base type. Now, attributes with the 'ISO Date' validation base type can also be used with the same existing operators (eq, lt, lteq, gteq, neq).

  • Prior to this release, using 'search by list' required nesting OR statements, which is error prone and overly complex. Complex sets of OR statements are eliminated with the new list condition (using the ID, name, attribute, or defined key filter) and input is available for:

    • searchForAssets

    • searchForEntities

    • searchForProducts

    • searchForAttributes

    • searchForClassifications

  • The sort order applied by users for object type (manual sorting) can be honored for product or classification children via the option (sorting:{manualSort: true}) while setting the option to 'false' uses the default alphabetical sorting

Details on the GraphQL API functionality are included in the Technical Documentation (STEP API Documentation prior to 2024.3), accessible at [system]/sdk or from the system Start Page, using the link in the GraphQL API section.

New object type and icon for contexts

Contexts on the System Setup tab now have a new object and icon. This allows contexts to be added to change packages and also gives a visual indication of the relationship between contexts and dimensions / dimension points, displaying the context in each relevant dimension hierarchy. The context editor continues to display as a table when selecting the top-level node and is used to create new contexts, edit selections for existing contexts, and delete contexts.

For more information, refer to the Contexts topic in the System Setup documentation.

Use of reflection in JavaScript business rules will be disabled

In JavaScript business rules, reflection has been used to access non-public methods in the API. Since reflection can be a security risk and can also potentially lead to performance issues and unexpected issues during upgrade, it will be disabled in a future release. With the current release, the new Configuration healthcheck 'Reflection usage in business rules' identifies business rules that use reflection and a warning with the text 'Attempted to call reflection API...' is written to the step.0.log. To prepare for restricted access of reflection usage, rewrite the reported business rules to use publicly available methods. If the needed functionality is not public, use the Stibo Systems Service Portal to create an enhancement request to make the functionality public.

For information on the healthcheck, refer to the Healthcheck Test Index topic in the Administration Portal documentation.

Improved performance and usability for delete operations

Stability and performance are improved for STEP's deletion operations to include initial deletion from the Tree, deletion approval, emptying the recycle bin, and force purging (which allows users to immediately force removal of data from the Recycle Bin). Usability is also enhanced by providing customers with more granular user feedback to better monitor system progress and improved error handling while deleting and purging. These improvements reduce the overall time required, for example, to iteratively load and then delete test data on a development or QA environment, and to remove unneeded data in a production environment.

Stibo Systems recommends using the new 'Data cleanup tools' Performance healthcheck to identify missing or poorly-configured scheduled purging processes. The healthcheck informs users:

  • if scheduled Recycle Bin purging is not configured for all contexts. The system administrator can configure 'Schedule Empty Recycle Bin' for the Tree tab Recycle Bin to address this issue.

  • if a scheduled 'Revision Management' event processor is not configured or is not enabled. Purging old revisions across workspaces improves performance.

Although these improvements focused on Cassandra-based In-Memory systems, some of them benefit all system types.

For more information, refer to the Recycle Bin for the Tree Tab topic in the Getting Started documentation and the Healthcheck Test Index topic in the Administration Portal documentation.

Support removed for 'Website' legacy objects

In workbench, objects of the legacy object type 'Website' enabled customers to publish STEP data downstream, often to a website. The 'Website' object publication functionality was implemented using a workspace that holds data approved for publishing or tracking published data in files. Support for 'Website' objects is discontinued with this release and customer action is required before upgrading to 2023.3 (11.3). Customers must manually delete 'Website' objects and any related workspaces for STEP to be able to start up after the upgrade. STEP 2023.3 (11.3) cannot start if 'Website' objects exist.

The recommended functionality to publish data is outbound integration endpoints (OIEPs). For more information, refer to the Outbound Integration Endpoints topic in the Data Exchange documentation.

SSO login extended to Admin Portal

To provide a more consistent user experience for SSO users, now, user logging into on-premises hosted STEP systems using SAML can access the Admin Portal (System Administration on the Start Page). Systems require a sharedconfig.properties entry to enable / disable the functionality.

STEP Authentication information is located in STEP API documentation accessible at [system]/sdk or from the system Start Page.

DaaS improvements

The following new capabilities extended the functionality for Stibo Systems' Data as a Service (DaaS):

  • Derived events: Publishing changes to an event queue now handles the generation of derived events more efficiently. The event queue subscription configuration now also includes new options to enable or disable the generation of derived events for child or parent objects or objects that are the source of incoming references. This improves performance and eliminates timeout issues, especially when the system has a large number of contexts.

  • Dimension-Dependent LOVs: The @mapLinkedDimensionID directive is now valid under @mapListOfValuesObject, which, after republishing from STEP, allows access to the dimension dependencies on lists of value objects.

For more information, refer to the Publishing to Data as a Service topic in the Data as a Service documentation or the DaaS built-in User Guide.

Start page display based on user privileges for SaaS environments

Administrators can update the Start Page so that link categories and links are hidden if the user does not have the correct privileges assigned to them. This feature is only applicable for SaaS environments in which the user logs in with Keycloak. Below is the description of setup action privileges used against various link categories and links.

  • Access Web UI - If the user does not have this setup action applied to their user group, then all Web UI links on the Start Page will be hidden from that user. If the user has access to this setup action for a particular setup group, they are allowed to log into the Web UIs within those groups only.

  • Access Workbench - If the user does not have this setup action applied to their user group, then all workbench links on the Start Page will be hidden from the user.

  • View SDK Documentation - If the user does not have this setup action applied to their user group, then the link to the Technical Documentation in the 'Resources' section on the Start Page will be hidden from that user

  • View Administration - If the user does not have this setup action applied to their user group, then they the links to the Performance Analysis and System Administration in the 'Resources' section on the Start Page will be hidden from the user.

  • Update Web UI configuration - If the user does not have this setup action applied to their user group, then the Web UI Component Report link in the 'Resources' section on the Start Page will be hidden from the user.

The 'Resources' section will display for all users because the 'About STEP' and 'STEP Documentation' links are not controlled through user privileges.

For more information on Setup Actions, refer to the Setup Actions and Error Descriptions topic in the System Setup documentation.

List of Values updated change log

With this release, the List of Values (LOVs) log has been enhanced and now captures the details of values added, deleted, or updated. The log also shows the changes when any value is modified, added, or deleted for the dimension dependent LOVs. This update allows the administrator to track the changes for both dimension-dependent and non-dimension-dependent LOVs.

By default, the property ListOfValues.Log.IncludeValueInMessage is set to 'True' which allows the log to capture the details.

For more information on Lists of Values(LOVs), refer to the List of Values (LOV) topic in the System Setup documentation.

Export and import of existing LOV values using Excel

Users can now export and import Lists of Values (LOVs) for existing LOVs via the Excel format. This update streamlines the exchange of LOV data between customers and their suppliers. A new plugin called ‘Excel List of Values’ is available in the ‘Select Format’ step of the Import and Export Manager. Successful exports output LOV data with the following column headers in an Excel file:

  • <LOV ID>

  • <LOV Name>

  • <LOV Value ID>

  • <LOV Value>

Additionally, successful imports of LOV data into existing LOVs via 'Excel List of Values' requires the file to have the same column headers in the same order. ‘Excel List of Values’ is auto selected for the 'Format' field in the 'Select Format' step of the Import Manager when importing a properly formatted Excel file.

The ‘Excel List of Values’ has a limit of 100 million characters for the <LOV Value> column.

For more information, refer to the Excel List of Values topic in the Data Exchange documentation.

For additional information on this update, view the video below:

 

Export 'Price Lists' and 'Attributes Inherited from Classification' using CSV or Excel

In the workbench, 'Price Lists (Commercial Data)' and 'Attributes Inherited from Classification' can now be exported using the CSV and Excel formats in outbound integration endpoints (OIEP) and in 'Export Manager.' This update simplifies the process of sending data to receivers that use industry standards such as ETIM or ECLASS.

For more information on Price Lists, refer to the eCatalogs topic in the eCatalogs documentation.

New 'Fraction (No Decimal)' attribute validation base type

A new attribute validation base type, 'Fraction (No Decimal),' which does not allow decimals, has been created. Only proper, improper, or mixed fractions are allowed for this new validation base type, and it works in both Web UI and Workbench.

For more information on Validation Base Type, refer to the Validation Base Type topic in the System Setup documentation.

Edit 'Started by' user field in scheduled processes

On the BG Processes tab in workbench, administrators can now edit the 'Started by' field for scheduled or queued processes found in the Scheduled Processes and Queued Processes folders. This enables customers to update users that no longer exist for existing scheduled processes instead of manually recreating them or deleting them. The administrator can edit the 'Started by' field when it has the privilege 'Manage Background Process Execution' added to the setup action. The below scheduled processes allow the administrator to edit the 'Started by' field, if they have the required privilege:

  • Scheduled Data Translation

  • Scheduled Data Export

  • Scheduled Bulk Update

  • Scheduled Category Profiling

For more information on Scheduled Processes, refer to the Scheduling a Data Export topic in the System Setup documentation.

Lionbridge APIv2 update

With 2023.3, the Lionbridge Connector will be upgraded to allow for integration to Lionbridge APIv2, the latest API provided by Lionbridge. The Lionbridge Connector has been certified by Lionbridge, meeting requirements from Lionbridge to ensure a stable and updated integration between STEP and Lionbridge. With the certification also comes an improved workflow and job status.

A new ‘Quarantine’ state for translation jobs sent through the Lionbridge V2 asynchronous translation component has been added. Now, when translation jobs are received from Lionbridge, they will remain in the ‘Quarantine’ state for 5 days before they are completed and archived.

This interim period gives customers time to review the job, contact Lionbridge if changes are needed, and approve it before it is archived. Previously, translation jobs received from Lionbridge V2 would be completed and archived immediately, requiring customers to open a new job if rework was required.

Execution reports have a specific ID that Lionbridge uses to assist with errors. Also, error messages from Lionbridge will be written in the execution report. For example, if a requested language is not supported, a message in the execution report will address the unsupported language. Users can then contact Lionbridge for more support.

There is also additional support for proxy servers.

The Translation Service Connector - Lionbridge commercial license is required to use this functionality.

For more information on this, refer to the Configuring an Asynchronous Translation Service topic in the Translations documentation.

Cloud-based Audit Message Framework delivery method available for SaaS

It is now possible to deliver audit messages from STEP to an Azure SQL cloud-based database, allowing SaaS customers to now use the Audit Message Framework (AMF). As with all AMF delivery methods, database messages can then be processed by a customer's business intelligence tools (Power BI, for example) to generate reports.

To use Audit Message Framework, the Analytics commercial license is required. Contact Stibo Systems to begin the process of enabling a license or licenses for your system.

The Azure SQL Database delivery method for AMF is configuration driven, so those SaaS customers wanting to implement this solution should submit an issue within the Stibo Systems Service Portal. SaaS Operations and Technical Services will reach out to get the specific information needed to complete the configuration.

For more information on the overall solution, refer to the Audit Message Framework section of the Analytics documentation.

New PDX Channels Context bind

A new PDX Channels Context bind allows STEP administrators to access PDX channel IDs of PDX channels selected by the user in Instrument, when configuring JavaScript-based business rules. This bind and two new PDX configuration properties (PDX.BusinessAction.AddChannels and PDX.BusinessAction.RemoveChannels) are part of the PDX channels solution in the Instrument UI as described in the Data Exchange Enhancements and Changes release note.

The Product Data Exchange Syndication commercial license must be enabled to use this functionality.

For more information about configuring the new bind, refer to the PDX Channels Context Bind topic in the Resource Materials online help documentation. For details about the PDX Channels setup in Instrument, refer to the Instrument Documentation that is included when Instrument is enabled on a system. It is located on the Start Page under Resources.