Editar

Partilhar via


Message Schemas for Business Component Operations

Message Schemas for Siebel Business Component Operations

The following table lists the message schemas for the operations exposed by the Siebel adapter on Siebel business components.

Operation XML Structure Description
Insert Insert message:

<Insert xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <ArrayOf[BC]InsertRecord> <[BC]InsertRecord> <[FIELD1_NAME]>value1</[FIELD1_NAME]> <[FIELD2_NAME]>value2</[FIELD2_NAME]> … </[BC]InsertRecord> … </ArrayOf[BC]InsertRecord> </Insert>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[FIELD1_NAME] = Business component field name; for example, Account_x0020_Status.

Insert response message:

<InsertResponset xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <InsertResult> <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">[ID1]</string> <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">[ID2]</string> … </InsertResult> </InsertResponse>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03"

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[ID] = Record ID; for example, 42-6ODBL.
Inserts one or more records into a business component.

The response contains the record IDs of all records inserted.

If at least one insertion is successful, then no exception is thrown and the response will contain the IDs of the successfully inserted records. However, if all insertions fail, an exception will be thrown (XmlReaderParsingException or TargetSystemException).
Query Query message:

<Query xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <ViewMode>[View_mode]</ViewMode> <[BC]QueryInputRecord> <SearchExpr>[Search_expr]</SearchExpr> <SortSpec>Sort_spec</SortSpec> <QueryFields> <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">[Field1_name]</string> <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">[Field2_name]</string> … </QueryFields> </[BC]QueryInputRecord> </Query>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[View_mode] = View mode to apply. This is an optional parameter. See the Siebel documentation for an explanation of possible values.

[Search_expr] = Siebel search expression; for example, [Name] LIKE “3Com*”.

[Sort_spec] = Siebel sort specification; for example, Name (DESC), Location.

[FIELD1_NAME] = Business component field name; for example, Account Status.

Query response message:

<QueryResponse xmlns=" [VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <QueryResult> <[BC]QueryRecord> <[FIELD1_NAME]>value1</[FIELD1_NAME]> <[FIELD2_NAME]>value2</[FIELD2_NAME]> … </[BC]QueryRecord > </QueryResult> </QueryResponse>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[FIELD1_NAME] = Business component field name; for example, Account_x0020_Status.
Queries one or more records from the target business component. The Query operation takes the following parameters:

<SearchExpr> All records under the target business component are compared against the search expression and matching records are returned.

<SortSpec> The sort specification determines the order in which records that match the search expression are returned. This parameter is optional.

<QueryFields> A list of field names that specifies the fields in the target business component that should be retrieved by the query operation. Only the fields in this list are returned in each record. Each field should be specified by using the original name of the field in the business component, not the XML-encoded name; for example, "First Name" instead of "First_x0032_Name". This parameter is optional. If query fields are not specified, then all fields are returned.
Update Update message:

<Update xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <ViewMode>[View_mode]</ViewMode> <ArrayOf[BC]UpdateRecord> <[BC]UpdateRecord> <[FIELD1_NAME]>value1</[FIELD1_NAME]> <[FIELD2_NAME]>value2</[FIELD2_NAME]> … <Id>[Record_ID]</Id> </[BC]UpdateRecord> … </ArrayOf[BC]UpdateRecord> </Update>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[View_mode] = View mode to apply when querying the records that need to be updated. This is an optional parameter. See the Siebel documentation for an explanation of possible values.

[FIELD1_NAME] = Business component field name; for example, Account_x0020_Status.

[Record_ID] = Record ID of a record to be updated; for example, 42-60DBL.

Update response message:

<UpdateResponse xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <UpdateResult> <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">[ID1]</string> <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">[ID2]</string> … </UpdateResult> </UpdateResponse>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[ID] = Record ID; for example, 42-6ODBL.
Update one or more records specified by a list of update records.

Each update record contains a list of the fields to be updated and a single, mandatory <Id> element that identifies the record to be updated.

The response contains a list of the record IDs of all of the records updated.

If at least one update is successful, then no exception is thrown and the response will contain the IDs of the successfully updated records. However, if all updates fail, an exception will be thrown (XmlReaderParsingException or TargetSystemException).
Delete Delete message:

<Delete xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <ViewMode>[View_mode]</ViewMode> <Id> <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">[ID1]</string> <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">[ID2]</string> … </Id> <SearchExpr>Search_expr</SearchExpr> </Delete>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[View_mode] = View mode to apply when querying the records that need to be deleted. This is an optional parameter. See the Siebel documentation for an explanation of possible values.

[ID] = Record ID; for example, 42-6ODBL.

Search_expr = Siebel search expression; for example, [Name] LIKE “3Com*”.

Delete response message

<DeleteResponse xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <DeleteResult> <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">[ID1]</string> <string xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays">[ID2]</string> … </DeleteResult> </DeleteResponse>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[ID] = Record ID; for example, 42-6ODBL.
Delete one or more records matching a set of record IDs or a search expression.

