Skip to content

Interface: IPageProxy

ClientAPI used if the current context is a page.

Hierarchy

Implemented by

Summary

Properties

Methods

Properties

actionResults

actionResults: any

Inherited from IClientAPI.actionResults

provide property for action results


binding

binding: Object

Inherited from IClientAPI.binding

Provide a simple property access to the binding


currentPage

currentPage: any

Inherited from IClientAPI.currentPage

Get the topmost page in the navigation stack

Methods

base64StringToBinary

base64StringToBinary(base64: string): Promise‹any›

Inherited from IClientAPI.base64StringToBinary

This method converts base64 string to binary data

Parameters:

Name Type Description
base64 string base64 string

Returns: Promise‹any›

a promise with a binary data once it is resolved


callFunction

callFunction(serviceName: string, oFunction: object, headers?: Object): Promise‹any›

Inherited from IClientAPI.callFunction

Invoke an OData function import. Returns a Promise which resolves to the result(if existing) of the operation

Parameters:

serviceName: string

service name

oFunction: object

function name

Name Type
Name string
Parameters? object

Optional headers: Object

Returns: Promise‹any›

returns a Promise which resolves to the result(if existing) of the operation


count

count(serviceName: string, entitySet: string, queryOptions?: string, headers?: Object, requestOptions?: Object): Promise‹number›

Inherited from IClientAPI.count

Perform a count on an entity set.

Parameters:

Name Type Description
serviceName string service name
entitySet string entityset name
queryOptions? string query options
headers? Object request headers
requestOptions? Object request options

Returns: Promise‹number›

returns a Promise which resolves to the result of the operation


create

create(serviceName: string, entitySet: string, properties: object, createLinks: ILinkSpecifierProxy[], headers?: object, requestOptions?: object): Promise‹any›

Inherited from IClientAPI.create

Perform an operation to create odata entity. Returns a Promise which resolves to the result of the operation.

Parameters:

serviceName: string

service name

entitySet: string

entityset name

properties: object

an object to sotre the propterties object with key/value pair

Name Type
key string
value any

createLinks: ILinkSpecifierProxy[]

list of readlinks

Optional headers: object

an object to sotre the header object with key/value pair

Name Type
key string
value any

Optional requestOptions: object

Name Type
key string
value any

Returns: Promise‹any›


createLinkSpecifierProxy

createLinkSpecifierProxy(property: string, entitySet: string, queryOptions?: string, readLink?: string): ILinkSpecifierProxy

Inherited from IClientAPI.createLinkSpecifierProxy

Create LinkSpecifierProxy to be consumed by odata link action. one of queryOptions or readLink is required.

Parameters:

Name Type Description
property string property name
entitySet string entityset name
queryOptions? string query options
readLink? string readlink name

Returns: ILinkSpecifierProxy


dismissActivityIndicator

dismissActivityIndicator(id?: number): void

Inherited from IClientAPI.dismissActivityIndicator

Dismiss activity indicator

Parameters:

Name Type Description
id? number The id of the activity indicator to be dismissed. If no id is provided, the top activity indicator will be dismissed. Using ids ensures that the right text will be shown at all times if multiple indicators can be displayed, for example due to chained actions.

Returns: void


downloadInProgressForPage

downloadInProgressForPage(page: string): boolean

Inherited from IClientAPI.downloadInProgressForPage

Determine if a dowload is in progress for this page

Parameters:

Name Type
page string

Returns: boolean


downloadInProgressForReadLink(readLink: string): boolean

Inherited from IClientAPI.downloadInProgressForReadLink

Determine if a dowload is in progress for this readLink

Parameters:

Name Type
readLink string

Returns: boolean


evaluateTargetPath

evaluateTargetPath(path: string): any

Inherited from IClientAPI.evaluateTargetPath

Synchronously evaluate the target path and return the value from the resulting context.

Parameters:

Name Type Description
path string the target path to be evaluated

Returns: any

the value from the resulting context. If an element is on the context, consider that the final value. Otherwise use binding.


evaluateTargetPathForAPI

evaluateTargetPathForAPI(path: string): IClientAPI

Inherited from IClientAPI.evaluateTargetPathForAPI

SynchronouslyeEvaluate the target path and return the ClientAPI instance which encapsulates the result

Parameters:

