7Handling Synchronization Conflicts and Insert-Transaction Failures
Handling Synchronization Conflicts and Insert-Transaction Failures
This chapter outlines how to handle synchronization conflicts, insert-transaction failures, and recovery for Siebel CRM disconnected applications. It includes the following topics:
Preventing Synchronization Transaction Conflicts in Siebel Mobile
When multiple users synchronize with a remote database, transaction conflicts can occur which might result in data loss. The Insert-Transaction Failure functionality minimizes synchronization transaction conflicts and eliminates the potential for data loss. If transaction conflicts are unavoidable, then the Synchronization Service for the Siebel Mobile disconnected application captures the transaction information so that the data can be recovered. For more information, see Handling Insert-Transaction Failures in Siebel Mobile Disconnected Applications.
Handling Insert-Transaction Failures in Siebel Mobile Disconnected Applications
When the server executes an insert transaction and the insert transaction fails, the insert-transaction failure can be handled in one of the following ways:
A record is logged that indicates the insert transaction failed, and synchronization continues. This is the default insert behavior. You can use the Conflict Administration screen to recover the data.
The insert-transaction failure is logged, including the details of the failure, and synchronization is interrupted. This is the FailOnError behavior. FailOnError behavior guarantees that if an insert transaction fails, then data loss does not occur since the synchronization is stopped and until the cause of the failure is resolved.
You can enable the processing of insert-transaction failure globally or at the business component level when you configure the Siebel Mobile disconnected application. The following setting applies globally in the application: DefaultHandheldInsertMode. When FailOnError is specified, every failed insert-transaction interrupts synchronization.
To handle insert-transaction failures
Navigate to the Administration - Siebel Mobile screen, Application Administration, and then the Settings view.
Select the appropriate mobile application in the upper applet.
In the Value field, specify the value for the DefaultHandheldInsertMode parameter by selecting one of the values shown in the following table.
Value
Description
NoFail
Insert-transaction failures are logged, and the synchronization continues. This is the default behavior.
FailOnError
Insert-transaction failures are logged, and the synchronization ends. The system administrator must investigate to recover from this failure. For more information, see Obtaining Error Details from Synchronization Sessions.
You can also use the HandheldInsertFailMode user property to enable the processing of insert-transaction failures at the business component level.
The following table shows the combined effect of the DefaultHandheldInsertMode setting in the Settings view and on a business component. Note that the following conditions apply:
The business component setting always takes precedence over the settings defined in the Administration - Siebel Mobile, Application Administration, Settings view.
If there is no setting on a particular business component, then the Applications Settings value applies.
If there is no setting in either the Settings view or on the business component, then the default behavior is the same as NoFail. Insert-transaction failures are logged, and the synchronization continues.
In the following table the Tools Configuration column shows what DefaultHandheldInsertMode is equal to, and the Application Settings Value column shows the available application values. Reading down the first column in the following table and then across, a NoFail business component setting in Siebel Tools combined with a FailOnError application setting results in the combined effect of NoFail.
Table Combined Effect of Insert-Transaction Failure and the Settings
Tools Configuration (User Property) |
Application Settings Value: No Fail |
Application Settings Value: FailOnError |
Application Settings Value: Omitted |
---|---|---|---|
NoFail |
NoFail |
NoFail |
NoFail |
FailOnError |
FailOnError |
FailOnError |
FailOnError |
No Setting on Business Component |
NoFail |
FailOnError |
NoFail |
Related Topics
Defining the Settings for Processing Insert-Transaction Failure
Defining the Settings for Processing Insert-Transaction Failure
The following task shows you how to use the processing settings for insert-transaction failures.
To define the settings for processing insert-transaction failures
Set Application Settings to FailOnError during development and testing to capture synchronization errors.
Related Topic
Handling Insert-Transaction Failures in Siebel Mobile Disconnected Applications
Resolving Conflicts and Recovering Error Data in Siebel Mobile
You can monitor synchronization sessions and synchronization conflicts for Siebel Mobile disconnected applications from a number of views within the Administration - Siebel Mobile screen, and also by reviewing your notification messages. For more information, see the following:
Selected synchronization and conflict errors are stored in the database. This mechanism is always enabled. You can view the errors using the Conflict Administration screens. For more information about resolving conflicts and recovering error data, see the following: