Example of a Parent Using the Upsert Operation and One More Child Using the Sync Operation

This example demonstrates the effects of records after an update operation acts on the parent, and a sync operation acts on one of the children records. The following table is a high level representation of this example.

Record in Database Integration Object Instance Record After Execute Operation

Account1

Contact0

Organization2

Contact1

Organization2

Contact2

Organization2

Account1 operation=upsert

Contact1

Organization1

Contact2 operation=sync

Organization3

Account1

Contact0

Organization2

Contact1

Organization1

Organization2

Contact2

Organization3

In this case, if a record matching Account1 exists in the database, then the EAI Siebel Adapter updates that record. If no record matching Account1 exists, then the EAI Siebel Adapter inserts the record.

For all child contacts, the upsert operation applies. Therefore, if the child exists, then it is updated. If the child does not exist, then it is inserted. For child contacts that exist in the database, but do not match the integration object instance, they will remain unchanged because upsert does not delete children.

In the case of Contact2, which has the sync operation overriding the upsert operation, it is updated, and its children are synchronized.