Siebel Application Services Interface Reference > Application Services Interfaces (ASIs) > ASI Data Synchronization Services >
Data Synchronization Methods for ASIs
Data synchronization services use a subset of methods supported by the EAI Siebel Adapter, as listed in Table 1. However, an ASI might not use all of the methods listed; you can define which methods an ASI uses. For more information, see Integration Platform Technologies: Siebel Enterprise Application Integration.
Table 1. Data Synchronization Methods
|
|
|
|
QueryByExample |
Queries for objects based on the example object provided. |
Interface Integration Object |
One or more integration objects that matches the query. |
QueryById |
Queries for objects based on the primary row ID. |
Primary Row ID |
An integration object that matches the specific row ID. If no row ID exists, no object is returned. |
QueryPage |
Queries for a given number of objects based on the example object. |
- Interface Integration Object
- PageSize
- StartRowNum
- ViewMode
|
- One or more integration objects up to <pagesize> number of integration objects that match the query.
- Boolean LastPage argument indicates whether the last record is returned.
|
Insert |
Creates the object in the database. |
Interface Integration Object |
The status key of all the objects created. If the object exists, this request errors out. See Using Status Keys for information about status keys. |
Update |
Updates the object in the database. If the object does not exist, the request returns an error. |
Interface Integration Object |
The status key of all objects updated. |
InsertOrUpdate |
Merges the object with the same object in the database or creates a new object if none exists in the database. |
Interface Integration Object |
The status key of all objects created or updated. |
Synchronize |
Synchronizes the database object to exactly match the input object. |
Interface Integration Object |
The status key of all objects created or updated. |
Delete |
Deletes the object. |
Interface Integration Object |
The status key of all objects deleted. |
Data Synchronization Input Method Arguments for ASIs
Table 2 describes the arguments of the various methods. For more information about the input arguments, see Integration Platform Technologies: Siebel Enterprise Application Integration.
Table 2. Input Method Arguments
|
|
|
|
|
Interface Integration Object |
|
Input/Output |
Integration Object |
- The integration object or set of integration objects that is either passed to or returned to the method.
- The name of the method argument can be anything, but you should use SiebelMessage if the ASI is to be used in a workflow process with other EAI services.
- The integration object attribute must specify the name of the interface integration object.
|
LastPage |
Last Page |
Output |
Boolean |
Indicates whether the last record has been returned by the QueryById method. |
PageSize |
Page Size |
Input |
Number |
The default is 10. This argument indicates the number of records to be returned for the QueryPage method. |
PrimaryRowID |
Object ID |
Input |
String |
The ID that corresponds to the Siebel business component row ID for the primary integration component. This argument is only applicable to the QueryById method. |
StartRowNum |
Starting Row Number |
Input |
Number |
The default is 0. The row number to start retrieving records for the QueryPage method. |
RowID IntegrationId UserKey |
|
Output |
Status key |
See Using Status Keys for more information about this output argument. |
ViewMode |
|
Input |
String |
Specifies the visibility mode applied to the parent integration object. Applicable only to the QueryPage method. |
Using Status Keys
A status key is an integration component key of the type Status key. Status keys are similar to unique keys (see Unique Keys in Integration Objects), and need to be defined for the output arguments. It is recommended that each component contain a set of these three unique keys:
- Row ID. The Siebel Row ID.
- Integration ID. A cross-reference that links the Siebel application to the corresponding record in the external application.
- User Key. Corresponds to the U1 index of the underlying table.
For more information about status keys, see Integration Platform Technologies: Siebel Enterprise Application Integration. Handling Error Messages
If a method cannot find the integration object as specified by the method arguments, a SiebelMessage returns containing an empty list of integration objects. However, if an error occurs during the execution of a method:
- The Business Service returns an error.
- A SOAP message is returned if the method is invoked as a Web Service. See Handling Errors for ASIs for more information about Web Services error messages.
Business Service User Properties for ASIs
User properties, as listed in Table 3, control the behavior of an ASI. These values become input arguments to the service that invokes the ASI. For example, an ASI using the Synchronize method can specify that an input data map for Synchronize is used—for example, Input Data Map (Synchronize). If Input Data Map (Synchronize) is not specified, the default data map, Input Data Map, is used instead. If a default data map is not specified, implicit mapping is used. For more information about Business Service User Properties, see Integration Platform Technologies: Siebel Enterprise Application Integration.
Table 3. Business Service User Properties
|
|
|
Internal Integration Object |
Y |
Name of the integration object defining the business object to expose. |
Input Data Map |
N |
Name of the default data map for the input arguments. If no map or method is specified, implicit mapping occurs between the internal and input interface objects. |
Output Data Map |
N |
Name of the default data map for the output arguments. If no map and method are specified, implicit mapping occurs between the internal and output interface objects. |
Input Data Map (name of method) |
N |
Name of the data map for the input arguments for the specified method—for example, Input Data Map (Synchronize). |
Output Data Map (name of method) |
N |
Name of the data map for the output arguments for the specified method—for example, Output Data Map (Update). |
XML Method Example
The following XML example demonstrates an upsert-and-delete operation: <SiebelMessage MessageId="" MessageType="Integration Object" IntObjectName="Sample Account">
<ListofSampleAccount> <Account operation="upsert"> <Name>A. K. Parker Distribution</Name> <Location>HQ-Distribution</Location> <Organization>North American Organization</Organization> <Division/>
<CurrencyCode>USD</CurrencyCode>
<Description>This is the key account in the AK Parker Family</Description>
<HomePage>www.parker.com</HomePage>
<LineofBusiness>Manufacturing</LineofBusiness>
<ListOfContact> <Contact operation="delete"> <FirstName>Stan</FirstName> <JobTitle>Senior Mgr of MIS</JobTitle> <LastName>Graner</LastName> <MiddleName>A</MiddleName> <PersonalContact>N</PersonalContact> <Account>A. K. Parker Distribution</Account> <AccountLocation>HQ-Distribution</AccountLocation> </Contact> </ListOfContact>
</Account> </ListofSampleAccount>
</SiebelMessage>
|