Integration Platform Technologies: Siebel Enterprise Application Integration > Creating and Maintaining Integration Objects >

Resolving Synchronization Conflicts for Integration Objects and User Properties


This topic serves as a guide to resolving synchronization conflicts if any arise.

Table 5 illustrates the behavior of the merging logic for each of the integration object parts that have to be synchronized.

Table 5. Merging Logic Used for Synchronizing Integration Objects
Integration Object Metadata
Merging Rules

Objects

Validate that Business Object still exists.

Components

Present the tree of components based on current business object definition. The components present in the current integration object are checked in the UI tree, other components presented as Inactive. User decides which components to add or delete. This is done by the Synchronization wizard UI.

Fields

Keep the current integration component fields if still present in the business component, otherwise delete. Add new fields in a way that does not conflict with existing ones (see External Sequence for more information).

System fields are created when appropriate (for example, searchspec, IsPrimaryMVG, and operation). If the system field is inconsistent with the integration component definition, then delete it.

Active/Inactive. Preserve the current integration component field value unless Business Component Field is Required (field must be present during Insert). Otherwise, new fields are created Inactive.

XML Properties

Preserve the current integration object values to keep XML compatible. Add new components/fields properties avoiding conflict with existing XML.

XML Properties are processed according to the XML sequence. New components/fields that sequence within the parent component element will be higher than current.

Reuse existing processing code (and check for correct behavior).

External Sequence

(on components or fields)

Preserve the component or field sequence within the parent component. Set the sequence on new components or fields higher than the existing ones.

Name

Preserve Names in the current integration object.

User key, Hierarchy key, Other keys (for example, Status Key)

Existing Keys:

  • Keep existing keys as Active if all the key fields are Active.
  • Keep existing keys Inactive if Inactive already or make Inactive if any of the fields are Inactive.
  • If a field is Inactive in an integration component, then make it Inactive in the key. Make the key Inactive.
  • If a field is not present in an integration component, then delete it from the key. Make the key Inactive.

New Keys:

  • Create new keys as Inactive.
  • If any of the key fields are Inactive, then either:
    • Do not create the key.
    • Make fields Active in the integration component.

User Properties

Preserve valid cases, remove invalid ones, and generate warnings. See Table 6 for more information.

Table 6 shows the logic that is used when synchronizing user properties.

Table 6. Logic Used for Synchronizing User Properties
User Property Name
Values (Default is in italics)
Level (Object, Component, or Field)
Merging Rules

AdminMode

Y, N

C, O

Entered by the user; if the value exists, then keep it. Otherwise, the wizard sets the value to N.

AllLangIndependentVals

Y,N

O

Entered by the user; if the value exists, then keep it. Otherwise, the wizard sets the value to N.

AssocFieldName

Any valid field name in the Association business component

F

Siebel Wizard generates the value based on current business component definition. The Wizard overwrites the user change, because in order for the integration component to be functional, the User Property has to be consistent with the business component. (component MVGAssociation is set to Y)

Association

Y, N

C

Siebel Wizard generates the value based on current business component definition. The Wizard overwrites the user change, because in order for the integration component to be functional, the User Property has to be consistent with the business component.

EDEnabled

Y, N

F

For each integration component field, the Synchronize wizard adds an integration component field user property named EDEnabled with the value set to Y if the corresponding business component field is effective dating enabled. The wizard will not overwrite user changes.

FieldDependencyFieldName

Any active integration component name within the same integration component

F

Entered by the user. Keep the current value if valid (if FieldName field is Active).

ForceUpdate

Y, N

O

Entered by the user. Keep the current value.

Ignore Bounded Picklist

Y, N

O, C, F

Entered by user, keep if valid (if component Picklist is set to Y).

IgnorePermissionErrorsOnUpdate, IgnorePermissionErrorsOnInsert, IgnorePermissionErrorsOnDelete

Y, N

C

Entered by the user. Keep the current value.

MVG

Y, N

C

Siebel Wizard generates the value based on the current business component definition. The Wizard overwrites the user change, because in order for integration component to be functional, the User Property has to be consistent with the business component.

IsPrimaryMVG system field is created in the merged integration object.

MVGAssociation

Y, N

C

Siebel Wizard generates the value based on the current business component definition. The Wizard overwrites the user change, because in order for integration component to be functional, the User Property has to be consistent with the business component.

IsPrimaryMVG system field is created in merged integration object.

MVGFieldName

Any valid field name in the MVG business component

F

Siebel Wizard generates the value based on current business component definition. The Wizard overwrites the user change, because in order for integration component to be functional, the User Property has to be consistent with the business component. (component MVG is set to Y)

NoInsert, NoDelete, NoUpdate, NoQuery, NoSynchronize

Y, N

C, F (NoUpdate)

Entered by the user. Keep the current value.

Picklist

Y, N

F

Siebel Wizard generated. The user change is kept if valid (if Picklist component).

Review the input object for a user property of PICKLIST. Copy from the current field.

PicklistUserKeys

Any active fields

F

Entered by user, keep only Active fields. User property is valid only if PICKLIST is set to Y on the integration component.

If no Active fields left, then remove the user property.

SuppressQueryOnInsert

Y, N

C

Entered by the user. Keep the current value.

When using the Insert method for the EAI Siebel Adapter, if this integration component user property is defined, then the EAI Siebel Adapter will not perform a query before inserting a record.

ViewMode

All, Manager, Sales Rep, and any others

O

Entered by the user; if the value exists, then keep it. Otherwise, the wizard sets the value to All.

Integration Platform Technologies: Siebel Enterprise Application Integration Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Legal Notices.