Application Definition

The application definition type represents the mobile application within the project and all definitions for the application are its descendents. The attributes of the application definition are those that affect application-level behaviors. These include the application name and version, the appearance of built-in Client screens, login and password settings, application-wide screen and user interface behaviors, and other similar items. The application definition is the single root definition in the application hierarchy and as such has no parent definition.

When a new application project is created in the Agentry Editor, an application definition is automatically created. Its attributes are set to defaults that should be reviewed thoroughly early in the development process. These attributes can affect security, appearance, and numerous other behaviors of the application.

General Setting Attributes

The general setting attributes for the application a provide project name, the application’s display name, and a version value.
  • Name: This is the internal name of the application. This value is used for certain checks during publish.
  • Display Name: This is the name of the application as displayed on the Agentry Client. This value appears in the title bar of the application and in the About dialog displayed from the Agentry Client’s Help menu. For any newly created application project this is set to a default of Agentry and should be changed.
  • Version: This value is also displayed to the user in the About screen. This value is not related in any way to the application’s publish version number. This attribute value is provided for branding purposes only and will not impact any aspect of the application’s behavior. Typically this reflects the application’s release version.

Application Setting Attributes

Table Settings - These attributes affect the behavior of data synchronization related to the two table definition types, data tables and complex tables.
  • Check Data Tables: Specifies how often the application will check for new or changed data for the application’s data tables. The choices are “Every Transmission”, “Once per day”, and “Once per week”. In between the specified intervals, no synchronization components of the application’s data tables will be processed during a transmit. A published change to the data table definition will override this attribute, forcing a reload of the data table during the next Agentry Client transmit.
  • Check Complex Tables: Specifies how often the application will check for new or changed data for the application’s complex tables. The choices are “Every Transmission”, “Once per day”, and “Once per week”. In between the specified intervals, no synchronization components of the application’s complex tables will be processed during a transmit. A published change to the complex table definition will override this attribute, forcing a reload of the complex table during the next Agentry Client transmit.
  • User Request: This setting specifies whether or not users can explicitly check for changes to the application’s complex tables and data tables. This is a means of providing users with a manual override for the Check Data Tables and Check Complex Tables attribute settings. When User Request is enabled, users will be able to force the synchronization process to include the processing of the data table and complex table definitions’ synchronization components. Users will be able to force this behavior by selecting the menu item “Check for Table Updates” in the Agentry Client’s Off-Line menu. This attribute will have no effect when the Check Data Tables and Check Complex Tables attributes are set to “Every Transmission”.