Name Type Description
path string the target path to be evaluated. Cannot be undefined or empty

Returns: IClientAPI

a ClientAPI instance holding the result of target path evaluation, which can vary from a simple string to a view representation.


executeAction

executeAction(actionPath: string): any

Inherited from IClientAPI.executeAction

Execute an action. To ensure that the application waits for the action to complete, you must return the Promise returned by this method as the result of the rule. Not doing this may cause the action binding and pressed item to be reset before the action completes.

Parameters:

Name Type Description
actionPath string the action path

Returns: any


formatBase64String

formatBase64String(base64: string, contentType: string): string

Inherited from IClientAPI.formatBase64String

This method formats MDK base64 string with content type

Parameters:

Name Type Description
base64 string base64 string
contentType string base64 content type like "image/jpeg", "application/pdf"

Returns: string

formatted base64 string.


formatCurrency

formatCurrency(value: number, currencyCode: string, customLocale?: string, customOptions?: any): string

Inherited from IClientAPI.formatCurrency

This method is to format number into currency display format according to selected locale

Parameters:

Name Type Description
value number numeric value to be formatted into currency display format
currencyCode string currency code to format
customLocale? string custom locale to be used in formatting the value
customOptions? any custom options to be used in formatting the value. The available options are: minimumIntegerDigits: The number of integer digits allowed as output. Default is 1 (System default); minimumFractionDigits: The minimum number of digits after the decimal separator allowed as output. Default is 0 (System default); maximumFractionDigits: The maximum number of digits after the decimal separator allowed as output. The default is managed by system default based on currency code; useGrouping: Determines whether the display should show the group separator. The default is managed by system default based on currency code; Example:

Returns: string

formatted number in currency display format


formatDate

formatDate(date: Date, customLocale?: string, customTimeZone?: string, customOptions?: any): string

Inherited from IClientAPI.formatDate

This method is to format date object into locale Date string

Parameters:

Name Type Description
date Date date value to be formatted into locale string. Accepted values are datetime object, datetime in UTC string, timestamp number, datetimeoffset string
customLocale? string custom locale to be used in formatting the value
customTimeZone? string custom time zone to be used in formatting the value, must be a valid time zone name e.g. UTC, GMT+8, Europe/Berlin
customOptions? any custom options (in JSON object format) for formatting the value. Currently, the supported key is 'format' with the following possible value: 'short','medium','long','full'. Default: medium

Returns: string

formatted string


formatDatetime

formatDatetime(date: Date, customLocale?: string, customTimeZone?: string, customOptions?: any): string

Inherited from IClientAPI.formatDatetime

This method is to format date object into locale DateTime string

Parameters:

Name Type Description
date Date date value to be formatted into locale string. Accepted values are datetime object, datetime in UTC string, timestamp number, datetimeoffset string
customLocale? string custom locale to be used in formatting the value
customTimeZone? string custom time zone to be used in formatting the value, must be a valid time zone name e.g. UTC, GMT+8, Europe/Berlin
customOptions? any custom options (in JSON object format) for formatting the value. Currently, the supported key is 'format' with the following possible value: 'short','medium','long','full'. Default: medium (date), short (time)

Returns: string

formatted string


formatNumber

formatNumber(value: number, customLocale?: string, customOptions?: any): string

Inherited from IClientAPI.formatNumber

This method is to format number according to selected locale

Parameters:

Name Type Description
value number numeric value to be displayed in format according to selected locale
customLocale? string custom locale to be used in formatting the value
customOptions? any custom options to be used in formatting the value: The available options are: minimumIntegerDigits: The number of integer digits allowed as output. Default is 1 (System default); minimumFractionDigits: The minimum number of digits after the decimal separator allowed as output. Default is 0 (System default); maximumFractionDigits: The maximum number of digits after the decimal separator allowed as output. Default is 2 (MDK default); useGrouping: Determines whether the display should show the group separator. Default is true (MDK default); Example:

Returns: string

formatted number


formatPercentage

formatPercentage(value: number, customLocale?: string, customOptions?: any): string

Inherited from IClientAPI.formatPercentage

This method is to format number to into percent display format

Parameters:

