Server Options
To display and edit server options, select Edit Options from the Configuration Section drop-down.
Basic Options
The first section of this screen allows for some general server options to be set.
| Option Name | Option Value |
|---|---|
| Listen Port | The port number the DataSplice Server will use to handle client connections. The default is 4100. |
| Max Threads | The number of worker threads the DataSplice Server will use to handle client connections. The default is 10. |
| Client Timeout | Client connections will automatically be disconnected if they are idle for the specified period, in minutes. If this is 0, connections will never time out. The default is 10. |
| Administrator | An email address that can be displayed for users to obtain assistance. |
| Records Per Page | Controls the number of records displayed at a time when viewing data in grid mode. |
Built-in System Attributes
Scrolling down further displays the Attributes sections. The attributes defined in this section are built into DataSplice by default and are available system-wide. They are useful for defining default behavior, which can be overridden on a user, group, or view level as desired. The Attributes section displays the default attributes, while the Custom Attributes section below allows for new attributes to be defined by an administrator.
Attributes are name/value pairs that can be set at many different levels; here, they are at the system level, and thus are available system-wide. Once the attribute is set to a value, that value can be used by simply referring to the attribute name.
Explanation of Built-in System Attributes
The following is a brief explanation of the built-in system attributes. The format used is as follows:
- User-Friendly Attribute Name as Displayed in the Admin Client (UNDERLYING ATTRIBUTE NAME CALLED BY DATASPLICE) - Textual explanation.
- Allow Error Postponement (DS_ALLOW_POSTPONE_ERRORS) - When enabled, this attribute allows user errors to be postponed and sent to the DataSplice Server to be resolved at a later time. In this manner, errors can be resolved by the user from within the Remote Client or by an administrator from within the Administration Client. For more details about the behavior of postponed modifications, see the postponed modifications description in the server status section.
- Assume Modifications (DS_ASSUME_MODIFICATIONS) - Determines whether or not the Remote Client application will re-query a record after changes are committed. This may be useful if other non-DataSplice changes may have affected the record, such as database triggers.
- Auto Commit Changes (DS_AUTO_COMMIT) - When enabled, changes on the Remote Client are immediately submitted to the DataSplice Server when the new or updated record loses focus. Thus, when this attribute is enabled, it is no longer necessary to use the Save Changes button to commit changes on the Remote Client.
- Auto Postpone Errors (DS_AUTO_POSTPONE_ERRORS) - In conjunction with the Allow Error Postponement attribute, this attribute automatically postpones any errors from the Remote Client when synching up with the DataSplice Server. For more details about the behavior of postponed modifications, see the postponed modifications description in the server status section.
- Auto Reload (DS_AUTO_RELOAD) - When enabled, this attribute causes the view data to be refreshed when a record is saved or a view is navigated to.
- Date Format (DS_DATE_FORMAT) - This attribute defines how dates are formatted. It uses the same syntax as that in the date formatting section.
- Decimal Precision (DS_DECIMAL_PRECISION) - This attribute specifies the number of decimal places to be displayed given a floating point number. The attribute is given an integer value. An example of this is for a number
1234.6789with a decimal precision of 2 would display as1234.67. - Default Filter Action (DS_DEFAULT_FILTER_ACTION) - This attribute specifies the initial behavior to undertake when a user hits the
ENTERkey when currently selected on a filter. Available options are:- Create Record - Brings up a new record for editing.
- Display Filter - Initially prompts the user for necessary criteria in order to perform the desired query.
- Display Grid - Initially displays a set of data showing multiple records.
- Display Record - Initially displays a single record at a time.
- Display:<Query Name> - Runs the specified query.
- Navigate Up - Moves the user to the parent of the current view.
- View Selection - Moves the user to the top level view list.
- Default Grid Action (DS_DEFAULT_GRID_ACTION) - This attribute specifies the initial behavior to undertake when a user hits the
ENTERkey when currently selected on a grid. Available options are:- Create Record - Brings up a new record for editing.
- Display Filter - Initially prompts the user for necessary criteria in order to perform the desired query.
- Display Grid - Initially displays a set of data showing multiple records.
- Display Record - Initially displays a single record at a time.
- Display:<Query Name> - Runs the specified query.
- Navigate Up - Moves the user to the parent of the current view.
- View Selection - Moves the user to the top level view list.
- Default Record Action (DS_DEFAULT_RECORD_ACTION) - This attribute specifies the initial behavior to undertake when a user hits the Enter key when currently selected in a single record display. Available options are:
- Create Record - Brings up a new record for editing.
- Display Filter - Initially prompts the user for necessary criteria in order to perform the desired query.
- Display Grid - Initially displays a set of data showing multiple records.
- Display Record - Initially displays a single record at a time.
- Display:<Query Name> - Runs the specified query.
- Navigate Up - Moves the user to the parent of the current view.
- View Selection - Moves the user to the top level view list.
- Message Timeout (DS_MESSAGE_TIMEOUT) - The amount of time, in seconds, that the DataSplice Server will wait for a reply from a sent message request.
- Offline Behavior (DS_OFFLINE_BEHAVIOR) - This attribute determines the intended offline usage. By default, the handheld is allowed to switch between online and offline mode if available. Available options are:
- Always Offline - The Remote Client is only permitted to function in offline mode.
- Never Offline - The Remote Client is only permitted to function in online mode.
- Password Timeout (DS_PASSWORD_TIMEOUT) - The amount of idle time, in minutes, before the Remote Client will prompt the user to re-enter their password.
- Ping Interval (DS_PING_INTERVAL) - If the Remote Client application is idle for longer than this amount of time, it will attempt to ping the DataSplice Server before communicating to ensure that the connection is still valid. If this time is not exceeded, it will attempt to communicate to the DataSplice Server without pinging beforehand. This interval value is specified in seconds.
- Ping Timeout (DS_PING_TIMEOUT) - The amount of time, in minutes, that the client applications should wait for a ping reply before timing out.
- Records Per Page (DS_RECORDS_PER_PAGE) - The number of records to display on each screen when in grid mode on the Remote Client.
- Skip Offline Purge (DS_SKIP_OFFLINE_PURGE) - When this attribute is true, existing offline data on client devices will be retained during subsequent synchronization attempts.
- Use Transactions (DS_USE_TRANSACTIONS) - When true, this causes record commits to be performed in a transaction process. Note: Due to the nature of locked records in MAXIMO®, this attribute should not be enabled when connecting to MAXIMO® systems.
Other Available Built-in Attributes
Some attributes are built into DataSplice but are not visible as settings in the Administration Client. These attributes, however, can be referenced throughout the application to provide additional functionality. The following is a brief explanation of those attributes.
- DS_USER - The user name of the user that is currently logged in.
- DS_DOMAIN - The domain that this user belongs to.
- DS_VIEW - The name of the current view.
- DS_APP - The name of the application in use, such as Remote Client.
- DS_APP_VERSION - The version of the application in use, such as 3,0,86,0.
- DS_CURRENT_TIME - The present date and time of the device or server that receives the request to populate the value. Depending on where this attribute is set, it may be populated with different values. If it is used in a view field setting, such as to make it a default value for a field on an insert view, then this attribute would be populated with the present date and time on the client device being used. For example, if this attribute is defined as the default value for a field in a DataSplice insert view, and a new record is created in that view on June 30, 2006 on the Remote Client running on a mobile device with a clock setting of 7:00pm, while the server computer it is connected to is in another time zone and has a clock setting of 5:00pm, the DS_CURRENT_TIME attribute value would be populated with 6/30/2006 7:00:00 PM. Alternatively, if DS_CURRENT_TIME is referenced in the parameter bindings in an event chain, then this attribute is populated with the system time of the server that processes the request. Using the same example, if the attribute was set in the parameter binding in the event chain, rather than as the default value of a field, then it would be populated with 6/30/2006 5:00:00 PM.
- DS_EDIT_TIME - Primarily used for update processes, this attribute is populated at the time the update is performed, based on the client device clock settings. For example, if a user performs a physical count on June 30, 2006 at 10:00am and synchronizes with the server at 2:00pm, the DS_EDIT_TIME attribute value would be populated with 6/30/2006 10:00:00 AM. Contrary to the DS_CURRENT_TIME attribute mentioned previously which can be populated with a timestamp from either the client device or the server, DS_EDIT_TIME always gets the timestamp information from the client device, rather than the server.
- DS_QUERY_NAME - The name of the executed query.
- DS_SCANNER_EXPRESSION - The barcode scanner plug-in will use this attribute to evaluate, and possibly override, the data value scanned in. If DS_SCANNER_EXPRESSION is not null, it will replace the scanned data with the result (see DS_SCANNER_INPUT).
- DS_SCANNER_FIELD - The barcode scanner plug-in will inject this attribute with the name of the selected field when the scan occured.
- DS_SCANNER_INPUT - The barcode scanner plug-in will inject this attribute with the value of the scanned data. It will then evaluate an attribute (you must define) named DS_SCANNER_EXPRESSION. If DS_SCANNER_EXPRESSION is not null, it will replace the scanned data with the result.
- DS_SCANNER_INPUT_RAW - The barcode scanner plug-in will inject this attribute with the value of the scanned data.
- DS_SCANNER_QUERY - When set to a name of a query in the current view, the scanner will execute the query with the following attributes supplied; DS_SCANNER_INPUT_RAW <-- the value of scanner input before evaluating DS_SCANNER_EXPRESSION, DS_SCANNER_INPUT <-- equal to DS_SCANNER_INPUT_RAW before evaluating expression (when used in DS_SCANNER_EXPRESSION) then changed to resulting output of DS_SCANNER_EXPRESSOIN if not null.
- DS_SCANNER_VIEW - if DS_SCANNER_VIEW evaluates to non-null, and the user is not on that view, DataSplice will automatically navigate the user to the view with the name matching DS_SCANNER_VIEW.
Custom System Attributes
In the next section, labeled Custom Attributes, custom system attributes can be defined. Custom attributes that are created here are available throughout the system, and for all users.
Example: Creating a custom attribute.
To create a custom system-level attribute that defines a default SMTP email server:
- In the Attribute Name column, enter a name to refer to this attribute, e.g.
EMAIL_SERVER. - In the Attribute Value column, enter the actual name of the SMTP email server, e.g.
mail.datasplice.com. - Click the Save Changes button
. - The text
${EMAIL_SERVER}can now be used in email actions to reference this attribute.
Custom System Attributes for MAXIMO® 4.x
When using the DataSplice MAXIMO® 4.x add-on package, some custom system attributes need to be defined for all of the default views to work correctly. Specifically, the following attributes should be set to the appropriate values for the MAXIMO® system in place at the given installation. By default, they should be set as follows:
- DEFAULT_STORE -
:= test(${LABOR_DEFSTORE} is not null, ${LABOR_DEFSTORE}, ${STORELIST_DEFSTORE}) - LABOR_CODE -
:= query("User List", "Labor Code", "'User Name' = ${DS_USER}") - LABOR_DEFSTORE -
:= query("Labor Codes List", "Storeroom", "'Labor Code' = ${LABOR_CODE}") - STORELIST_DEFSTORE -
:= query("Storeroom List","Storeroom","'User Name' = ${DS_USER}")
Example:
Custom System Attributes for MAXIMO® 5.x
If using the DataSplice MAXIMO® 5.x/6.x integration plug-in 4.x, no custom system attributes need to be defined, as they are automatically set by the plug-in installation. When using the DataSplice MAXIMO® 5.x integration plug-in 2.x, however, some custom system attributes need to be defined for all of the default views to work correctly. Specifically, the following attributes should be set to the appropriate values for the MAXIMO® system in place at the given installation. By default, they should be set as follows:
- DEFAULT_SITE -
:= query("User List","SiteID", "'User Name' = ${DS_USER}")- Older plug-in builds require this attribute to be manually configured. Newer builds of the DataSplice MAXIMO® 5.x integration plug-in, however, configure this attribute automatically. For these newer builds, it is not necessary to manually define this attribute. - DEFAULT_STORE -
:= test(${LABOR_DEFSTORE} is not null, ${LABOR_DEFSTORE}, ${STORELIST_DEFSTORE}) - LABOR_CODE -
:= query("User List", "Labor Code", "'User Name' = ${DS_USER}") - LABOR_DEFSTORE -
:= query("Labor Codes List", "Storeroom", "SiteID = ${DEFAULT_SITE} and 'Labor Code' = ${LABOR_CODE}") - STORELIST_DEFSTORE -
:= query("Storeroom List","Storeroom","SiteID = ${DEFAULT_SITE} and 'Is Default' = 'Y'")
Example:
Event Commands
The Event Commands section of this screen allows for hardware keypad buttons (also known as hotkeys) to be mapped to specific DataSplice actions. In this manner, users can perform numerous tasks without having to use a stylus to touch the screen.
DataSplice events are mapped and configured directly within the Administration Client. The events are then only valid when the DataSplice Remote Client is running as the active program on the mobile device. When the Remote Client application is closed or minimized, the functionality of those hotkeys reverts to the system defaults. This is also true if a dialog box is open, as the dialog then has focus, and the DataSplice-assigned hotkeys will not have the desired effect until the dialog is closed and the Remote Client regains focus.
Application Events
The Application Event field specifies the hotkey to be set. Hotkeys 1 through 12 typically refer to function or alpha keys. Unnumbered keys are generally ordered from left to right. For best results, each device model should be tested in turn.
- Desktop PC Hotkeys - When running the Remote Client on a Windows desktop PC, the hotkeys 1 through 12 refer to the function keys,
F1throughF12. - Handheld PC Hotkeys - When running the Remote Client on a Handheld PC (HPC) operating system shell, the hotkeys 1 through 12 refer to the function keys,
F1throughF12. - Pocket PC Hotkeys - When running the Remote Client on a Pocket PC (PPC) mobile device, the hardware buttons are captured and used when the application is running and focused. When the Remote Client loses focus, the hardware buttons are returned to their previous behavioral state.
Command Expressions
The Command Expression field displays the action command to be executed by the assigned hotkey. Commands are functions that get evaluated by the DataSplice parser. Any parameters passed to these functions are strings. The following commands are available:
- DisplayFilter() - Switches current view to filter screen. Requires an active view.
- DisplayGrid() - Switches current view to grid screen. Requires an active view.
- DisplayModifications() - Displays the user's list of postponed modifications, if applicable. Otherwise this will display the list of available views.
- DisplayPostponedErrors() - Displays postponed errors, if applicable. Otherwise this will display the list of available views.
- PluginFunction('<function name>') - Invokes the specified plug-in function.
- DisplayQuery('<query name>') - Displays a query named
<query name>for current view. - DisplayRecord() - Switches the current view to single record screen. Requires an active view.
- DisplayView('<view name>' [, '<query name>' ]) - Displays
<view name>and optionally use<query name>. - ExecuteFirst('<command function>' [, '<command function>' , ... ]) - Executes a sequence of command functions until one succeeds.
- All command functions return TRUE or FALSE to denote success or failure. If the current application context is such that the command does not make sense, then it should also return FALSE. Use ExecuteFirst to execute the one command that makes sense at the time.
Example:ExecuteFirst(DisplayQuery('Add Entry'), Menu('Create New Record'), ViewSelection())If there is an active view, and that view has a query named
Add Entry, then that query will be executed, the DisplayQuery function will return TRUE, and the ExecuteFirst function will end. If not, the DisplayQuery function will return FALSE, and it will try the next function. If there is an active view, thenCreate New Recordwill add a record; otherwise the view selection screen will be displayed. - ExecuteSequence('<command function>' [, '<command function>' , ... ]) - Executes a sequence of command functions until one fails.
- The ExecuteSequence function is similar to the ExecuteFirst function mentioned above except that ExecuteSequence is intended to execute all of the listed functions and only stop if one fails.
- Keypress('<key codes>') - Simulates a keystroke.
- Available key codes (use only one per function call):
BACKTABRETURNorENTERorCRESCAPEorESCSPACEPAGEUPorPRIORorPAGE-UPPAGEDOWNorNEXTorPAGE-DOWNENDHOMELEFTRIGHTUPDOWN- Letters
AthroughZ - Digits
0through9
- Available key modifiers (combine with
+):SHIFT- Shift key also depressed.CTRL- Ctrl key also depressed.ALT- Alt key also depressed.WIN- Win (Windows) key also depressed.
- Examples:
Keypress('TAB')- advances to next cell in grid.Keypress('SHIFT+TAB')- advances to previous cell in grid.Keypress('ALT+DOWN')- activates items (like dropping a combo-box or bringing up a calendar editor).
- Available key codes (use only one per function call):
- Menu('<command>') - Activates the specified menu or executes a menu command.
- The Menu function executes the menu command that matches its string parameter. At the current time, this text must exactly match the localized version of the menu item. The result is either to activate the menu (for visible menu captions such as
FileorData) or to execute the command associated with the menu (such asExitorCreate New Record).
- The Menu function executes the menu command that matches its string parameter. At the current time, this text must exactly match the localized version of the menu item. The result is either to activate the menu (for visible menu captions such as
- NavigateUp() - Moves up a level in the view navigation stack.
- ViewSelection('<group name>') - Displays the view selection screen. Optionally filter display by
<group name>.
Last modified 2007-09-24 03:30 PM