DXP22.10.0009 Changelog

July 01, 2023

API Exception Handling. API Status Codes. Cannot Create Entity Sets in API Factory. Launchpad Language Settings. Launchpad Customization. Double PWA Reload. Tile tab margin on click. URL Tile Title Display. Favicon Mobile. Add/Remove Favorite Buttons. Closing URL Tile. Tilegroup Where Used. Dynamic Tile Content Clipping. Show Password. Hash data in onNavigation. UI5 number attribute value. Launchpad Hide Header. Global Search Sort. Hide Global Search. GIF support. Start parameters in onNavigation. Init parameter in onNavigation. Customization Vibration. Docs trying to load in No Public scenario. Launchpad Header Menu Sub Items. Removing Favorite. Custom Tile Actions. Short Date Formatters. Hide Splash on Theme Change. Create Launchpad in SAP Namespace. Danish Launchpad Translation. Quartz Theme Global Search. Changing logged on language. Collapse Left Menu. Tile Visibility. Section Visibility. Child View Height. Enhance Login Page. Launchpad Public Settings. Cache Load Counter. Launchpad Update Tileinfo. Undefined Recent Categories. Touch Context Menu. Launchpad Search. AppCache Load Dialog. Application Shell Width. Launchpad Tile Help. Timezone Daylight Saving. AppCache_txtPassword not cleared after Logon. OAuth support for PWA. Active App Title on Mobile. Change Password in SAP Enterprise Portal Authentication. Proper Error Messages when using Basic Authentication. Loading modules in iOS. Biometric authentication. Update Tile Info. Cordova Android version 12. Planet Allignment. UI5 NotificationList Control. Dump when changing a binding of extension app after saving the app. Extension framework improvement. Error on Create New. HomeIcon attribute. Application Content Aware Help. FilterBar Model Data. Attribute Binding Dialog. Activating App. Import Button. Comment Toggle Button bug. Extension Translations Import. iView errors from SAP Enterprise Portal authentication are not shown. Navigation List Mouse Over. Unicode Errors. Create Button. Add tilegroup to itself. Translation. Installation check improvements. Housekeeping program missing API logs parameter.

API

API Exception Handling

We have changed the way exceptions are handled in an API call. This includes API calls maintained in the API Designer API calls from the API Factory. Read more

API Status Codes (23-19067)

When calling an API Designer API from a frontend system (using RFC Destination) and return a Status Code this has not been returned back to the frontend system.

API Factory

Cannot Create Entity Sets in API Factory (16-19028)

When trying to create an Entity Set in an API Factory Class you would get a console log error and cannot create the entity set.

Launchpad

Launchpad Language Settings (19054)

Previously, the Launchpad, PWA, and Mobile Client setup lacked support for certain language scenarios. Specifically, the language set using the sap-language URL parameter was not always utilized, and it was not possible to provide users with a list of languages for the login screen translation while still allowing the SU3 language setting to determine the logged on language. If "SAP User Default" is chosen in the settings, then the DYL user parameter will be used if present, otherwise the standard language set in SU3 will be used. If the parameter sap-language is added to the URL, it will be the prioritized language. Read more

Launchpad Customization (18955)

The Neptune Launchpad has undergone a significant upgrade, empowering users with an unprecedented level of control over customization. Gone are the days of all-or-nothing customization, as now you have the ability to fine-tune your preferences with precision. The customization framework allows you to enable or disable specific features, giving you complete control over your Launchpad experience. To ensure maximum efficiency, we have replaced the resource-intensive jiggle effect with a sleek move icon and dotted border for movable tiles. These exciting enhancements are available on both the launchpad and mobile client configurations, so you can enjoy a seamless user experience across all devices. Read more

22 10 9 patch main 1
Double PWA Reload (39-19061)

When changing a PWA launchpad and a reload is required and the launchpad is opened with the neptune ui debug flag (…​&neptune-ui-debug=true or …​&debug=true) the launchpad would reload twice:

First when the webpage is refreshed and then additionally after the entering of the pin code. This unnecessary doubled reload is now not happening.

Additionally, we improved the initial loading of a PWA:

When the PWA is opened, the first time the so-called "service worker" is installed. That service worker manages the caching of the network traffic. Before this improvement, the user would have needed to refresh the page ONCE manually to have the pwa fully offline capable after the service worker is installed. Now we do detect that the service worker is installed initially and perform the auto refresh of the page automatically. Thus, the PWA is offline capable of the very first initial loading.

