The Update operation involves comparing the business object retrieved
from the Siebel application with the incoming WebSphere Business Integration
adapter business object.
The Update operation process involves setting the correct verb on the child
objects and processing the object.
For the Update operation, the following applies:
- The default behavior compares the object retrieved from the Siebel application
with the incoming adapter business object.
- The process of creating, updating, and deleting children is done based
on the comparison above. As a result of the comparison, all the children in
the Siebel application are processed and made the same as the inbound adapter
business object. If the process to create the child fails because the record
already exists, the exception, RecordAlreadyExistsException, is thrown.
- In addition, for all failures, the exception, SiebelUpdateFailedException,
is thrown.
KeepRelations support
When an incoming after-image business object has an update
verb, the adapter does not generate delete commands for the missing child
business objects (child business objects that exist in the target application,
but not in the incoming after-image). If a source application provides an
incomplete after-image, one or more missing children are kept.
The adapter supports the application-specific information (ASI) for the
attribute that represents the child or array of children. The Boolean ASI
tag, KeepRelations, needs to be set to true. Instead of creating delete commands
for such children, the adapter generates nooperation command
instances.
The adapter processes an
after-image business object structure
in the following way:
- It determines whether the top-level object is an update.
- If so, for each missing child object, the adapter determines whether the KeepRelations ASI
is set to true in the attribute’s ASI container
- If so, the adapter generates a nooperation command instead
of a delete command.
Note: There are no specific code changes in the adapter, except to add the
ASI tag to the metadata schema. The adapter foundation classes provide the
actual code support for the metadata schema.