This file is loaded into the system by the data loader utility and is used to extend the system by adding any of the following customizations to the Source application, Gateway or the destination application:
- User-defined fields (UDFs)
- Mapping templates
- Groovy field mappings
- Foreign field mappings
- Flow Definition customizations
- Custom metadata
- Custom XRefs
- External custom steps
In an on-premises environment, you can also define:
- Java custom mappings
- Java custom steps
- Custom parameters
Schema File
Customization.xsd
Contents
A Customization element containing the following elements:
Element | Type | Parents | Description |
---|---|---|---|
Name | string | Customization | The optional element that specifies the name of the customization. |
Version | string | Customization | The optional element that specifies the version of the customization. |
JavaClassPath | string | Customization | (On-premises only) The optional element that specifies the path to the customization file that loads the customization functions. This element is required if you are using Java customization. |
External | boolean | Customization | The flag to determine if an external custom step is external to Gateway. |
GUID | string | Customization | The Global Unique Identifier for the custom step. |
CustomMetadata | CustomMetadataType | Customization | The optional element that contains zero to three App elements. An example use is to add references to user defined fields (UDFs). |
CustomXRef | CustomXRefType | Customization | The optional element that contains zero to many custom XRef elements. |
FieldMapTemplates | FieldMapTemplatesType | Customization | The optional element that contains zero to many FieldMapTemplate elements that can be used to map additional fields. |
JavaCustomizationMapping | JavaCustomizationMappingType | Customization | (On-premises only) The zero to many optional elements that contain the following elements:
|
GroovyFieldMappingTemplates | GroovyFieldMappingTemplatesType | Customization | The optional element that contains zero to many GroovyFieldMappingTemplate elements. |
FlowDefinitionCustomization | FlowDefinitionCustomizationType | Customization | The zero to many optional elements that allow you to add custom parameters to a particular flow. Contains the following elements:
|
CustomMetadataType Table
Element | Type | Parent | Description |
---|---|---|---|
App | CustomMetadataAppType | CustomMetadata | The application to which you are adding a user defined field (UDF). |
CustomXRefType Table
Element | Type | Parent | Description |
---|---|---|---|
XRefMap | XRefMapType | CustomXRef | The element that contains one or more XRef maps. An XRef map contains a mapping of business objects cross-referenced between two applications. |
XRefDefinition | XRefDefinitionType | CustomXRef | The element that contains one or more XRef definitions. An XRefDefinition contains the definitions of business objects cross-referenced between two applications in the XRef map. |
XRefMapType Table
Element | Type | Parent | Description |
---|---|---|---|
App1Name | string | XRefMap | The name of the application. |
App2Name | string | XRefMap | The name of the application. |
XRefObject | XRefObjectType | XRefMap | One or more XRef objects in the XRef map. |
XRefDefinitionType Table
Element | Type | Parent | Description |
---|---|---|---|
AppName | string | XRefDefinition | The element that contains the application name associated with the XRefDefinitions. |
XRefObjectDefinition | XRefObjectDefinitionType | XRefDefinition | The element that contains the business object associated with the XRefDefinition. |
XRefObjectDefinitionType Table
Element | Type | Parent | Description |
---|---|---|---|
AppObjectName | string | XRefDefinitionType | The element that contains the application object name associated with the XRefObjectDefinition. |
PDIObjectName | string | XRefDefinitionType | The element that contains the corresponding PDI object name in Primavera Gateway associated with the AppObjectName for the XRefObjectDefinition. |
AppKeyFieldName | string | XRefDefinitionType | The element that contains the unique AppKeyFieldName for the XRefObjectDefinition. |
XRefObjectType Table
Element | Type | Parent | Description |
---|---|---|---|
Name | string | XRefObject | The name of the cross-reference object. |
App1Name | string | XRefObject | The App1 business object name if different from the Name element. |
PDIName | string | XRefObject | The PDI business object name if different from the Name element. |
App2Name | string | XRefObject | The App2 business object name if different from the Name element. |
App1PrimaryKeyFieldName | string | XRefObject | The name of the primary key field in the database of the application. |
PDIPrimaryKeyFieldName | string | XRefObject | The name of the primary key field in the Gateway database. |
App2PrimaryKeyFieldName | string | XRefObject | The name of the primary key field in the database of the application. |
CustomMetadataAppType Table
Element | Type | Parent | Description |
---|---|---|---|
Name | string | App | The name of the application to which you are adding a user-defined field (UDF). |
ObjectCategory | ObjectCategoryType | App | Provides a mechanism for classifying objects. |
FieldCategory | FieldCategoryType | App | Provides a mechanism for classifying fields. It is defined here and referenced by attribute "category" when a field is defined within a business object. For example, in the P6 provider, "udf" is defined as a field category to indicate that this field is an actual user-defined field in the P6 EPPM side. |
BusinessObject | BusinessObjectType | App | The zero to many business object elements that are containers for field elements that relate to the business object specified by the Name element. All custom UDF fields defined in this element will be included when updating the business object. |
ObjectCategoryType Table
Element | Type | Parent | Description |
---|---|---|---|
Name | string | ObjectCategory | The name of the object category. |
Description | string | ObjectCategory | The description of the object category. |
FieldCategoryType Table
Element | Type | Parent | Description |
---|---|---|---|
Name | string | FieldCategory | The name of the field category. |
Description | string | FieldCategory | The description of the field category. |
BusinessObjectType Table
Element | Type | Parent | Description |
---|---|---|---|
Description | string | BusinessObject | A description of the business object type. |
Name | string | BusinessObject | The name of the business object to which you are adding the user defined field. |
Field | FieldType | BusinessObject | All custom UDF fields defined inside this element will be included when updating the business object. |
FieldType Table
Element | Type | Parent | Description |
---|---|---|---|
Description | string | Field | The element that describes the field. This description is presented in the Fields table on the Data Dictionary tab in the Primavera Gateway user interface. |
Name | string | Field | The element that determines the name of the field. This name is presented in the Fields table of the Data Dictionary tab in the Primavera Gateway user interface. |
JoinTo | string | Field | The element that contains the name of the object to which it is being joined to. |
Type | string | Field | The element that defines the data type of the value of the field's data when it is synchronized. |
MaxLength | positiveInteger | Field | The optional element that defines the maximum length of the value of the field's data when it is synchronized. This element can be used with the Type element whose content is String to limit the field's data values. |
MaxValue | double | Field | The optional element that defines the maximum value of the field's data when it is synchronized. This element can be used with the Type element whose content is Int to limit the field's data values. |
MinValue | double | Field | The optional element that defines the minimum value of the field's data when it is synchronized. This element can be used with the Type element whose content is Int to limit the field's data values. |
FieldValue | FieldValueType | Field | An optional element that defines the value of an enum field type. Field elements can contain zero or more FieldValue elements if the Field element contains a Type element whose content is Enum. |
FieldValueType Table
Element | Type | Parent | Description |
---|---|---|---|
Description | string | FieldValue | An optional element that describes the fieldValue. |
Value | string | FieldValue | An optional element that defines an enumerated value. |
FieldMapTemplatesType Table
Element | Type | Parents | Description |
---|---|---|---|
App1Name | string | Customization | The name of the application. |
App2Name | string | Customization | The name of the application. |
GuestAppName | string | Customization | The name of the guest application. |
HostAppName | string | Customization | The name of the host application. |
FieldMapTemplate | FieldMapTemplateType | Customization | The container element that contains zero to many FieldMapTemplates included in the customization. |
FieldMapTemplateType Table
Element | Type | Parents | Description |
---|---|---|---|
Description | string | FieldMapTemplate | The text that is used in the Primavera Gateway user interface to provide a description of the field mapping. |
App1BusinessObjectName | string | FieldMapTemplate | The Guest business object name if different from the PDIBusinessObjectName element. |
App2BusinessObjectName | string | FieldMapTemplate | The Host business object name if different from the PDIBusinessObjectName element. |
GuestBusinessObjectName | string | FieldMapTemplate | Guest business object name if different from PDIBusinessObjectName element. |
HostBusinessObjectName | string | FieldMapTemplate | Host business object name if different from PDIBusinessObjectName element. |
Name | string | FieldMapTemplate | The text that is used in the Primavera Gateway user interface to provide a name for the field mapping. |
PDIBusinessObjectName | string | FieldMapTemplate | The PDI business object name. Also indicates the guest and\or the host business object name if the GuestBusinessObjectName or the HostBusinessObjectName elements are omitted. |
Condition | ConditionType | FieldMapTemplate | The condition associated with the FieldMapTemplate. |
FieldMap | FieldMapType | FieldMapTemplate | The element that specifies the field map. |
ConditionType Table
Element | Type | Parents | Description |
---|---|---|---|
App1Fields | string | Condition | The fields associated with the condition from the application designated as App1. |
App1Script | string | Condition | The script associated with the condition for the application designated as App1. |
App2Fields | string | Condition | The fields associated with the condition for the application designated as App2. |
App2Script | string restricted to maxLength (2048) | Condition | The script associated with the condition for the application designated as App2. |
FieldMapType Table
Element | Type | Parents | Description |
---|---|---|---|
App1 | string | FieldMap | The name of the application. |
App2 | string | FieldMap | The name of the application. |
Guest | string | FieldMap | The element that specifies the name of the field that is involved in the mapping from the provider side of the mapping. |
Host | string | FieldMap | The element that specifies the name of the field that is involved in the mapping from the Primavera provider side of the mapping. |
PDI | string | FieldMap | The element that specifies the name of the field that is involved in the mapping from the Gateway side. |
JavaCustomizationMappingType Table (On-premises only)
Element | Type | Parents | Description |
---|---|---|---|
App1Name | string | JavaCustomizationMapping | The name of the application. |
App2Name | string | JavaCustomizationMapping | The name of the application. |
GuestAppName | string | JavaCustomizationMapping | The name of the application in the App table in the Gateway database. |
HostAppName | string | JavaCustomizationMapping | The name of the Primavera application in the App table in the Gateway database. |
Condition | ConditionType | JavaCustomizationMapping | The condition associated with the java customization mapping. |
FieldMapping | FieldMappingType | JavaCustomizationMapping | The element that specifies the field mapping. |
GroovyFieldMappingTemplatesType Table
Element | Type | Parents | Description |
---|---|---|---|
App1Name | string | JavaCustomizationMapping | The name of the application. |
App2Name | string | JavaCustomizationMapping | The name of the application. |
GuestAppName | string | GroovyFieldMappingTemplates | The name of the application designated as Guest application in the App table in the Gateway database. |
HostAppName | string | GroovyFieldMappingTemplates | The name of the application designated as the Host application in the App table in the Gateway database. |
GroovyFieldMappingTemplate | GroovyFieldMappingTemplateType | GroovyFieldMappingTemplates | The name of the GroovyFieldMappingTemplate associated with the applications designated as Guest and Host. |
GroovyFieldMappingTemplateType Table
Element | Type | Parents | Description |
---|---|---|---|
Description | string | GroovyFieldMappingTemplates | The name of the application designated as Guest application in the apptable in the Gateway database. |
App1BusinessObjectName | string | GroovyFieldMappingTemplates | The name of the business object in the application. |
App2BusinessObjectName | string | GroovyFieldMappingTemplates | The name of the business object in the application. |
GuestBusinessObjectName | string | GroovyFieldMappingTemplates | The Guest business object name if it is different from the PDIBusinessObjectName element. |
HostBusinessObjectName | string | GroovyFieldMappingTemplates | The Host business object name if it is different from the PDIBusinessObjectName element. |
Name | string | GroovyFieldMappingTemplates | The name of the Groovy business object. |
PDIBusinessObjectName | string | GroovyFieldMappingTemplates | The name of the PDIBusinessObjectName in the Gateway data dictionary. |
Condition | ConditionType | GroovyFieldMappingTemplates | The Groovy condition associated with the Groovy field mapping template. |
GroovyFieldMapping | GroovyFieldMappingType | GroovyFieldMappingTemplates | The GroovyFieldMapping being associated with the GuestBusinessObjectName, HostBusinessObjectName, and PDIBusinessObjectName. |
GroovyFieldMappingType Table
Element | Type | Parents | Description |
---|---|---|---|
Direction | string | GroovyFieldMapping | The direction of the data flow between the source application and destination application in the GroovyFieldMapping. |
SourceFields | string | GroovyFieldMapping | The fields in the source application referenced in the GroovyFieldMapping. |
TargetFields | string | GroovyFieldMapping | The fields in the target application referenced in the GroovyFieldMapping. |
RequireAllFields | boolean | GroovyFieldMapping | The flag to determine if all fields are required for the GroovyFieldMapping. |
Script | string | GroovyFieldMapping | The element that contains the Groovy code. |
FieldMappingType Table
Element | Type | Parents | Description |
---|---|---|---|
Description | string | FieldMapping | The description of the custom java field map. |
App1BusinessObjectName | string | FieldMapping | The name of the business object in the application. |
App2BusinessObjectName | string | FieldMapping | The name of the business object in the application. |
GuestBusinessObjectName | string | FieldMapping | The Guest business object name if different from PDIBusinessObjectName element. |
HostBusinessObjectName | string | FieldMapping | The Host business object name if different from PDIBusinessObjectName element. |
Name | string | FieldMapping | The name of the field map that is used to look up the Java class in the code that you have written that contains customization logic. |
PDIBusinessObjectName | string | FieldMapping | The Gateway business object name in the field mapping. |
Fields | FieldsType | FieldMapping | The container element for the fields defined inside this element to be included when loading the business object. |
FieldsType Table
Element | Type | Parents | Description |
---|---|---|---|
App1 | FieldsFieldType | Fields | The name of the application. |
App2 | FieldsFieldType | Fields | The name of the application. |
Guest | FieldsFieldType | Fields | The element that specifies the name of the fields in the mapping from the application designated as the Guest application. |
Host | FieldsFieldType | Fields | The element that specifies the name of the fields in the mapping from the Primavera application designated as the Host application. |
PDI | FieldsFieldType | Fields | The element that specifies the name of the fields that is involved in the mapping from the Gateway side. |
FlowDefinitionCustomizationType Table
Element | Type | Parents | Description |
---|---|---|---|
FlowDefinitionName | string | FlowDefinitionCustomization | The name of the flow to which the parameters are to apply. |
Application Name | string | FlowDefinitionCustomization | The name of the application to which the customization applies. |
DisableCompare | boolean | FlowDefinitionCustomization | The flag when set to true, causes compare to be disabled for all FlowTypes. |
AppType | string | FlowDefinitionCustomization | The role of the application in the flow. |
FlowSide | string | FlowDefinitionCustomization | The role of the application in the data flow. |
FlowBusinessObject | FlowBusinessObjectType | FlowDefinitionCustomization | The business objects associated with the flow. |
FlowStep | FlowStepType | FlowDefinitionCustomization | The element that contains flow steps that define an end-to-end synchronization. |
Parameter | ParameterType | FlowDefinitionCustomization | The element that specifies the properties of the parameter. |
FlowStepType Table
Element | Type | Parents | Description |
---|---|---|---|
Description | string | FlowStep | The element that describes the purpose of the flow step. |
Name | string | FlowStep | The element that determines the name of the flow step. |
OwnerAppType | string | FlowStep | The element that the system uses to determine which document format to use when parsing XML document data. For example, specifying the OwnerAppType as Host and P6 is the host of the flow causes the system to ask the P6 provider to provide the implementation of this step. |
FlowSide | string | FlowStep | The element that the system uses to determine whether the data flow originates from the source or the destination application. |
Sequence | int | FlowStep | A number that determines when the step will run relative to the other steps in the flow. When this element is used in a customization.xml file, you can use the following SQL commands to determine the existing sequencing, from which you can determine an appropriate sequence number for a particular flow type. Note: This example returns the sequence number for the Export Project Data flow type. Revise the commands as appropriate for the other flow types. select fd.flowdef_name, fs.flowstep_name, fs.flowstep_type, fs.flowstep_seqno from flowstep fs, flowdef fd where fs.flowdef_id = fd.flowdef_id and fd.flowdef_name = 'Export Project Data' order by fd.flowdef_name, fs.flowstep_seqno; |
Type | string | FlowStep | The element that specifies the flow step type. 'Custom' is the only valid value when this element is used in a customization.xml file. |
Script | string | FlowStep |
|
FlowBusinessObjectType
Element | Type | Parents | Description |
---|---|---|---|
Name | string | FlowBusinessObjectType | The name of the flow business object type. |
ParameterType Table
Element | Type | Parents | Description |
---|---|---|---|
DefaultValue | string | Parameter | The default value for this custom parameter that is used when the parameter is included in the flow and the value is not changed. |
Description | string | Parameter | The element that provides a description of the parameter. |
EnumerationOptions | EnumerationOptionsType | Parameter | The element that contains the list of enumerated values when the Parameter element is specified as an enum. |
Name | string | Parameter | The element that provides the name of the parameter. The name is used to lookup the parameter in the provider Java code. |
Sequence | int | Parameter | The element that provides the mechanism for ordering the parameters. |
Title | string | Parameter | The element that provides the display title of the parameter. |
Type | string | Parameter | The element that defines the data type of the value of the field's data when it is synchronized. |
EnumerationOptionsType Table
Element | Type | Parents | Description |
---|---|---|---|
Enumeration | EnumerationType | EnumerationOptions | The element that specifies the name of the enumeration. |
FieldsFieldType Table
Element | Type | Parents | Description |
---|---|---|---|
Name | string | Fields | The element that specifies the name of the field. |
EnumerationType Table
Element | Type | Parents | Description |
---|---|---|---|
Name | string | Fields | The element that specifies the name of the enumeration type. |