Siebel CRM Desktop for IBM Notes Administration Guide > How Siebel CRM Desktop Synchronizes Data > How Siebel CRM Desktop Synchronizes Data Between the Client and the Siebel Server >
How Siebel CRM Desktop Synchronizes Data During an Incremental Synchronization
An incremental synchronization is a synchronization session that occurs any time after the initial synchronization. To determine the differences that exist in the data that is available to the user, Siebel CRM Desktop compares data in the IBM Notes data storage to data in the Siebel database. It then does the following work:
- Inserts, updates, or deletes data on the Siebel Server according to changes that occurred in IBM Notes since the prior synchronization
- Inserts, updates, or deletes data in IBM Notes according to changes that occurred on the Siebel Server since the prior synchronization
CRM Desktop does this work for each difference until it synchronizes all data that resides in the IBM Notes data storage with data in the Siebel database. In all situations, the user works with data locally in IBM Notes and CRM Desktop sends these changes to the Siebel Server during an incremental synchronization, but not at the same time that it makes the change in IBM Notes. Depending on the frequency of the process, a change might not appear on the server immediately. CRM Desktop does the following work to complete an incremental synchronization:
- Connects to the Siebel Server to establish a synchronization session.
- Authenticates the user.
- Passes the values of the packageId and responsibilityId arguments that it caches in IBM Notes to the Siebel Server. CRM Desktop cached these values during the prior synchronization. It does this to avoid expensive iterative operations through all responsibilities and customization packages every time it calls the Web service.
- Receives a reply from the Siebel Server. This reply indicates if new metadata is available for the user.
- If new metadata is available, then CRM Desktop does the following work:
- Determines if the customization package changed.
- If the package changed, then it downloads the new package to a temporary folder in IBM Notes.
- If the package is not changed, then it proceeds to Step 11.
- Determines if the currently applied package is compatible with the downloaded package and then does one of the following:
- Determines if the currently applied package is compatible with the current version of CRM Desktop. If the package is not compatible, then CRM Desktop does not apply the downloaded package, it displays a product incompatibility error message, and then exits this process.
For more information, see How Siebel CRM Desktop Determines Compatibility.
- If the package is compatible, then CRM Desktop determines if the object structure in the downloaded package changed.
- If the object structure did not change, then it applies the new package and proceeds to Step 11.
- If the object structure changed, then it displays a dialog box that asks the user to do one of the following:
- Reinstall the object structure. CRM Desktop does the following:
- Removes the old custom folders.
- Removes the old data.
- Installs the new package.
- Displays the second part of the First Run Assistant. This part allows the user to set synchronization filters and make other settings that set up CRM Desktop to use the new customization package.
- Starts a synchronization session after the user specifies these filters and other settings.
- Do not reinstall the object structure. CRM Desktop does not install the new customization package. The next time the user attempts to synchronize, it displays the same dialog box that asks the user to reinstall the object structure.
- If the customization packages are identical, then CRM Desktop does the following work:
- Sends a reply that indicates that it is not necessary to download the customization package because the package that resides on the Siebel Server is the same as the package that resides in IBM Notes.
- Exits this process.
- Identifies the differences that exist between the data in IBM Notes and the data on the Siebel Server. To do this, it compares the change key values for all records that are available to the user in IBM Notes to the change key values that reside on the Siebel Server. The change key includes the record Id and the last time the server updated the record in the Siebel database. The value for the record Id resides in the ROW_ID column of the data table and the value for the time resides in the DB_LAST_UPD column of the data table. Depending on the differences, CRM Desktop changes the values in a data set to make sure the data between IBM Notes and the server is synchronized. For example, if CRM Desktop detects a new record during synchronization:
- On the Siebel Server, then it creates a corresponding record in IBM Notes.
- In IBM Notes, then it creates a corresponding record on the Siebel Server.
If the user changes synchronization filters, then CRM Desktop removes the Siebel CRM data that falls outside of the filters from IBM Notes. It does this during synchronization. A referenced record might remain in IBM Notes. For example, assume an account references a contact and this account does not match a filter. CRM Desktop continues to synchronize this account but makes it read-only in IBM Notes. It synchronizes the account details but it does not synchronize any account relationships that exist to other records.
- Downloads Siebel CRM data.
For more information, see How Siebel CRM Desktop Synchronizes Siebel CRM Data.
The user can now view the newly downloaded data.
- Logs out of the synchronization session that it established in Step 1.
How Siebel CRM Desktop Handles Changes to Login Credentials
If the user name or the server URL changes, then Siebel CRM Desktop reinitializes the data structure. It does this to remove any personal user data that might exist and to allow the user to synchronize data. Before CRM Desktop begins the reinitialization, it displays a warning to the user that any data that is not synchronized might be lost. If the user agrees to proceed, then the following occurs:
- CRM Desktop removes the current customization.
- The user logs in with new credentials.
- CRM Desktop downloads the package from the Siebel Server and then starts the First Run Assistant.
|