Salesforce

Application Execution Properties (Magic xpa 4.x)

« Go Back

Information

 
Created BySalesforce Service User
Approval Process StatusPublished
Objective
Description

Application Execution Properties (Magic xpa 4.x)

The Rich Client Deployment Builder generates a published Web page named <app_name>.publish.html. This file (located in the PublishedApplications\<project_name>\WinDesktop folder) includes an rcExecProps section with the following execution properties:

Property

Description

Mobile Support

protocol

The communication protocol to be used (http or https).

Android and iOS

server

The name / IP address of the server in which the Rich Client application will be stored.

Android and iOS

requester

The Web requester name to use.

Android and iOS

appname

The name of the application name where the running program is located. This is the name that the Web requester will use.

Android and iOS

prgname

The public name of the first program to be executed.

If this property is left blank, then only the Main Program will be executed. Note that you must have an MDI frame defined in this case.

Android and iOS

arguments

A comma-delimited list of argument values that are passed as parameters to the first executed program.

For example: <property key="arguments" val="ABC,FALSE,123"/>

Desktop Only

envvars

A comma-delimited list of the environment variables that the Rich Client will read from the client when it loads, allowing any executed task or handler to access it using the GetParam function.

For example:
<property key="envvars" val="USERDOMAIN,COMPUTERNAME"/>

UseWindowsXPThemes

Specifies whether controls whose Style property is set to Windows, will use Windows XP themes.

DPIAware

Specifies whether the application is DPI-aware. See also DPI-Aware. (Since version: 3.2b)

InternalLogFile

A reference to a file that will hold the logs of the client-side activities.

InternalLogLevel

The client log level. The following values are supported:

  • NONE: No log

  • BASIC: Logging of only HTTP requests' arrival and departures. This level is meant to be used for troubleshooting of production (and also testing) systems, especially in the areas of communication and component handshaking. Since version: 2.4b

  • SERVER: Logging of only HTTP requests and responses

  • SERVER#: SERVER + the content sent within requests and received within responses. SpecialClientSecureMessages=N should also be set, in order to view unscrambled content.

  • SUPPORT: SERVER + a few messages of .NET, SQLite gateway and data source conversions.

  • GUI: SUPPORT+ A few GUI messages logged by the client

  • DEV: All messages logged by the client

Note: The log content is secured and compressed, except for the BASIC and SUPPORT level log.


During development, the keyword sets the log level of the client. If the InternalLogFile keyword is defined, but InternalLogLevel is left blank, then the log will only include warning and errors.

During deployment, the keyword sets a maximum for the log level of the client.

If the keyword is not set, the maximum log level will be SERVER.

Logging for the Local gateway is based on this setting and not the logging level defined for the gateway on the server. So, for example, if the client's log level is defined as Support, the log will include the gateway log of Support level as well.

InternalLogSync

Controls the timing of opening and closing of the log:

  • Session – The log will be opened when the session starts and closed when the session ends – highest performance.

  • Flush – Same as Session + flushed for each message – average performance, and ensures that the log is up-to-date even if the client crashes.

  • Message – Opened and closed for each message (lowest performance; allows deleting the log during the session).

LogClientSequenceForActivityMonitor

Writes the client activities to a local log file on the client and sends it to the Activity Monitor upon restarting the client again after a crash occurred on the client side.

Default: off (No)

DisplayStatisticInformation

Shows a statistics screen at the end of each session and displays a tooltip with the last five server communications when the mouse hovers over the right side of the status bar.

Default: off (No)

See also How Do I Fine Tune My Rich Client Application?

HTTPCompressionLevel

Sets a compression level for requests and responses between the client and the Web requester, for messages exceeding a threshold of 3KB.

Valid values: None, Minimum, Normal, Maximum.

Default: Normal, except for execution by F7 (in which case the default is None).

Note: Using a high compression level will consume more memory on both the server and client sides.

Platform specific:

  • Only the None value is supported on Android and iOS devices.

  • For deployment in Rich Client and server (UNIX and OS/400) platforms, the HTTPCompressionLevel needs to be changed manually to None, since there is no compression when the server is a non-Windows platform.

Since version: 1.9

FirstHTTPRequestTimeout

Defines the timeout for connecting to the Magic xpa engine at startup.

This is the default HTTP timeout of the client until the client receives the HTTPRequestTimeout value from the server.

