DataSplice 3.1 Release Notes
Reworked Event Model
The event model on both the client and server has been completely reworked to offer significant improvements. These give DataSplice administrators more options in controlling how views operate on the Remote Client.
The Administration Client can be used to specify the actions taken when various events occur. This involves specifying a list of actions to take, which can include the default action for the event in question, and any number of additional actions before or after the default.
Additional Built-in Events
New events have been added to allow additional control:
Offine Synchronize - This is fired when the user synchronizes data on a handheld. The default action commits any local changes and synchronizes changes with the server.
Verify Field - This is fired to accept changes to a field from the user.
Custom Events
In addition, the administrator can specify additional named custom events. These can then be called by other events (to have shared functionality that is referenced by several events) or can be displayed in the navigation menu as actions the user can select.
For instance the latter case supports creating a Begin Inspection event that the user can select from the navigation menu. The event could display an error if the action is not allowed, or mark the current record as In Progress and display the first inspection point to gather otherwise.
Global Event Handlers
Certain events can have global handlers that are not specific to a particular view. This means that common handlers don't need to be configured for each view, and supports handling events that occur when no view is selected.
New Event Action
Several new actions have been added to give more options in controlling event handling:
Prompt User - Displays a message to the user, has an optional list of values that the user can fill out. In addition, this can be configured to allow the user to cancel the current event.
- Display messages, errors, and warnings to the user. Warning messages have OK / Cancel (or other customized labels) buttons where OK accepts the warning and Cancel exits out of the current event chain.
- Prompt the user to fill out values before continuing. For instance,
this could be added to the Offline Synchronize event to have
the user select his work location prior to fetching any data.
Modify Data - Specifies a query that defines the set of records to modify, and a collection of values in the record that should be changed.
Execute Command - This runs an arbitrary expression that can be used to control the state of the application. Many commands are available: LogOut, DisplayView, CommitChanges, etc.
Unified Keyboard Handling
Keyboard handling is now processed within the same framework as the other events, instead of being configured separately. This means keyboard handling can be controlled on a per-view basis more easily and any keyboard sequence can be used, instead of just function or hot keys.
Plug-in Events
Client-side plug-ins can register events that can be configured in the same way as any other event. The Bar Code Scanner Plug-in uses this to provide an event that occurs when the user scans a label.
Additional client-side plug-in events are also planned to support ActiveSync docking, network events, etc.
Additional Server Data Sources
Two new server data source plug-ins are available to provide additional types of views that can be created:
Simple Table Source
Unlike the ADO.NET views that use a SQL statement to query existing data, this data source creates tables in a database that matches the fields defined by the view. This allows administrators to easily make new tables to store data that is not currently available in any other system.
This makes creating custom applications from scratch in DataSplice much easier because the entire configuration, including the database schema, can be maintained through the Administration Client.
Scripting Plug-in
This replaces the Virtual Data Source views from 3.0 with a
more powerful back-end that uses JavaScript to generate the data
returned by a query. The administrator defines the view and the fields
within it, and then can specify a script that returns data.
Role-Based Permissions and Configuration
The configuration of users and groups has been simplified to ensure that installations are easier to maintain for administrators. All configuration and permission settings are only specified by Roles, and users and groups from external system are added to these Roles to acquire functionality.
License reservation has also been implemented, which allows you to specify a number of licenses to reserve for a specific role. This allows you to be sure that a certain user or role, will always be able to obtain a license.
Roles can contain custom attributes that control how various views and settings operate, global event bindings, and view permissions. In addition, roles can be aggregated together to create hierarchical configurations.
In addition, the interface for handling external authentication, users, and groups in the Administration Client has been improved greatly.
Session Handling Improvements
The session handling section of the administration client has been improved to make it easier to manage installations. The client-side handling of sessions and connection states has been improved to offer better performance and handling of network connectivity issues, and reduce issues of orphaned sessions in many environments.
In addition, the offline configuration for views has been reworked to simplify the administration of offline data and improve the performance of synchronizing data to remote devices. Offline data sets can now be cached on the server and shared across multiple users if possible, which can greatly reduce the impact on backend databases.
Text Styles
The text style and color can now be specified for data displayed within a view using a CSS-like syntax. This can be controlled globally (for instance help color-blind users), or on a per-view or per-field basis. In addition, the style parameters can be built using the expression language to generate styles that vary based on the data of the selected record.
This supports various configurations:
- Highlight warning (yellow) and error (red) conditions by changing the record background color
- Mark required fields using a different style
- Display work orders with high priority in bold, and make the
background color increasingly red for higher priority records
Binary Data Handling
Support for the processing and storing of binary data has been added.
This enables several important features:
- Attached document support
- Signature capture
- Camera support (device-permitting)
Potentially a vast number of new uses is now possible. Such as attaching a photo from an inspection, or a signature from an equipment issue to name a few.
Many Additional Changes
- The Administration Client user interface has been streamlined
- Expression validation in the Administration Client to highlight errors in expressions and other statements
- Configuration errors are easier to track down
- Improved localization back-end
- The performance of fetching large amounts of data from ADO.NET data
source has been improved