Name Type Description
value number numeric value to be formatted into percent display string
customLocale? string custom locale to be used in formatting the value
customOptions? any custom options to be used in formatting the value: The available options are: minimumIntegerDigits: The number of integer digits allowed as output. Default is 1 (System default); minimumFractionDigits: The minimum number of digits after the decimal separator allowed as output. Default is 0 (System default); maximumFractionDigits: The maximum number of digits after the decimal separator allowed as output. Default is 2 (MDK default); useGrouping: Determines whether the display should show the group separator. Default is true (MDK default); Example:

Returns: string

formatted number in percentage


formatScientific

formatScientific(value: number, customLocale?: string, customOptions?: any): string

Inherited from IClientAPI.formatScientific

This method is to format scientific style number according to selected locale

Parameters:

Name Type Description
value number numeric value to be displayed in scientific style according to selected locale
customLocale? string custom locale to be used in formatting the value
customOptions? any custom options to be used in formatting the value: The available options are: minimumIntegerDigits: The number of integer digits allowed as output. Default is 1 (System default); minimumFractionDigits: The minimum number of digits after the decimal separator allowed as output. Default is 0 (System default); maximumFractionDigits: The maximum number of digits after the decimal separator allowed as output. Default is 2 (MDK default); useGrouping: Determines whether the display should show the group separator. Default is true (MDK default); Example:

Returns: string

formatted number


formatTime

formatTime(date: Date, customLocale?: string, customTimeZone?: string, customOptions?: any): string

Inherited from IClientAPI.formatTime

This method is to format date object into locale Time string

Parameters:

Name Type Description
date Date date value to be formatted into locale string. Accepted values are datetime object, datetime in UTC string, timestamp number, datetimeoffset string
customLocale? string custom locale to be used in formatting the value
customTimeZone? string custom time zone to be used in formatting the value, must be a valid time zone name e.g. UTC, GMT+8, Europe/Berlin
customOptions? any custom options (in JSON object format) for formatting the value. Currently, the supported key is 'format' with the following possible value: 'short','medium','long','full'. Default: short

Returns: string

formatted string


getActionBinding

getActionBinding(): any

Set the binding that is being used by the current action

Returns: any


getActionResult

getActionResult(key: string): IActionResult

Inherited from IClientAPI.getActionResult

Get the action result stored under the unique key

Parameters:

Name Type
key string

Returns: IActionResult


getAppEventData

getAppEventData(): any

Inherited from IClientAPI.getAppEventData

Get the data which provides additional information about an app event, such as an app launch or exit, if such an event just occurred

Returns: any


getBindingObject

getBindingObject(): Object

Inherited from IClientAPI.getBindingObject

Get the current context's binding object

deprecated - use the new property getter

Returns: Object


getCaption

getCaption(): string

Inherited from IControlContainerProxy.getCaption

Returns: string

designer specified caption or the empty string


getCircularImage

getCircularImage(base64EncodedImageStr: string): string

Inherited from IClientAPI.getCircularImage

Converts a regular rectangular image into a circular one.

Parameters:

Name Type Description
base64EncodedImageStr string The Base64 image string which is to be made circular

Returns: string

A Base64 string of the circular image, this image will be in PNG extensions.


getClientData

getClientData(): Object

Inherited from IClientAPI.getClientData

Get the client data object. This starts out as a plain JavaScript object, and can be modified to hold application state. Can only be accessed for IClientAPI instances associated with a UI element, because that guarantees that the data will last for the lifetime of that element.

Returns: Object


getControl

getControl(name: string): IControlProxy

Inherited from IControlContainerProxy.getControl

Gets the associated control by name. This is a top-level search and does not drill down into other containers.

Parameters:

Name Type Description
name string The control name specified by the _Name definition property.

Returns: IControlProxy

The control assocated with the name parameter


getControls

getControls(): IControlProxy[]

Inherited from IControlContainerProxy.getControls

This method returns the top-level controls for this container

Returns: IControlProxy[]

The controls for this container


getDefinitionValue

getDefinitionValue(target: string): Promise‹any›

Inherited from IClientAPI.getDefinitionValue

Return the value for given definition.

Parameters:

Name Type Description
target string : any valid definition like rule/action path/global path/binding/targetpath etc

Returns: Promise‹any›

Promise resolution.


getGlobalDefinition

getGlobalDefinition(globalPath: string): any

Inherited from IClientAPI.getGlobalDefinition