Tile tab margin on click (1-18934)

When clicking on a tile, the tile will be set in busy mode until the app has been loaded. UI5 adds a tab area to the right and left of busy areas, these areas took up 1 cell in the Neptune Launchpad CSS Grid, causing all the tiles to move to the right (left if you use RTL language). We now set these tab areas to be hidden in the launchpad grid.

URL Tile Title Display (2-18935)

Tiles with a URL action would not set the active app title in the launchpad.

Favicon Mobile (3-18939)

Favicon would be added to the HTML header area in mobile clients. The corresponding favicon image was not exported, leading to console errors. Now the favicon is no longer added to the HTML header for mobile clients.

Add/Remove Favorite Buttons (8-18954)

If favorites are enabled in a launchpad, an add/remove from favorites button will be displayed in the user menu. This button was not removed when navigating back to the launchpad.

Closing URL Tile (15-18977)

When a URL is opened from a tile inside the Neptune Launchpad, the closing operation could leave the launchpad with an empty screen area.

Tilegroup Where Used (20-19050)

If a tile has "Open Tilegroup" as action, the tile will now show up in the tilegroup where-used list.

Dynamic Tile Content Clipping (24-19092)

The panel holding dynamic tile content would have a border radius that in some scenarios would clip the chart content.

Show Password (26-19080)

In the ABAP logon screen, the "Show Password" text was read from the database and therefore not shown on the logon screen.

Hash data in onNavigation (27-19110)

The onNavigation event handler would have a reference to the tilegroup instead of the tile application start parameters.

UI5 number attribute value (31-19128)

Some UI5 attributes did not handle pure number values. Zeroes would be truncated and not kept in the string.

Launchpad Hide Header (32-19076)

When applications had "Hide Header" enabled, hitting the enter key in an input field would trigger launchpad navigation.

Global Search Sort (33-19154)

Applications (tiles) in the global search list are now sorted according to the Cockpit Launchpad/Mobile Client Configuration.

Hide Global Search (33-19154)

When the screen is resized, the global search will be closed, so that the rendering of search list can be correctly displayed in either a grid or in tabs.

GIF support (34-19157)

Support for GIF files has been added to the media library.

Start parameters in onNavigation (35-19156)

The Launchpad onNavigation event handler would not send in start parameters from the URL semantic navigation hash data.

Init parameter in onNavigation (35-19156)

The init parameter (second parameter) in the Launchpad onNavigation event handler would always be true. Now the init parameter will be true only when it’s called the first time.

Customization Vibration (36-18838)

When long pressing on a tile in the launchpad on an Android device, the device would vibrate to indicate that the popup with the menu options was open. On some devices the vibration would end before the popup was opened, causing the user to stop long pressing. Then the long press turned into a normal press, which would open the application. The vibration is now removed.

Docs trying to load in No Public scenario (18944)

When checking off the "Do not allow public network traffic!" setting in the cockpit, the cockpit would still try to load documentation from the Neptune Portal.

Launchpad Header Menu Sub Items

If a launchpad section (subtilegroup) does not have a menu text or title, it will not be added to the header menu sections. The tiles in the section will still be added to the screen.

Removing Favorite

If only one favorite was present in the favorite list, removing the favorite using the tile context menu or the user settings menu item would not remove the favorite from the list. Only from the Manage Favorites dialog could this last favorite be removed.

Custom Tile Actions (18991)

The custom tile action script was not created correctly.

Short Date Formatters

It’s now possible to use data formatters for only day/month and day/month/short year.

Hide Splash on Theme Change

The Neptune Splash screen was hidden after a theme change. The theme change event handler was called too often, this would hide the splash screen too early.

Create Launchpad in SAP Namespace

The create dialog in the Neptune Cockpit Launchpad & Mobile

Danish Launchpad Translation (18985)

A few launchpad fields were not translated correctly into Danish.

Quartz Theme Global Search (19158)

When using the Neptune Qaurtz Layout, or any other layout with a "negative" dark header, the new global search field would not have styling for the dark header background.

Changing logged on language

If a PWA or Mobile Client has multiple languages enabled, it the language live change from the launchpad settings menu would not be saved to cache.

Collapse Left Menu

Clicking on the collapse button in the left menu tree did not collapse the tree.

Tile Visibility

