Skip to content

What's New

Mobile Development Kit Client 6.3

New and enhanced features available with the Mobile Development Kit Client 6.3

New UI Controls

Object Card Collection

The object card is a flexible container with critical information regarding a single object. It displays a preview of the object, and serves as the entry point to the full object detail page. You can customize the object card to accommodate various content types and use cases.

For more information, see Object Card Collection and Object Card

Filter Feedback Bar

The filter feedback bar is a horizontal scroll area containing interactive chips that provide quick access to filter controls. The interactive chips indicate which filters have been applied, and what filters are available. You can toggle between the filters by tapping on the chips.

For more information, see Filter Feedback Bar

Enhancement

Fiori UI Enhancement

The following UI controls have been enhanced with the latest SAP Fiori design -

  • Object Cell - Enhanced design with new UI properties such as Avatar Stack (replacing the Detail Image), Avatar Grid, Horizontal Icons, Tags, and Display Description in mobile (by setting DisplayDescriptionInMobile to true). Metadata using previous ObjectCell properties will still render. You can migrate your metadata to take advantage of the new properties.

  • Object Header - Enhanced design with new UI properties such as Labels, Tags (with color options or styling), KPI View, the ability to display both status icon and text at the same time, and a new positioning option for status and sub-status.

  • Buttons - The design of the button controls such as Button Form Cell and Button Item (for Button Table) has been enhanced with new UI properties such as Button Types, Semantic, Image, and the ability to control the width of the button (full width or wrap content, only available for Section Button Table). There is a new horizontal layout option is introduced for Button Table.
  • Text Input - Text input such as Simple Property Form Cell, Note Form Cell, and Title Form Cell now comes in an enhanced design with a new UI property, Enabled, to allow the app to fully disable a control when it's set to false. Additionally, Simple Property Form Cell also allows user to show or hide entered value when the keyboard type is Password or NumberPassword.

Using NativeScript Views in Extensions

You can now create and return NativeScript views in your extension controls for Section Extension, Form Cell Extension, Object Cell Extension, and Object Header Extension.

You can follow the same approach that is used for Control Extension by returning a NativeScript view from the view() method and return false from the viewIsNative().

For more information check the Extensions guide

Sorting and Filtering for Additional Collection Types

Until now, data filtering and sorting options were only available for Object Table. Now these functionalities have also been extended for Grid Table, Data Table, Contact Cell, ObjectCollection, and Extension Collection. The sorting and filtering options for Extension Collection are only available in the mobile version.

Cross-Context SSO Login Support

The Cross-Context SSO feature simplifies the whole onboarding process for the users by transferring the identity of a user from an established session to their mobile app. With this feature, users can open the SSO onboarding URL on their desktop, login, and scan the one-time use QR code in the native app to onboard the app automatically without having to enter the credentials again.

To use this feature, enable the Cross-Context SSO option in your app's security settings in the mobile services cockpit. See Configuring Cross Context SSO for more information about setting up identity transfer for application onboarding.

Dynamically Switch Between Multi-User and Single-User Modes via QR Code

With this release, a new flag multiUser has been introduced in the onboarding QR code available in the mobile services cockpit and in SAP Business Application Studio. This flag indicates whether the client should be onboarded in multi-user mode or single-user mode. When Allow Upload of Pending Changes from Previous User (Enable Multiple User Mode) option under Mobile Settings Exchange is enabled in the cockpit, the generated QR code will automatically include multiUser=true, otherwise it will be set to multiUser=false. This flag will has higher priority over the MultiUserEnabled flag in the BrandedSettings.json.

Option to Override Application.app

The CIM file has been enhanced to support overriding of the Application.app.

For more information, see IntegrationPointApplicationApp

Extending Styling Support for Font Icons

You can now customize and style the font icons based on size and color aspects of the base image. The following properties can be customized:

ObjectCell > Icons
ObjectCell > ActionButton > Icon

ChartCard > TrendImage
KPIItem > Image

ObjectHeader > Chart > TrendImage
ObjectHeader > Chart > KPI > Icon
ObjectHeader > KPI > Icon