Client Settings - Client Settings affect various behaviors of the client application at runtime.
  • When Exiting Client: This enables a warning message displayed to the user if there are pending transactions stored on the Agentry Client when they exit the application.
  • Prompt on User Change: This enables a prompt when a user change occurs, informing the user that a synchronization with the Agentry Server must take place to change users and gives the user the option to cancel the user change. If this is disabled, the synchronization will still occur to complete a user change, but no prompt will be displayed.
  • Module Menu Item: This attribute specifies whether or not the menu item for the current module is enabled or disabled in the Agentry Client’s View menu at runtime. Selecting the current module from the View menu will return the user to the module’s main screen set, regardless of where they may be in the navigation. When disabled, the menu item for the current module is disabled. Users can always select other module items in this menu for applications with multiple modules regardless of this setting.
  • Synchronize Clocks: This attribute specifies whether or not the system time on the client device will be reset to that of Agentry Server’s host system time during each transmit. Note that this time is not the time of the back end system with which the Agentry Server communicates. It is the system time as reported by the operating system of the Agentry Server’s host system. This is typically disabled in deployments involving multiple time zones.
  • Screen Size: This setting specifies the size of all screens displayed to the user on the Agentry Client. This attribute will only effect Agentry Client applications running on a Windows PC platform capable of full VGA screen resolution. The screen sizes available for this setting range from 240 x 320 (1/4 VGA) to 1366 x 768. The Screen Size value will override the screen size attribute for all platform definitions. There is also the available setting “Allow Resize”. If any selection other than Allow Resize is made, users will not be able to resize Agentry Client screens. The screen size for all mobile devices, including smart phones tablets, and other devices, is always full resolution of those devices and users can never resize the screens.
  • Battery Status: For mobile devices, the status of the battery can be displayed on the Agentry Client. This will appear in either the upper or lower portion of the screen, depending on the device. Note that this setting has no effect on the Windows PC builds of the Agentry Client.
  • WinCE Navigation: This setting enables support for the arrow keys of a device’s hardware keyboard. When a user clicks one of the arrow keys, the focus of the screen will be changed to the next or previous control on that screen. This attribute has no effect on the Windows PC builds of the Agentry Client, where full keyboard navigation is always enabled.
  • Scan Trigger Shortcut Key: For devices equipped with a scanner, this attribute allows for the specification of a shortcut key to activate the scanner. This key will be universal to the application, and will activate both socket and built-in scanners. This attribute will have no affect on Agentry Clients running on devices not equipped with a scanner.
  • Voice Support: Enables voice support for devices that support this feature.
  • Title Bar Buttons: This attribute specifies whether or not the close buttons (either an X or an OK button) are displayed on the title bar of screens within the mobile application. Due to the behavior of Pocket PC devices, it is recommended that these buttons not be displayed and that actions are defined within the Agentry application project to close screen sets within the application, and that users close the application itself using either the File | Exit menu item, or through an action containing an Exit Application action step. Note that on Pocket PC devices, screens closed with the title bar’s OK button are not destroyed, but rather only moved to the end of the “Z” order, hiding them from view. Applications closed with the X button of the title bar are not actually exited. Any defined behaviors for exiting an application will not be exhibited. Furthermore, the application itself will still be running. The behaviors described here are not present on a Windows PC platform.
  • Theme Selection: This attribute specifies whether or not the Theme menu item within the Preference menu of the Agentry Client is displayed. When true (checked) the user can change the Agentry Client theme using this menu. When false, the user cannot change the Agentry Client theme and the theme displayed is always the one selected in the Default Theme attribute. Allowing user’s to select a different theme can have unexpected impact on the UI of the Agentry Client if styles are defined and in use.
  • Default Theme: The theme selected is the default theme displayed on the Agentry Client at run-time. If Theme Selection is disabled, the selected Default Theme is always displayed and the user cannot change the theme selection. If Theme Selection is enabled, the selected Default Theme will be the initially applied theme on the Agentry Client, but the user can select a different theme at any time.
  • Win32 Buttons - Use large buttons: This attribute specifies whether or not to use large sized buttons. This attribute affects only the Windows PC platform types. When true, screen buttons are displayed in a large size, generally intended for touch screen support. This setting affects button definitions for list and detail screens. Built-in buttons, such as ellipses buttons, icon buttons, and similar controls are not affected. Note that large buttons are not displayed in the Agentry Editor’s layout view or visual screen editor for screen definitions. They are displayed in the Agentry Test Environment when the selected platform is Windows.

Application Styles Attributes

The attributes listed in the Application Styles tab define how styles are to be applied to all components of the application’s user interface. These style settings may be overridden at lower levels in the application’s structure. The style settings here also impact what styles are applied to the Agentry Client’s built in screens and dialogs, such as those for complex table searches, the transmit dialog, and others. For all style attributes, the option “--Default--” will default to the operating system’s default font and color options.

Screen Styles
  • Tabs: The style to apply to the tab controls representing each screen within an object screen set. This attribute has no effect on screens within a transaction or fetch screen set.
  • Buttons: The style to apply to all button definitions on all application screens. This includes buttons displayed on built-in Agentry Client screens as well as buttons within screen definitions.
  • Focused Buttons: The style to apply to the button that currently has the focus. This includes buttons displayed on built-in Agentry Client screens as well as buttons within screen definitions.