Important: The Delete operation takes either a search expression or a set of record IDs. You cannot specify both parameters in the same Delete operation.

The response contains a list of the record IDs of all of the rows deleted.

If at least one deletion is successful, then no exception is thrown and the response will contain the IDs of the successfully deleted records. However, if all deletions fail, an exception will be thrown (XmlReaderParsingException or TargetSystemException).
Associate Associate message:

<Associate xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <ViewMode>[View_mode]</ViewMode> <ParentSearchExpr>Par_search</ParentSearchExpr> <ParentMVGField>Field_name</ParentMVGField> <ChildSearchExpr>Chld_search</ChildSearchExpr> </Associate>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[View_mode] = View mode to apply to the query for parent and child business component records. If a value is specified, that value will be applied to both the parent search and the child search. This is an optional argument. For an explanation of possible values, see the Siebel documentation.

[Par_search] = Search expression matching exactly one parent business component record; for example, [Id] LIKE AB-12345.

[Chld_search] = Search expression matching exactly one child business component record that will be associated with the parent business component record; for example, [Id] LIKE CD-12345.

[Field_name] = Multi-value group field name of the parent business component; for example, 'Bill To First Name' in the Account business component.

Associate response message:

<AssociateResponse xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <AssociateResult> <ChildID>[CHILD_ID]</ChildID> <ParentID>[PARENT_ID]</ParentID> </AssociateResult> </AssociateResponse>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[CHILD_ID] = Child Record ID; for example, 42-6ODBL.

[PARENT_ID] = Parent Record ID; for example, 42-6ODBL.
The Associate operation is surfaced only for business components with multi-value group (MVG) fields. It associates records by specifying search expressions for parent and child records.

The Associate operation:

- Associates a selected parent business component record with one selected child business component record

- Establishes a 1:1 association. one parent record will be associated with one child record

- Multiple 1:1 associations should be made for a 1:N association and multiple 1:N associations should be made for a M:N association

Please note:

The parent search expression must match a unique record in the parent table.

The child search expression must match a unique record in the child table.

The return value contains the record ID of the associated child row and the record ID of the associated parent row. If the parent search expression or the child search expression returns more than one matching record, an exception will be thrown.
Dissociate Dissociate message:

<Dissociate xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <ViewMode>[View_mode]</ViewMode> <ParentSearchExpr>Par_search</ParentSearchExpr> <ParentMVGField>Field_name</ParentMVGField> <ChildSearchExpr>Chld_search</ChildSearchExpr> </Dissociate>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[View_mode] = View mode to apply to the query for parent and child business component records. If a value is specified, that value will be applied to both the parent search and the child search. This is an optional argument. For an explanation of permissible values, see the Siebel documentation.

[Par_search] = Search expression matching exactly one parent business component record; for example, [Id] LIKE AB-12345.

[Chld_search] = Search expression matching exactly one child business component record that will be dissociated with the parent business component record; for example, [Id] LIKE CD-12345.

[Field_name] = Multi-value group fieldname of the parent business component; for example, 'Bill To First Name' in the Account business component.

Dissociate response message:

<DissociateResponse xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <DissociateResult> <ChildID>[CHILD_ID]</ChildID> <ParentID>[PARENT_ID]</ParentID> </DissociateResult> </DisocciateResponse>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[CHILD_ID] = Child Record ID; for example, 42-6ODBL.

[PARENT_ID] = Parent Record ID; for example, 42-6ODBL.
The Dissociate operation is surfaced only for business components with multi-value group (MVG) fields. It dissociates records by specifying search expressions for parent and child records.

The Dissociate operation:

Dissociates a selected parent business component record with one selected child business component record

Establishes a 1:1 dissociation. one parent record will be dissociated with one child record

Multiple 1:1 dissociations should be made for a 1:N dissociation and multiple 1:N dissociations should be made for a M:N dissociation

Note that the child search expression must match a unique record among the associated records with parent records that match the parent search expression.

Important: There is a difference in the child search expression for ASSOCIATE and DISSOCIATE operations. In an ASSOCIATE operation, the child search expression searches all records in the child business component. In a DISSOCIATE operation, the child search expression searches only those records in the child business component that are associated with records in the parent business component, where the parent records match the parent search expression.

The return value contains the record ID of the dissociated child record and the record ID of the dissociated parent record. If the parent search expression or the child search expression returns more than one matching record, an exception will be thrown.
Query_[MVG_Child_Business_Comp] Query_[MVG_Child_Business_Comp] message:

<Query_[CHILD_BC] xmlns="BusinessObjects/[BO]/[BC]/Operation"> <ViewMode>View_mode</ViewMode> <ParentSearchExpr>Par_search</ParentSearchExpr> <ParentMVGField>Field_name</ParentMVGField> <[CHILD_BC]QueryInputRecord> <SearchExpr>Chld_search </SearchExpr> <QueryFields> <string>field1</string> <string>field2</string> … </QueryFields> </[CHILD_BC]QueryInputRecord> </Query_[CHILD_BC]>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[View_mode] = View mode to apply; can be 0 to 9. This is an optional parameter. See the Siebel documentation for an explanation of these possible values.