For non-offline enabled applications running on slower networks, it is advised to set this key with a higher value, such as 10 seconds in order to minimize the effect of communication failures.

If the request cannot be sent to the server, the client will wait for 1/10 of the HTTP request timeout and then resend the request.

Note that there are cases in which the value of this property does not apply, such as when trying to connect to an invalid IP address.

Default: 2 seconds

Since version: 2.4

Android

UseHighestSecurityProtocol

Determines the highest security protocol.

  • N – Same as in previous versions; i.e. TLS v1.2 and v1.1 are not allowed.

  • Y – TLS v1.2 will be used as the highest security protocol. In case the web server does not support TLS v1.2 then TLS v1.1 is used else the next lower version of TLS/SSL is used.

Default: N

Since version: 3.1

SecureRecentApps

Determines whether an app’s screens will be secured and therefore not be visible in the device’s Task Manager when switching between apps.

  • N – The app's screens will not be secured and will be visible.

  • Y – The app's screens will be secured and will not be visible.

Default: N

Since version: 3.2a

Android and iOS

Note: The following keys do not exist in the XML island by default. They can be manually added to the XML island in the html file after running the RC Deployment Builder or to the RC Deployment Builder templates (Add_On\Builders\Templates\PublishHtml.tpl for desktop and ExecutionProperties.tpl for mobile).

Expect100Continue

Determines whether to include or exclude the 'Expect: 100-continue' header.

You should set the value to N when using a proxy and receiving error 417 from the server.

Default: Y (sends the 'Expect: 100-continue' in the header of the 3rd request)

Since version: 1.9g

LogonRTL

Determines the text direction of the Logon and Set Password screens.

A value of Y will show the Logon and Set Password screens as RTL (right-to-left).

LogonWindowIconURL

Determines the icon that will be displayed in the Logon screen.

LogonImageURL

Determines the image that will be displayed in the Logon screen.

LogonWindowTitle

Determines the title of the Logon screen.

LogonGroupTitle

Determines the caption that will be displayed in the Logon screen.

LogonMessageCaption

Determines the message caption that will be displayed in the Logon screen.

LogonUserIDCaption

Determines the User ID caption that will be displayed in the Logon screen.

LogonPasswordCaption

Determines the Password caption that will be displayed in the Logon screen.

LogonOKCaption

Determines the OK caption that will be displayed in the Logon screen.

LogonCancelCaption

Determines the Cancel caption that will be displayed in the Logon screen.

DisplayGenericError

Determines whether to include or exclude the text of the partitioning errors.

When set to Y, details in the partitioning error message are excluded and when set to N, detailed partitioning error messages are issued.

Since version: 2.3

See also DisplayGenericError in [MAGIC_RIA]

Android and iOS

ClientCachePath

The location on the client where the cache files will be created. You can use this to change the default path, which is: %temp%MGRIACACHE\....

At Runtime, if this property is defined, the cache file will be created at the defined location. If the location does not exist, Magic xpa will attempt to create it. If it cannot be created, the default path will be used.

Since version: 3.1

Note: The following keys exist by default for mobile devices.

URL

Refers to an external execution properties file.

This is an alternative to specifying the execution settings (such as the server and application name) as hard coded values in the file installed on the devices.

When using this convention, you can easily change the execution settings file on the server without the need to build new client packages.

Platform specific: This property is not supported on Windows.

Android and iOS

URLTimeout

Defines the timeout for retrieving the execution properties file from the server when using the URL key.

This property is relevant only if a URL key is defined.

For applications running on slower networks, it is advised to set this key with a higher value, such as 10 second in order to minimize the effect of communication failures.

Default: 2 seconds

Platform specific: This property is not supported on Windows.

Since version: 2.4

Android and iOS

ConnectOnStartup

Defines whether the application connects to the server on each execution or only when the metadata is updated.

Y (default) – will try to connect to the server on each execution

N – will try to connect to the server only if the metadata was changed (meaning on the next execution after the server returned an error that the metadata was changed). Setting this property to N is useful when the client does not need to access the server upon startup.

This property is only relevant if the start program is an Offline program.

Since version: 2.4b

Android and iOS

Changes to Application Execution Properties

When you need to change the application execution properties, such as changing the Web server or alias, all you need to do is change the properties in this file on the server side.

When the RIA client is launched on the clients, it checks for updates made in this file. If there were changes, the updated file is copied to the cache folder on the client and the new execution properties will be used.

Reference
Attachment 
Attachment