Neptune DXP - Open Edition Patch 4

Download Patch here

This update requires that you run the upgrade command (--update) if you are upgrading from a previous version

App Designer

  • You can now convert a script object to/from TypeScript/JavaScript in right-click context menu

  • Script tabs should now always resize after changes to the layout

  • The object trees now no longer reset back to the default sizes when changing the layout of the preview/object attributes

  • It is no longer possible to open the header/manifest/stylesheet before language models have finished loading

  • Set sap.m.Popover placement attribute’s default value to Right instead of Auto as specified in OpenUI5 documentation.

  • The main app stylesheet is now treated as SCSS and compiled to CSS on activation (this change does not affect CSS files or apply to Themes)

  • MultiModels are now set automatically to dialogs and popovers

  • Search and replace will now work for event value properties

  • Fixed an issue with Rest API dialog having incorrect scroll behavior

  • Changing the App Designer layout will now redraw the app preview if it is open

  • Formatting for SCSS/CSS is now provided by Prettier

  • Header/Manifest/Stylesheet are now checked for errors as part of the activation process

  • The App Designer should now only prevent closing the current tab if there are actually changes pending

  • Header/Stylesheet/Manifest changes should now correctly affect the changed state of the application

  • The MessageBox component no longer requires all parameters to be set to work with App Handler V2

  • There are now app settings for the formatter tab width and print width

Adaptive Designer

  • We now add the same custom properties to the results of API/Script Connectors as we already did to Table Connectors when using binding source properties for fields like ObjectStatus

Custom Cockpit Tiles

  • You can now mark Tiles/Tile Groups as visible in the Cockpit (tiles must be part of a tile group to be visible)

  • Cockpit Tiles/Tile Groups support a subset of the features currently available in the Launchpad (more may be added at a later date)

  • Apps in Custom Cockpit Tiles can use AppCache.Load to load other applications in parent objects or dialogues, they should, and must in the case of dialogues, pass an appGUID (i.e. ModelData.genID()) parameter


  • A tile with a link to our latest documentation has been added to the Cockpit


  • The dropdown for adding a connector to a development package is now sorted alphabetically for easier selection.

  • Package filters will no longer be removed on reload.


  • We now show the current artifact versions when importing via the Deployment Log

  • When importing via the Package Git process, Adaptive Application ID’s will now be correctly matched, so the tiles will work within a Launchpad after installing

Script Editor

  • The script project’s Changed On value will now reflect the latest change to any scripts within the project

  • reRunApproverDetermination can be called with

  • Diff view now shows the latest code to the right and old code to the left.

  • Generating PDFs using the script editor will now always store the PDF in the PDF storage

  • The PDF generation code snippets now correctly show securityKey instead of secretKey

  • You no longer have to pass body to the PDF generation functions - this matches the behaviour shown in the code snippet

  • Code snippets for OpenAPI 3.0 APIs are now generated correctly


  • There is now an option to disable the loading of Highcharts in a launchpad.

  • Feature: Disable launchpad customizations from the cockpit.

  • Fix: Prevent anonymous user or launchpad having public access from fetching or saving customizations.

  • Fix: Prevent blank screen, if the current screen is as the custom screen and customizations are cleared. Now, user would be redirected to the first standard launchpad screen.

  • Feature: Enable device based customizations. By default, all users customizations will be saved to a ‘default’ device. Now, this can be changed inside the launchpad settings. So, customizations can be done separately for mobile, tablet and desktop devices.


  • Events now resubscribe if the socket disconnects and reconnects again

  • You can now subscribe to specific rooms


  • Disable saving payloads to the audit log as it can generate a lot of data.

Table Browser

  • After importing data that contained invalid values could cause the app to get stuck in a busy state on some databases


  • LDAP auto assignment of departments with roles on first login is now fixed

  • The logout URL for SAML logins is now correctly sent to the client

  • A name parameter is passed in the nodemailer settings - this resolves an issue where certain smtp providers would not connect

  • Changed our NPM repository backend to use

  • Use dynamic imports to verify NPM modules instead of CommonJS require.

  • Code Snippets can now be included in packages

  • SMTP Log now saves the email content properly when an error has occurred as well as saving the error message

Rule based Engine

  • Allow the right status for objectStatus object validation