Tiles would be displayed in the global search, even though they were set to not be included in menus.

Section Visibility

Sections (sub-tilegroups) would not be hidden from menus and global search in all scenarios, even though they were set to not be included in menus.

Child View Height (19184)

When running a Neptune application in a parent object using AppCache.Load, the view would not have any height defined. A styleclass with height:: 100% is now added to the child view when the child view is created. Then the child view content will take up available space inside the child view.

Enhance Login Page (46-19194)

It’s possible to add customer login page info to a Neptune Launchpad. This login page info will be updated with any new configuration each time a user opens a launchpad. Sometimes it’s desirable to keep some info in the login screen, like a build version. So, it’s now possible to manipulate the login information in the "After Menu Items" enhancement spot.

22 10 9 patch main 2
Launchpad Public Settings

The "Public Access" setting known from the Mobile Client configuration has been added to the Launchpad/PWA settings too.

Cache Load Counter (50-18932)

When loading a launchpad, PWA or mobile client, 30+ models are loaded from cache. The cache counter was not issolated to only increase when getting cache from the update function. In one case this resulted in multiple calls to the ABAP backend GET_MENU_LIST method. Now the model cache is read and one dedicated callback will handle the update.

Launchpad Update Tileinfo (51-19279,19310)

Calling sap.n.Lunchpad.UpdateTileInfo & AppCache.reloadDynamicInfo, not all tile elements were updated with new info right away.

Undefined Recent Categories (53-19298)

The function sap.n.Artifact.recentCategories would fail in some cases when the data multi model was not initiated with deep data.

Touch Context Menu (59-19338)

It’s possible to right click or long press on launchpad tiles to open the tile context menu. On some Windows touch devices, the native context menu would interfere with the launchpad context menu.

Launchpad Search (60-19358)

The new search in the Neptune Launchpad has tiles grouped pr screen (tilegroup). Now, tiles will be grouped into each screen section (sub tilegroup).

AppCache Load Dialog (64)

When loading an application in a dialog using AppCache.Load from a standalone application, the dialog close button would not be visible.

Application Shell Width (19416)

It is not recommended to use the sap.m.Shell UI5 control in applications running in the Neptune Launchpad. If a Shell object is used and it has the appWidthLimited property set to true, the application would in some screen sizes overflow, so that the application content would not be visible.

Launchpad Tile Help (19419)

The sidepanel where the tile help opens will now show a busy indicator until the documentation is loaded. The tile help link text "Help" is now translated in the launchpad. The tile help link text can also be customized in the tile configuration.

Timezone Daylight Saving (19405)

The SU3 user settings dialog did not take daylight saving time into consideration when displaying timezones.

AppCache_txtPassword not cleared after Logon (19277)

After Login (Appcache.AfterLogon) the AppCache_inPassword control was cleared but not the AppCache_txtPassword that will be filled if the user ticks the checbkox "Show Password". Now also the AppCache_txtPassword is cleared after Logon.

OAuth support for PWA

When using PWA enabled Launchpad, you can now also use OAuth Authentication allowing you to have SSO (Saml2) based authentication in your PWA! Before this was only possible in Mobile Clients.

Active App Title on Mobile (19463)

The active app title was not displayed on screens below 600px width. Now the active app title will be displayed on all screen sizes, but it will shrink if there is not enough room in the launchpad header area.

Mobile Client

Change Password in SAP Enterprise Portal Authentication (17-19041)

In the past, users of the SAP Enterprise Portal who utilized the Mobile Client encountered a frustrating issue when attempting to change their password. Specifically, any error messages related to the "Change Password" process were not visible on the mobile client’s screen, leaving users in the dark about what went wrong (for instance, the message "New password cannot contain old password"). However, we have since rectified this problem and are pleased to announce that error messages from the "Change Password" flow are now displayed on the mobile client. This improvement will greatly enhance the user experience, providing a more seamless and efficient authentication process.

22 10 9 patch main 3
Proper Error Messages when using Basic Authentication (18-18010)

When using Basic authentication and the login fails you now do get more precise error messages (same as the error messages you would get through authentication via the /neptune/webapp node).

22 10 9 patch main 4
Loading modules in iOS (4-18940)

