System and add-on installed metadata

When an object of the selected type is exported, the dependencies for the selected object are evaluated. The dependencies for the selected object can include system metadata or add-on installed metadata.

Starting with V5.6 IF001, the ExportOptions object contains the following two fields that handle such metadata:

  • include_system_classes - The field handles system metadata. The default value is False.
  • include_add_on_objects - The field handles add-on installed metadata. The default value is False.

Prior to V5.6 IF001, the system and add-on installed metadata is handled as if the two ExportOptions options were false, or the default.

System metadata

When a class definition that is encountered is a system class, by default only a minimal version of the class is exported and added to the deployment package. During import, any class definition that is a system class definition is not processed. Any changes to such class definitions, for example, changes that include more custom properties, are not deployed.

If the include_system_classes field in an ExportOptions object is True, a system class definition is exported and imported similar to other class definitions. In this way, any application-specific changes that are made to a system class definition are deployed into the destination environment.

When the system class definitions are processed, the differences between the source and destination environments are always checked during import. If the import operation does not identify any differences with a system class definition that is already deployed, the class definition is not overwritten.

Add-on installed metadata

When any class definition, property template, or choice list is encountered that is add-on installed, the deployment package contains information about the add-on that installed this metadata. The import operation checks whether the same add-ons present in the source environment are also installed in the destination environment. If any add-ons are missing, an error is raised.

If the include_add_on_objects field in an ExportOptions object is False, when any class definition, property template or choice list is encountered that is add-on installed, the deployment package contains minimal information about those objects. No other processing occurs during import for those add-on installed objects other than to make sure that the required add-ons are also installed in the destination environment.

However, if include_add_on_objects is True, these objects are exported and imported similar to other custom objects. In this way, any application-specific changes to these add-on installed objects are deployed into the destination environment.