Detail Screen Styles
  • Screen: The style to apply to all detail screens defined within the application. This will affect all portions of the screen not displaying a field or button.
  • Fields: The style to apply to all fields displayed on a detail screen.
  • Focused Fields: The style to apply to the detail screen field that currently has the focus.
  • Read-Only Fields: The style to apply to a detail screen field defined to be read-only. If not specified, the Fields style is applied.
  • Hyperlinks: The style to apply to detail screen field labels defined to be hyperlinks.
  • In Progress Edit Screens: The style to apply to screens in which changes are currently being made and have not yet been applied. This affects screens displayed in List Tile View and Tile Edit fields.
List Screen Styles
  • Screen: The style to apply to all list screens as a whole. This will affect all portions of the screen not displaying a list, header label, detail pane, or button.
  • Header Label: The style to apply to all list screen header labels. If no header label is defined this attribute has no affect on the screen.
  • Column Labels: The style to apply to the column labels on the screen’s list control. This style is applied to the column labels of any screen containing a list control, including both built-in Agentry Client screens as well as list screen definitions, and list view field definitions.
  • Rows: The style to apply to all rows on a list screen. The Hyperlinks optional style will override the Rows style for cells with hyperlinks. This style is applied to the list items of any screen containing a list control, including built-in Agentry Client screens, list screen definitions, and list view field definitions.
  • Alternate Rows: The style to apply to every other row in a list, beginning with the second row. The Hyperlinks optional style will override the Alternate Rows style for every other row where there are cells containing hyperlinks.
  • Highlight Rows: The style to apply to a row for the purposes of drawing attention to that row. This style attribute should not be set at the application level. The platform and list screen definition types both contain a Highlight Rows attribute that should be used.
  • Selected Rows: The style to apply to the row or rows currently selected by the user in the list control. The optional Hyperlink style will be applied to any cells within the selected row containing a hyperlink.
  • Selected No Focus Row: The style to apply to the row or rows currently selected by the user in the list control, when the input focus is set to some control other than the list control. The optional Hyperlink style will be applied to any cells within the selected row containing a hyperlink.
  • Detail Pane: The style to apply to both the foreground (text) and background of a list screen’s detail pane. If no detail pane is defined this attribute has no effect on the screen.

Application Images

  • About Box Dialog Image: This attribute specifies an image definition to display in the Agentry Clients’ about box.
  • Login Dialog Image: This attribute specifies an image definition to display in the Agentry Clients’ login screen.
  • Module Menu Dialog Image: This attribute specifies an image to display in the Agentry Clients’ module selection dialog. This dialog is displayed after users log into Agentry Client applications with multiple modules. Note that within this same module selection dialog, each module may also display an image. The image defined at the application level is separate from the module images. For applications with a single module, this attribute has no effect as the module selection dialog is never displayed.

Application Security Attributes

The attributes in this section control overall security related to items such as failed login attempts, locking the user out of the client application after failing validation, user ID and password rules, and idle timeout settings.

