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.

Note: If FailOnError processing takes place, then the synchronization is interrupted. The synchronization process continues to fail until the problem is resolved. Users must contact their system administrators to recover from the failure. The recovery effort can involve modifying transactions queued for processing, modifying data on the server, or reentering transactions through the Siebel Mobile disconnected application.

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

  1. Navigate to the Administration - Siebel Mobile screen, Application Administration, and then the Settings view.

  2. Select the appropriate mobile application in the upper applet.

  3. 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

Obtaining Error Details from Synchronization Sessions

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: