Siebel Partner Relationship Management Administration Guide > Setting Up Application Services Interfaces > ASI Workflows >

Business Services Used by ASIs


A set of business services named PRM ANI Utility Services have been created to support both opportunity transfer and shopping cart transfers.

Most of these service methods deal with the manipulation Integration Objects, and rely on the Siebel Adapter Service on the internal side. Whenever possible, please follow usage examples from the workflows provided.

The PRM ANI Utility Services can only be used in situations where there is only one instance of a component type in the hierarchy path. So if there are multiple instances of a Contact under the Opportunity, you cannot get the Contact element from the integration object. We cannot do this at this time because each Hierarchy Path we provide (Account.Contact in this case) must be unique. If this constraint must be violated, then we must to refer to each instance with a separate Integration Component Name. For example, if Person had the same type of data as Contact, then we could use a reference to Account.Person to store another contact.

Conventions for Hierarchy Paths

We have used the following convention for Hierarchy paths in a number of our Service Methods:

Hierarchy Paths are inputs of the form IC1.IC2.IC3..., where IC1, IC2, IC3, and so on, are Integration Component Names that tell the method how to traverse the Object definition to find the right place to put the child.

For example, if we are placing a business address under the Account under the Opportunity Object, the path would read simply Opportunity.Account.

For the Set Child Type Method, a slightly different methodology in the Hierarchy Path is used:

In the case of Set Child Type, we refer to IC1, IC2, IC3, and so on as the actual structure of our hierarchy. The examples listed come from the ANI Shopping Cart Message (PRM ANI) Integration Object.

The first three substrings will appear as follows: ChildObject.ListOfMessageType.RootComponentName. An example is: SiebelMessage.ListOfANI Shopping Cart Message (PRM ANI).Message Details

The following substrings will alternate between ListOf Component Names and the Component Names themselves. An example is: ListOfChannel Partner.Channel Partner.ListOfChannel Partner Business Address.Channel Partner Business Address

Append Hierarchy

This method is used to append a Child Integration Object to a Parent Integration Object. The Parent object must contain the full definition of the Child object.

See the notes about calls to the Load Child Hierarchy Method. There is a dependency in calls to Append Hierarchy on calls to Load Child Hierarchy, so Load Child Hierarchy Method must be called before calling this method.

Create Empty Hierarchy

This method is used to Create an empty Integration Object instance with the same structure as a normal integration object but with two notes.

All data fields are present and empty (initialized to empty string).

Each component in the definition of the Integration Object is instantiated Once and only Once in exactly the structure that is prescribed by the definition.

Generate Key

This method is used to return a string that can be used to uniquely identify a record in the Service's business component. In the case of Workflow Processes, this refers to the primary business component of the processes' business object.

Get Child Type

This method is used to report the Child Type of a Property Set. For integration objects, this is generally of type SiebelMessage.

Get Hierarchy Value

This method is used to return a string field value in the Integration Object Structure.

Get System Preference

This method is used to look up values in the System Preferences.

Isolate Integration Id

This method is used to strip an Integration Object instance of everything except for the Integration Id. Even child components will be stripped away.

This method is not called by PRM ASIs, but is referenced by other ASIs. It is used because we want Siebel Adapter Operations to consider only the Integration Id to look for a record in some cases.

Load Child Hierarchy

This method is used to place a child hierarchy in memory to be used at a later time. It is used for operations that require two hierarchy type operands, such as Append Property Set.

Parse Key

This method generates a search specification from a given Key and Key Description. The search specification can be fed into a query step (Siebel operation or otherwise) to look for the record that the Key has specified.

Query Business Component

Provides a means to query any business component in the business object. This provides a bit more flexibility than the Standard Siebel Operation Query, since you can search the entire business component without regard to the links to the primary business component.

If both Search Spec and Query field are provided, the Search Spec will be chosen over the Query field arguments to execute the business component with. If neither is provided, then an error will be returned.

Detach Hierarchy

This method is a complementary function to Append Hierarchy. It basically takes the Specified Integration Object and extracts it from the Parent Object.

Set Child Type

This method is a complementary Function to Get Child Type. It sets the Hierarchy type, in case we need to change something to the type Siebel Message.

Set Hierarchy Value

This method is a complementary Function to Get Hierarchy Value. It is used to set the value of a property in an object.


 Siebel Partner Relationship Management Administration Guide 
 Published: 18 April 2003