SideDrawer > DrawerButton
SideDrawer > Header > Icon
SideDrawerItem > Image

TabItem > Image

ToastMessage > Icon
PopoverItems > Icon

Toolbar Enhancement

We have introduced a new property for Toolbar in the source metadata - Visible, which can be used to set the visibility of the toolbar in a page.

We have also introduced Client API enhancement for the entire Toolbar and its items:

ToolbarProxy

ToolbarProxy represents the entire toolbar. This proxy is passed when a rule is assigned to the properties of the toolbar e.g. the Visible property.

It contains the following APIs:

  • getToolbarControls() - Legacy API that returns an array of toolbar items (NativeScript instance of the items).
  • getToolbarItems() - New API that returns an array of toolbar items proxy (ToolbarItemProxy) contained within the toolbar.
  • getToolbarItem(itemName) - New API that returns the ToolbarItemProxy instance of the item by name (as defined in the _Name property).
  • setVisible() - Set visibility of the entire toolbar.
  • getVisible() - Get visibility of the entire toolbar.

ToolbarItemProxy

ToolbarItemProxy represents each toolbar item, and is passed whenever a rule is assigned to a toolbar item's properties or events. For example, Caption or OnPress.

This proxy comes with the following APIs:

  • getParent() - New API that returns the item's parent ToolbarProxy.
  • setVisible() - Set visibility of a toolbar item.
  • getVisible() - Get visibility of a toolbar item.

Deprecation:

  • getToolbarControls() - This API is now deprecated. Instead, you can use the getParent().getToolbarControls() API to obtain the same result.

PageProxy

We have introduced a new API in PageProxy as part of this enhancement -getToolbar(), which returns the ToolbarProxy instance of the associated toolbar of that page.

DeviceID for Web Application

In the web runtime, the DeviceID property will now return the browser's user agent string.

OData Service

Option to Remove Defining Request Action

We have introduced a new Offline OData action to remove defining requests from the specified store. The new action - Action.Type.OfflineOData.RemoveDefiningRequest accepts the Offline OData service path and the name of a defining request, and can remove one defining request at a time.

This action requires the allow_defining_query_removal key to Y in the offline configuration for the given app in the mobile services cockpit (Mobile Offline Access > configuration > Endpoint Customization) This action can only be triggered after the corresponding offline service has been initialized. Also, removing a defining request does not necessarily mean that the local data is deleted as well. As long as another defining request is addressing the local data, the data remains intact.

We have also introduced a new client API - getDefiningRequests() that returns all the defining requests that are associated with a specific Offline OData Service via OfflineDataProviderProxy.

For more information, see Defining Request

Enhance Decimal Separator Support

We have modified Mobile Development Kit to accept both period and comma as decimal separators to support both formats in OData operations for Edm.Decimal properties. Comma will be accepted when the detected app locale region supports comma as the decimal separator.

Support Additional Return Types for Filter

Additional data types have been introduced for filters such as boolean, datetimeoffset, datetime, guid, date, time and duration. When one of these data types is returned via ReturnValue, it is processed internally and converted to a compatible format.

Branded Client

Support NPM Plugins

You can now install NPM plugins in your branded client using the NPMPlugins option in the MDKProject.json.

For more information, see Configuration Of MDKProject.json File

Support Additional Languages

Mobile Development Kit Client now supports the following additional languages:

  • Estonian (et)
  • Latvian (lv)
  • Welsh (cy)

Mobile Development Kit Editor 6.3

Title Type Environment Description Available as of
Support Client 6.3 metadata New Neo (Web IDE) Support new metadata changes for Client 6.3 Sep 15, 2022
Support Client 6.3 metadata New CF (Business Application Studio) Support new metadata changes for Client 6.3 as Business Application Studio extension Sep 15, 2022
Show Different Features Based On the Schema Version New CF (Business Application Studio) Show Different Features Based On the Schema Version Sep 15, 2022
Support Design Time Target New CF (Business Application Studio) Support Design Time Target Sep 15, 2022

Last update: September 15, 2022