iOS is very strict when loading UI5 objects. All dependencies must be available or required before use, no synchronously loading of modules. The Timeline & DateTimePicker needs a special waitForThemeApplied module which is now loaded in the UI5 bootloader event handler automatically, so that it is available for usage immediately. When you use a UI5 object that requires special modules, Neptune will load them before the app JS view is created. If you are using UI5 components directly in code you need to handle this yourself. Example for the Timeline control:

22 10 9 patch main 5
Biometric authentication (12-18960)

There was a bug that caused that biometric authentication could only be used for the initial authentication. After locking the device, it would not be possible to reauthenticate by using fingerprint or FaceId.

Update Tile Info (51-19279)

Updating tile info/subtitle dynamically using sap.n.Launchpad.UpdateTileInfo, would not work if the tile header had no image. Yes, strange but true ;)

Cordova Android version 12 (67)

Cordova Android 12 was recently released, please see release notes for details. This version makes it possible to target features of Android 13 (Tiramisu) devices. The option to use cordova android engine 12 has been added in the Neptune Cockpit: Mobile Client→Device→Preferences→Android→Cordova engine version. This version is the default in the newest version of cordova cli 12. Please note that cordova android 12 is not yet supported in Neptune MBS, but we expect to add the support shortly.

ModelData

Planet Allignment

The ModelData script from the Open Edition has been slightly improved. The script has been alligned between the Open Edition and the SAP Edition.

App Designer

UI5 NotificationList Control (18919, 19195, 19199)

The Neptune specific notification list control has a special binding concept. The new centralized JSON handler didin’t convert data correctly resulting in an empty list.

Dump when changing a binding of extension app after saving the app (22-19063)

When saving without activating an extension app and changing an attribute binding directly afterwards, a shortdump would be result in some cases.

Extension framework improvement (19-19024)

Small improvement to the extension framework to prevent duplication of code when enhancing an already existing object in the base application.

Error on Create New (19200)

When clicking the close button in the create new application dialog, opening an app afterwards would lead to an error stating that the application did not exist.

HomeIcon attribute (19422 )

The homeIcon attribute in the sap.m.App or sap.m.SplitApp object would be generated as a string and not a proper JS object.

Application Content Aware Help (19419)

Application content aware help would not work in dialogs.

FilterBar Model Data (19394)

The model would not be generated when adding model source to a sap.ui.comp.filterbar.FilterBar control.

Attribute Binding Dialog (19351)

API structures would only be requested from the server by Model Binding dialog. So if the Attribute Binding dialog was opened before the Model Binding dialog, the attribute table would be empty.

Activating App

When activating an app immediately after pressing the comment toggle button in the code editor, the action would not be registered.

Import Button

The import button for translations in extensions was deactivated.

Comment Toggle Button bug (47-19216)

Corrected a bug that prevented the commenting/uncommenting of code in scripts, when an app would be activated immediately after pressing the button to comment/uncomment. The code would not retain the change.

Extension Translations Import (55-19320)

The second time entering the app designer in an extension app, the Import button for translations would be deactivated. This has now been fixed.

SAP Portal

iView errors from SAP Enterprise Portal authentication are not shown(17-19041)

When there is an iView Error from the SAP Enterprise Portal authentication this is now show to the user in the mobile client login screen.

Cockpit

Navigation List Mouse Over

You can now enable mouse over functionality for the Cockpit Navigation List, giving you faster access to Cockpit tools.

c 105619 352a8872 468d 4c93 a0a5 1fce8b5f456b
Unicode Errors (38-19181)

Some special characters are used in the Neptune Cockpit applications. If the SAP system is not Unicode, the encoding of views would not encode the special characters correctly, cause cockpit views with the special characters to fail when loading.

Create Button

The label on the create buttons in the Neptune Cockpit services have been changef from "Add" to "Create".

Add tilegroup to itself

The search for tilegroups in the Cockpit Tilegroup Service, would not exclude the tilegroup it self.

F4 Search Help

Translation (19457)

The application /NEPTUNE/F4_SEARCH_HELP is now translated into all 31 supported languages.

Installation

Installation check improvements (25-19082)

A stricter validation of the Neptune ICF configuration has been introduced. If the nodes 'server' and 'public' are not created under the 'neptune' node, and these are not assigned user credentials, an error message will be provided. More details about how these nodes should be set up can be found in the installation guide.

Housekeeping

Housekeeping program missing API logs parameter (11-18983)

In the program /NEPTUNE/DELETE_LOG_ENTRIES there were missing parameters referring to the API Logs.