[CHILD_BC] = Name of the child business component associated with the parent business component’s MVG field; for example, Contact (for the Account parent business component).

[Par_search] = Search expression matching 1 parent business component record; for example, [Id] LIKE AB-12345.

[Field_name] = Multi-value group fieldname of the Parent business component; for example, 'Bill To First Name' in the Account business component'.

[Chld_search] = Search expression matching 1 or more child business component records; for example, [Id] LIKE CD-12345.

[field1], [field2], and so on = Query fields in the child business component. A list of field names that specifies the fields in the child business component that should be retrieved by the operation. Only the fields in this list are returned in each record. Each field should be specified by using the original name of the field in the child business component, not the XML encoded name; for example, "First Name" instead of "First_x0032_Name". This parameter is optional.

Query_[MVG_Child_Business_Comp] response message:

<Query_[CHILD_BC]Response xmlns="[VERSION]/BusinessObjects/[BO]/[BC]/Operation"> <Query_[CHILD_BC]Result> <[CHILD_BC]QueryRecord> <[FIELD1_NAME]>value1</[FIELD1_NAME]> <[FIELD2_NAME]>value2</[FIELD2_NAME]> … </[CHILD_BC]QueryRecord > </QueryResult> </QueryResponse>

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Name of the business object; for example, Account.

[BC] = Name of the business component; for example, Account.

[FIELD1_NAME] = business component field name; for example, Account_x0020_Status.

[CHILD_BC] = Name of the child business component associated with the parent business component’s MVG field; for example, Contact (for the Account parent business component).
This operation is exposed for business components with MVG fields.

It queries the child records associated with a parent record that is associated with a MVG field in the parent business component.

Message Actions for Siebel Business Component Operations

The following table shows the SOAP action for each of the Siebel business component operations. Only the actions for the request messages are shown, the action for the response message is formed by appending "/response" to the request message action; for example, "http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Insert/response".

Operation Action Example
Insert [VERSION]/BusinessObjects/[BO]/[BC]/Insert http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Insert
Query [VERSION]/BusinessObjects/[BO]/[BC]/Query http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Query
Update [VERSION]/BusinessObjects/[BO]/[BC]/Update http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Update
Delete [VERSION]/BusinessObjects/[BO]/[BC]/Delete http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Delete
Associate [VERSION]/BusinessObjects/[BO]/[BC]/Associate http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Associate
Dissociate [VERSION]/BusinessObjects/[BO]/[BC]/Dissociate http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Dissociate
Query_[CHILD_BC] [VERSION]/BusinessObjects/[BO]/[BC]/Query_[CHILD_BC] http://Microsoft.LobServices.Siebel/2007/03/BusinessObjects/Account/Account/Query_Contact

[VERSION] = The message version string; for example, "http://Microsoft.LobServices.Siebel/2007/03".

[BO] = Business object name; for example, Account.

[BC] = Business component name; for example, Account.

Name of the child business component associated with the parent business component’s MVG field; for example, Contact (for the Account parent business component).

You must explicitly specify the message action when you consume the Siebel adapter in a BizTalk Server solution or by using the Windows Communication Foundation (WCF) channel model. For more information, see Develop your Siebel applications.

Siebel Business Component WCF Client Methods

The following table shows the WCF service model method signatures that are generated by the Add Adapter Service Reference Visual Studio Plug-in for Siebel business components.

Operation WCF Service Model Method
Insert string[] client.Insert([BC]InsertRecord[] ArrayOf[BC]InsertRecord);

[BC] = Name of business component; for example, Account.
Query [BC]QueryRecord[] client.Query(System.Nullable<short> ViewMode, [BC]QueryInputRecord [BC]QueryInputRecord);

[BC] = Name of business component, for example, Account.
Update string[] client.Update(System.Nullable<short> ViewMode, [BC]UpdateRecord[] ArrayOf[BC]UpdateRecord);

[BC] = Name of business component; for example, Account.
Delete string[] client.Delete(System.Nullable<short> ViewMode, string[] Id, string SearchExpr);
Associate ParentChildRecord client.Associate(System.Nullable<short> ViewMode, string ParentSearchExpr, string ParentMVGField, string ChildSearchExpr);
Dissociate ParentChildRecord client.Dissociate(System.Nullable<short> ViewMode, string ParentSearchExpr, string ParentMVGField, string ChildSearchExpr);
Query_[MVG Child Business Comp] [CHILD_BC]QueryRecord[] client.Query_[CHILD_BC](../../core/system.md ViewModeshort ViewMode, string ParentSearchExpr, string ParentMVGField, [CHILD_BC]QueryInputRecord [CHILD_BC]QueryInputRecord);

[CHILD_BC] = Name of the child business component associated with the parent business component’s MVG field; for example, Contact (for the Account parent business component).

See Also

Messages and Message Schemas for BizTalk Adapter for Siebel eBusiness Applications