Get the global definition for the specified path.

Parameters:

Name Type
globalPath string

Returns: any


getGlobalSideDrawerControlProxy

getGlobalSideDrawerControlProxy(): ISideDrawerControlProxy

Get the global side drawer control proxy

Returns: ISideDrawerControlProxy


getIconTextImage

getIconTextImage(iconText: string, width: number, height: number, isCircular: true, stylesJSON?: string): string

Inherited from IClientAPI.getIconTextImage

Creates an Image out of text provided in the iconText parameter. A max of two letters can be displayed on the image.

Parameters:

Name Type Description
iconText string Text that is to be used for generating the IconTextImage
width number Width of the image
height number Heght of the image
isCircular true Decides whether the image should be circular in shape
stylesJSON? string FontSize, FontColor and BackgroundColor can be given in a Json to style the IconTextImage

Returns: string

a Base64 string of IconTextImage.


getLanguage

getLanguage(): string

Inherited from IClientAPI.getLanguage

This method is to get current app language from app settings.

Returns: string

app language


getLogger

getLogger(): LoggerManager

Inherited from IClientAPI.getLogger

Get the singleton instance of the LoggerManager. If it has not been initialized yet, it throws exception

Returns: LoggerManager


getMissingRequiredControls

getMissingRequiredControls(): Object[]

After running a CheckRequiredFields action, this method is to return a list of any controls whose value were found to be missing when required.

Returns: Object[]


getMobileServiceAppId

getMobileServiceAppId(): string

Inherited from IClientAPI.getMobileServiceAppId

This method is to get AppId used for application in Mobile Services on SAP Cloud Platform.

Returns: string


getMobileServiceEndpointUrl

getMobileServiceEndpointUrl(): string

Inherited from IClientAPI.getMobileServiceEndpointUrl

This method is to get Endpoint Url of connection to application in Mobile Services on SAP Cloud Platform .

Returns: string


getPageProxy

getPageProxy(): IPageProxy

Returns: IPageProxy

the Page self


getPasscodeSource

getPasscodeSource(): number

Inherited from IClientAPI.getPasscodeSource

Return Passcode Source.

0 - no passcode or unknown, 1 - user, 2 - device(iOS Only) 3 - Device and User (Android Only) Note: Android must always have a passcode for biometrics hence value 3

Returns: number


getPendingDownload

getPendingDownload(page: string): any

Inherited from IClientAPI.getPendingDownload

This method delgates to the AppSettingsManager to determine if the current page has a pending download.

Parameters:

Name Type Description
page string page object path

Returns: any

returns a pending download for this page, which is a JSON action binding associated with the download. Otherwise undefined


getPressedItem

getPressedItem(): PressedItem

retuen the control, toolbar item or action bar item that was most recently pressed on this page.

Returns: PressedItem


getReadLink(path: string): string

Inherited from IClientAPI.getReadLink

get the current context's binding's read link if any. Undefined otherwise

Parameters:

Name Type Description
path string target path into the binding

Returns: string


getRegion

getRegion(): string

Inherited from IClientAPI.getRegion

This method is to get current app region from app settings.

Returns: string

app region


getRegions

getRegions(): Object

Inherited from IClientAPI.getRegions

This method is to get list of regions

Returns: Object

list of regions in key value pairs


getSAPPassportHeaderValue

getSAPPassportHeaderValue(componentName: string, action: string, traceFlag: string, componentType: string, prevComponentName?: string, userId?: string): string

Inherited from IClientAPI.getSAPPassportHeaderValue

Get SAP Passport header value

Parameters:

