How Siebel CRM Desktop Determines Compatibility
This topic describes how Siebel CRM Desktop determines compatibility. For a description of the work Siebel CRM Desktop does depending on compatibility, see How Siebel CRM Desktop Synchronizes Data During an Incremental Synchronization.
How Siebel CRM Desktop Determines Product and Version Compatibility
Siebel CRM Desktop uses the following element in the info.xml file to determine product and version compatibility:
;compatibility>
;products>versions;/products>
;schemas>versions;/schemas>
;/compatibility>
where:
products. Specifies product versions that are compatible with the package that Siebel CRM Desktop must install.
schemas. Specifies package versions that are compatible with the package that Siebel CRM Desktop must install. If the current package is compatible with the new package that it must install, then Siebel CRM Desktop synchronizes the local data to the Siebel Server before it applies the new package.
versions is a string that includes one or more version numbers. A dash (-) specifies a range of versions. A semi-colon (;) separates individual version numbers.
For example, the following code specifies that all product versions starting with version 3.05.15.00 through version 3.05.30.99 are compatible:
;compatibility preferred_product="3.05.30.00">
;products>3.05.15.00-3.05.30.99;/products>
;schemas>3.04.00.00-3.05.30.99;/schemas>
;/compatibility>>
Siebel CRM Desktop returns a preferred version in the following situations:
The product is not compatible.
The product is compatible but the preferred version is not the same version as the current product version.
How Siebel CRM Desktop Determines Schema Compatibility
The schema subelement of the compatibility element in the info.xml file determines schema compatibility. If Siebel CRM Desktop can save the data that it creates or modifies in the old customization package, then the schema is compatible. It saves this data to the current version of the Siebel database. An example of schema incompatibility occurs if a required field in Siebel CRM does not contain a value because the old package does not require it.
How Siebel CRM Desktop Determines Object Structure Compatibility
Siebel CRM Desktop examines the object structure to determine compatibility. For example, if you create a new object type that Siebel CRM Desktop synchronizes, then it must reinstall the current folder structure and install the new folder structure with the new package. If the object structure that the new customization package defines is not different from the object structure that the old package defines, then Siebel CRM Desktop applies changes from the new customization package.