User Settings
  • Login: This attribute specifies whether or not users are required to perform a transmit every time the Agentry Client application is started and the user logs in. Note that setting this option to true requires an available network connection for the client device and users will be required to perform a successful transmit before the user can use the client application.
  • Login Attempts: This attribute specifies the maximum number of failed login attempts that may occur before locking the user out of the application. “Unlimited” will never lock the user out. A failed login will occur if the user enters an incorrect password for the entered User ID when not required to connect to the Server during login; or if the user fails user authentication when the Login attribute is set to true and the number of failed attempts exceeds the value entered here. The resulting behavior of locking out a user is defined in the Lockout Level attribute described below.
  • Lockout Level: This attribute specifies the action to take when a user is to be locked out of the Agentry Client. This may occur as a result of exceeding the defined Login Attempts, or based on failed attempts to authenticate the user against the back end system. The four possible settings for this attribute are:
    • Critical: This lockout level specifies that the entire Agentry Client be reset. This includes the removal of all production data and all application data, as well as removing the stored user ID and password. Users will be required to log into the Agentry Client application and perform a successful transmit with the Agentry Server before being allowed to access the Agentry Client application.
    • Severe: The severe lockout level specifies that all module-level production data, i.e. object instances and pending transactions, be removed from the Agentry Client application. Complex table and data table records will not be removed. The user will be required to perform a successful transmit with the Agentry Server before being allowed to access the client application.
    • Medium: This lockout level specifies the Agentry Client will exit and the user will be required to log into the Agentry Client and perform a successful transmit with the Agentry Server before being allowed to access the client application. No data is removed from the application.
    • None: This setting indicates that no lockout behavior should take place. This setting will result in any lockout events being ignored by the Agentry Client.
  • Client Database will be encrypted: When true, this attribute specifies the database in which all client data is stored on the client device, including both production data and application data, will be encrypted.
User ID
  • Case: This attribute specifies the case in which the user ID should be entered and will be stored. The options are mixed case, uppercase, and lowercase. Note that mixed case does not require a mixed case user ID, but rather allows for variable case. User IDs may then be in all upper, all lower, or mixed case.
  • Scan User ID: This attribute specifies whether or not users can enter user IDs via the device’s barcode scanner. This attribute does not require the ID to be scanned, but only allows for the option. This attribute has no effect on Agentry Clients running on devices not equipped with a barcode scanner.
Password
  • Password Change: This attribute specifies whether or not users can initiate password changes on the Agentry Client. When true, the users will be able to change the password based on responses from the back end system indicating their passwords are about to expire or have expired. Users are required to enter the old password and the new one to change passwords. Note that enabling this behavior requires the implementation of logic to process a password change for the user in the back end system.
  • Scan Password: This attribute specifies whether or not users can enter passwords via the device’s barcode scanner. This attribute does not require the password to be scanned, but only allows for the option. This attribute has no effect on Agentry Clients running on devices not equipped with a barcode scanner.
Idle Timeout
  • Timeout: This attribute specifies whether or not to require users to re-enter their user ID and password if the device is left idle for a defined duration of time. The duration is set as a part of this attribute. Also an option is whether or not the user ID should be populated automatically.

Password Rules

  • Minimum Length: This attribute specifies the minimum number of characters of the password entered on the Agentry Client. The minimum length must be at least 1 to enable the First Character attribute. This value must be at least 2 to enable the Character Mix attribute. This value must be equal to or less than the Maximum Length attribute. The default minimum is none, which does not require a password to be entered on the Agentry Client.
  • Maximum Length: This attribute specifies the maximum number of characters of the password entered on the Agentry Client. This value must be equal to or greater than the Minimum Length attribute, or be set to default, which is no maximum length.
  • Password Case: This attribute specifies the case in which the user’s password is stored on the Agentry Client and will be sent to the Server. This may be set to Mixed Case, Lowercase Only, or Uppercase Only. Note that Mixed Case does not enforce a requirement of a mixed case password. Rather it merely specifies that the case of the password characters will not be changed from how they are entered by the user.
  • Character Mix: This attribute requires the Minimum Length attribute to be set to at least 2. Character Mix requires passwords entered on the Agentry Client must contain at least one alphabetical character and one non-alphabetical character. Non-alphabetical characters exclude non-printable characters.
  • First Character: This attribute requires the Minimum Length attribute to be set to at least 1. First Character specifies that the first character of the password must be an alphabetical character.
  • New vs. Old: This attribute specifies that a new password entered by the users on the Agentry Clients must be different from the previous password. A difference is based on the change of at least one character from the previous password to the new one. This attribute may be impacted by the Password Case attribute. Mixed Case will treat the same letters in the old and new password as different if at least one letter is entered in a different case. For Uppercase Only and Lowercase Only Password Case settings, case is ignored and the same letters entered in a different case will not be treated as a different password.