Name Type Description
componentName string Name of the initial component. Default to 'MDK' if empty or null.
action string Name of executed action. Default to null if empty.
traceFlag string Trace configuration. Accepted values are: StatisticsOnly, SAPTraceLevel_SQL, SAPTraceLevel_Buffer, SAPTraceLevel_Enqueu, SAPTraceLevel_RFC, SAPTraceLevel_Permission, SAPTraceLevel_Free, SAPTraceLevel_CFunction, DSR_ABAP_Trace_Flag, SAPTraceLevel_ABAPCondens0, SAPTraceLevel_ABAPCondens1, DSR_SAT_Trace_Flag, ESP_WebService_Flag, HTTP, TRCLVL_None, TRCLVL_Low, TRCLVL_Medium, TRCLVL_High Default to 'TRCLVL_Low' if empty or null.
componentType string Type of initial component. Accepted values are: Undefined, Webas, J2EE, Trex, ICM, Gateway, CPIC, Browser, TraceLib, DotNet, Eclipse, PI_For_SAP_Sender, SCP_For_NonSAP_Sender, PI_For_NonSAP_Sender, SAP_Partner, SCP_Request_Or_Determination_Later_In_Processing, S4, SFSF, Ariba, Concur, Fieldglass, Callidus, BYD, IBP, Hybris, SMB_B1, Industry_Cloud, Leonardo, Customer_Checkout, CoPilot Default to 'Undefined' if empty or null.
prevComponentName? string Optional. Name of previous component. Default to initial component name if unspecified.
userId? string Optional. ID of user who is processing the request. Default to '' if unspecified.

Returns: string

it returns a string of SAP Passport value to be used on request header. The header name to be used is "SAP-PASSPORT"


getSupportedLanguages

getSupportedLanguages(): Object

Inherited from IClientAPI.getSupportedLanguages

This method is to get list of supported languages

Returns: Object

list of supported languages in key value pairs


getVersionInfo

getVersionInfo(): Object

Inherited from IClientAPI.getVersionInfo

Get the versions of application, definitions, SDK & etc

Returns: Object

it returns an array of key/value pairs to represent the versions for different components. iOS app and Android app may have different components and versions.

iOS app may inlcude the following keys: "Application Version", "Definitions Version", "SAPMDC", "SAPCommon", "APFiori", "SAPFioriFlows", "SAPFoundation", "SAPOfflineOData", "SAPOData"

Android app may include the following keys: "Application Version", "Definitions Version", "MDKClient Version", "com.sap.cloud.android:foundation", "com.sap.cloud.android:onboarding", "com.sap.cloud.android:fiori", "com.sap.cloud.android:odata", "com.sap.cloud.android:offline-odata"

WebApp may include the following keys: "Definition Version", "WebClient Version", "@ui5/webcomponents Version", "ui5-webcomponents-mdk Version"


initializeLogger

initializeLogger(fileName: string, maxFileSize: number): any

Inherited from IClientAPI.initializeLogger

Initializes the LoggerManager and adds the log file handlers

Parameters:

Name Type Description
fileName string Optional, File name of the local log file on the client device. If missing, default value is ClientLog.txt
maxFileSize number Optional, Max file size before rollover of the local log file on the client device. If missing, default value is 5MB

Returns: any


isCurrentPage

isCurrentPage(pageName: string): boolean

Inherited from IClientAPI.isCurrentPage

Determine if the page is the topmost page in the navigation stack

Parameters:

Name Type
pageName string

Returns: boolean


isDemoMode

isDemoMode(): Boolean

Inherited from IClientAPI.isDemoMode

Determine if it is in demo mode

Returns: Boolean


isMediaLocal

isMediaLocal(serviceName: string, entitySet: string, readLink: string): Promise‹boolean›

Inherited from IClientAPI.isMediaLocal

Get whether or not the media object for the supplied readLink exists and is local

Parameters:

Name Type Description
serviceName string service name
entitySet string entityset name
readLink string readlnk name

Returns: Promise‹boolean›

a promise with a boolean result once it is resolved


localizeText

localizeText(key: string, dynamicParams?: string[]): string

Inherited from IClientAPI.localizeText

This method is to localize text

Parameters:

Name Type Description
key string key of text to be localized
dynamicParams? string[] -

Returns: string

localized text


read

read(serviceName: string, entitySet: string, properties: string[], queryOptions?: string, headers?: Object, requestOptions?: Object): Promise‹any›

Inherited from IClientAPI.read

Perform a query on an entity set. Returns a Promise which resolves to the result of the operation

Parameters:

Name Type Description
serviceName string service name
entitySet string entityset name
properties string[] list of properties to be read
queryOptions? string query optins
headers? Object request headers
requestOptions? Object request options

Returns: Promise‹any›

returns a Promise which resolves to the result of the operation


redraw

redraw(): any

Redraw the page

Returns: any


sendMobileServiceRequest

sendMobileServiceRequest(path: string, params?: any): Promise‹any›

Inherited from IClientAPI.sendMobileServiceRequest

Send a request to application's mobile service on SAP Cloud Platform

deprecated - use the new sendRequest API

Parameters:

Name Type
path string
params? any

Returns: Promise‹any›


sendRequest

sendRequest(path: string, params?: any): Promise‹any›

Inherited from IClientAPI.sendRequest

This method is to send a request to application's mobile service on SAP Cloud Platform.

  • Example of the params parameter:
    {
      "method": "<string>",
      "header": {
        "<key1>": "<value as string>",
        "<key2>": "<and so on>",
      },
      "body": "<string>"
    }
    

Parameters:

Name Type Description
path string Relative path of request via application's mobile services on SAP Cloud Platform.
params? any Optional. An object consists of method, header, and body of request.
Note: If params is not given, request is set as GET method by default. See description above for the example.
  • method is string representing the HTTP Method to use. Supported value for methods are: GET, HEAD, POST, PUT, DELETE, PATCH, CONNECT, OPTIONS, and TRACE.
  • header should be an object with key-value pair
  • body should be request body String, Binary, FormData, JSON object or Array.
  • - String should be a string converted from data payload based on the "Content-Type" set in header.
  • - Binary should be native data from file. The "Content-Type" in header should be set according to the content of file.
  • - FormData is converted to binary with the request body specially formatted as a series of "parts", separated with MIME boundaries. The "Content-Type" in header should be set to multipart/form-data.
  • - JSON Object or Array is converted to JSON string. The "Content-Type" in header is set to application/json by default.
  • Returns: Promise‹any›


    setActionBarItemVisible

    setActionBarItemVisible(item: number, visibleFlag: boolean): any

    Set specified actionBar item on page to visible/hidden

    Parameters:

    Name Type Description
    item number the position of the item.(zero based, first item on actionBar is 0 and second is 1 etc.)
    visibleFlag boolean if true set item to visible else hidden.

    Returns: any


    setActionBinding

    setActionBinding(binding: Object): any

    Set the binding to be used by the current action. For example, a navigation would set this to pass on the binding for the next page which is navigated to.

    Parameters:

    Name Type
    binding Object

    Returns: any


    setApplicationIconBadgeNumber

    setApplicationIconBadgeNumber(badge: number): any

    Inherited from IClientAPI.setApplicationIconBadgeNumber

    Set the application icon badge number Note: This function is for iOS only

    Parameters:

    Name Type Description
    badge number the number to set

    Returns: any


    setCaption

    setCaption(caption: string): any

    Parameters:

    Name Type Description
    caption string new caption value

    Returns: any


    setLanguage

    setLanguage(language: string): void

    Inherited from IClientAPI.setLanguage

    This method is to set app language into app settings.

    Parameters:

    Name Type
    language string

    Returns: void


    setRegion

    setRegion(region: string): void

    Inherited from IClientAPI.setRegion

    This method is to set app region into app settings.

    Parameters:

    Name Type Description
    region string region

    Returns: void


    setStyle

    setStyle(styleClass: string, subControl: string): any

    Apply styles to a control

    Parameters:

    Name Type Description
    styleClass string The name of the style class to be applied
    subControl string The name of the control to apply the style to. It could be either 'ActionBar' or 'ToolBar'. If this is '', the style is applied to the entire page.

    Returns: any

    this for chaining

    See Styles/ docs for details.


    setToolbarItemCaption

    setToolbarItemCaption(toolbarItemName: string, newCaption: string): Promise‹any›

    Asynchronously apply a new caption to a toolbar item on page

    Parameters:

    Name Type Description
    toolbarItemName string the name of the item to modify caption
    newCaption string the new caption

    Returns: Promise‹any›


    showActivityIndicator

    showActivityIndicator(text?: string): number

    Inherited from IClientAPI.showActivityIndicator

    Show activity indicator with specified text

    Parameters:

    Name Type Description
    text? string The text to be shown

    Returns: number

    The id which can be used to dismiss the activity indicator


    updateProgressBanner

    updateProgressBanner(message: string): void

    Inherited from IClientAPI.updateProgressBanner

    Update an existing progress banner with new text. If no progress banner action is in progress, no banner will be displayed.

    Parameters:

    Name Type Description
    message string The text to show on the progress banner

    Returns: void