Siebel Master Data Applications Reference for Industry Applications > Architecture and Framework > About Siebel Master Data Applications Architecture >

Siebel Connector and Integration of Siebel Master Data Applications


Siebel Connector for Master Data Applications describes a set of configurable components for integration among enterprise applications and Siebel Master Data Applications.

The Siebel Connector for Master Data Applications comprises five prebuilt business services:

  • UCM Transaction Manager
  • UCM Converter
  • UCM Dispatcher
  • UCM Security Manager
  • UCM Publish/Subscribe Service

UCM Transaction Manager

The UCM Transaction Manager executes operations specified in Universal Customer Master Application message instances as Siebel database transactions. The UCM Transaction Manager also:

  • Evaluates heterogeneous commands and executes the transactions.
  • Invokes business services, including Siebel eAI, that are configured in its user properties. These business services can be invoked multiple times.
  • Translates Universal Customer Master Application command elements to Siebel Adapter actions and combines return results as a single property set.

Table 2 lists the user properties for UCM Transaction Manager.

Table 2.  User Properties of UCM Transaction Manager
Name
Value
Description

DispatcherMapName

CIFDispMap

Transaction Manager uses this map to tag the body information for other components. This value can be set as a runtime input argument as well.

EnableAgentLock

TRUE

Enable system preference EAIAgent

IXMLOperation_ADD

EAI Siebel Adapter/Insert/

Predefined operation

IXMLOperation_DELETE

EAI Siebel Adapter/Delete/

Predefined operation

IXMLOperation_QUERY

EAI Siebel Adapter/Query/

Predefined operation

IXMLOperation_QUERYPAGE

EAI Siebel Adapter/QueryPage/NewQuery=>IXML_NewQuery;SearchSpec=>SearchSpec;StartRowNum=>IXML_StartRowNum;PageSize=>IXML_PageSize;SERVICE_VALUE_RETURN;$LastPage=>IXML_LastPage;$NumOutputObjects=>IXML_NumOutputObjects;

Predefined operation

IXMLOperation_QUERY_BY_ID

EAI Siebel Adapter/Query/PrimaryRowId;!SiebelMessage;

Predefined operation

IXMLOperation_SYNCH

EAI Siebel Adapter/Synchronize/

Predefined operation

IXMLOperation_UPDATE

EAI Siebel Adapter/Update/

Predefined operation

The UCM Transaction Manager uses the prebuilt methods described in Table 3 to process inbound messages.

Table 3.  Pre-built Methods for UCM Transaction Manager
Name
Value
Description

Execute

Execute Transaction

Executes the transaction by invoking predefined business services

ExecuteOutbound

Execute Outbound

Executes the outgoing transaction

ExecuteSave

Execute and Save

Executes the transaction and saves result into memory

UCM Transaction Manager business service uses combinations of user property, method and method arguments to achieve different tasks. Table 4 lists the method arguments available to use with UCM Transaction Manager business service.

Table 4.  Method Arguments for Use with UCM Transaction Manager
Argument
Default Value
Description

OnlyIOI

FALSE

Used for Inbound integration. The inbound message may contain header, body, and envelope sections. When the Transaction Manager takes the proper operation against the Siebel application, the integration object instances for response are generated as well. Information from the request message is dropped if this value is set to true, reducing overhead for the UCM Converter and others. If this value is not set to true, the request information is still carried over.

ReportErrInMsg

FALSE

If set to true, the method will try to generate an error object within the message (default is false).

RollbackInError

FALSE

If set to true, the method will try to trigger a rollback operation when an error is encountered (default is false).

XMLHierarchy

N/A

Property set in UCM integration object hierarchy.

IXMLMapPath

 

The dispatch map entry for the current transaction.

PrimaryRowId

 

The primary row Id for the integration object.

SearchSpec

 

Run time search specification.

SiebelFINSOperationOut

 

Operation name, defined in the IAA transaction manager user property.

PlaceToSave

 

Specifies whether the result should be saved into memory or into a file. Valid value is File or Mem.

Although these arguments are available for use by UCM Transaction Manager, not all can be used with each method. Table 5 lists the arguments for each method.

Table 5.  Execute Method Arguments
Name
Display Name
Data Type
Type
Optional
Comments

Method: Execute

OnlyIOI

Produce only Integration Object Instance

String

Input

Y

If set to true, the method will take out all headers and envelope information and return only integration object instances.

ReportErrInMsg

Report Error In Message

String

Input

Y

If set to true, the method will try to generate an error object within the message (default is false).

RollbackInError

Rollback In Error

String

Input

Y

If set to true, the method will try to trigger a rollback operation when an error is encountered (default is false).

XMLHierarchy

XML Property Set

Hierarchy

Input / Output

Y

XML Message Hierarchy

Method: Execute Outbound

IXMLMapPath

IXML Map Path

String

Input

N

Dispatch map entry for the current transaction.

PrimaryRowId

Primary Row Id

String

Input

Y

Primary row Id for the integration object.

SearchSpec

Search Specification

String

Input

Y

Run time search specification.

SiebelFINS OperationOut

Outbound Operation

String

Input

N

Operation name, defined in the IAA transaction manager user property.

XMLHierarchy

XML Hierarchy

Hierarchy

Output

N

XML Message Hierarchy

Method: Execute Save

IXMLMapPath

 

String

Input

N

Dispatch map entry for the current transaction.

PlaceToSave

Save into File/Mem

String

Input

Y

Specifies whether the result should be saved into memory or into a file. Valid value is File or Mem.

PrimaryRowId

 

String

Input

Y

Primary row Id for the integration object.

SearchSpec

 

String

Input

Y

Run time search specification.

UCM Converter

The UCM Converter converts Siebel Master Data Applications messages received to a property set for inbound communication. The converter iterates through the requests and responses in the message to construct error information (if any), and also constructs the envelope and header section of the message. Table 6 lists the user properties for this converter.

Table 6.  User Properties for UCM Converter
Name
Value
Description

EscapeNames

true or false

If set to true, the converter replaces illegal XML name characters with escape characters. Otherwise, it ignores illegal XML name characters. The default value is true.

HierarchyFormat

XML Hierarchy

Format of the property set input or output. For internal use.

XMLEnvIntObjectName

<integration object name>

Name of an integration object that defines the content and hierarchy for the envelope and header section of CRMML. The default envelope integration object is Siebel Master Data Applications Envelope.

This service provides several ready-to-use methods as described in Table 7.

Table 7.  Methods for UCM Converter
Name
Display Name
Comments

GenerateErrorPropSet

GenerateErrorPropSet

Constructs the XML hierarchy to respond to external systems when undesired operation or configuration errors occur.

PropSetToXML

PropSetToXML

Converts an integration object hierarchy to an XML document.

PropSetToXMLPropSet

PropSetToXMLPropSet

Converts an integration object hierarchy to an XML hierarchy.

XMLPropSetToPropSet

XMLPropSetToPropSet

Converts an XML hierarchy to an integration object hierarchy.

XMLToPropSet

XMLToPropSet

Converts an XML document stored in the value member of the input property set to an integration object hierarchy.

For each method defined, the UCM Converter business service takes input arguments and produces output arguments. These arguments are described in Table 8.

Table 8.  Arguments for the UCM Converter
Name
Default
Description

ErrorCode

N/A

Actual error code to be set to the <ErrorId> element in CRMML fault section.

ErrorMessageText

N/A

Actual error text to be set to the <ErrorDescription> element in CRMML fault section.

GeneralErrorMessageText

N/A

Generic text to be prepended to the error text.

XMLHierarchy

N/A

Property Set in the external integration object or XML hierarchy used as input/output.

<Value>

N/A

Output XML document.

EscapeNames

N/A

Escape characters not valid for XML tags. Otherwise, remove invalid characters.

IgnoreCharSetConvErrors

N/A

If some characters cannot be represented in the destination character set (for example, local codepage), the errors can be ignored. By default, the errors are not ignored. In both cases, a warning log entry is produced.

XMLCharEncoding

N/A

XML character encoding to use in the output XML document. If the encoding is blank or not supported, an error will be produced.

XMLHeaderText

N/A

Text to prepend to the beginning of XML document data.

ExternalEntityDirectory

N/A

Location of external entity files, such as DTD files.

ValidateExternalEntity

N/A

If true, the parser will be set to validate against external metadata (for example, a DTD).

FailSecurityHierarchy

N/A

Property Set storing the operations which fail the security system check.

Each UCM Converter method uses a group of these method arguments to convert the data for the next service in the integration process. Table 9 lists the arguments for each method.

Table 9.  Argument Specifications
Name
Display Name
Data Type
Type
Optional
Comments

Method: GenerateErrorPropSet

ErrorCode

ErrorCode

String

Input

N

Actual error code to be set in the IAA Fault section.

ErrorMessageText

ErroMessageText

String

Input

N

Actual error text to be set in the IAA Fault section.

GeneralError MessageText

GeneralError MessageText

String

Input

Y

Generic text to be prepended to the error text.

XMLHierarchy

ErrXMLHierarchy

Hierarchy

Input / Output

Y

Input request hierarchy/output response hierarchy.

Method: PropSetToXML

<Value>

XML Document

String

Output

Y

Output XML document.

EscapeNames

Escape Names

String

Input

Y

Escape characters not valid for XML tags. Otherwise, remove invalid characters.

IgnoreCharSet ConvErrors

Ignore Character Set Conversion Errors

String

Input

Y

If some characters cannot be represented in destination character set (for example, local codepage), the errors can be ignored. By default, the errors are not ignored. In both cases, a warning log entry is produced.

XMLCharEncoding

XML Character Encoding

String

Input

Y

XML character encoding to use in the output XML document. If encoding is blank or not supported, an error will be produced.

XMLHeaderText

XML Header Text

String

Input

Y

Text to prepend to beginning of the XML document data.

XMLHierarchy

XML Hierarchy

Hierarchy

Input

N

XML Property Set hierarchy. Document property set is a child of XML Property Set child of the Service Arguments.

FailSecurityHierarchy

FailSecurityHierarchy

Hierarchy

Input

Y

 

Method: PropSetToXMLPropSet

XMLHierarchy

XML Hierarchy

Hierarchy

Input

N

XML Property Set hierarchy. Document property set is a child of XML Property Set child of the Service Arguments.

Method: XMLToPropSet

<Value>

XML Document

String

Input

N

Input XML document.

EscapeNames

Escape Names

String

Input

Y

XML Tags may contain names that have invalid characters escaped. Character escape format is internal to Siebel.

ExternalEntity Directory

External Entity Directory

String

Input

Y

Location of external entity files, such as DTD files.

IgnoreCharSet ConvErrors

Ignore Character Set Conversion Errors

String

Input

Y

If some characters cannot be represented in destination character set (for example, local codepage), the errors can be ignored. By default, the errors are not ignored. In both cases, a warning log entry is produced.

ValidateExternal Entity

Validate External Entity

String

Input

Y

If true, the parser will be set to validate against external metadata (for example, a DTD).

XMLCharEncoding

XML Character Encoding

String

Output

Y

Character encoding of the XML document, detected by the converter independent of the parser.

XMLHierarchy

XML Hierarchy

Hierarchy

Output

Y

Output XML Property Set Hierarchy. Document property set is a child of the XML Property Set child of Service Argument output.

UCM Dispatcher

The UCM Dispatcher is responsible for receiving and dispatching inbound messages. It receives the inbound message and scans the message for any operations specified in its rule sets dispatcher map, and associates the integration objects for the connector components. It then parses the envelope of the message, converts it to the header property set, and passes the integration objects for the specified action, the envelope layer property set, and the XML message to the connector components for further processing. Table 10 lists the user properties for UCM Dispatcher.

Table 10.  User Properties for UCM Dispatcher
Name
Value
Description

DispatcherMapName

<integration object name>

Name of an integration object that details the dispatching rules and syntax for the CRMML standard. This map is usually created along with the other integration objects by the wizard. The default map name is "CIFDispMap."

XMLEnvIntObjectName

<integration object name>

Name of an integration object that defines the content and hierarchy for the envelope and header section of CRMML. The default envelope integration object is "UCM Envelope."

The UCM Dispatcher business service provides ready-to-use methods and method arguments described in Table 11.

Table 11.  UCMDispatcher Methods
Method
Display Name
Description

DispatchMessage

Dispatch Message

Validates the incoming XML message. If the message conforms to the dispatching rules, integration object names and other necessary information will be attached. It also checks for the respective envelope, header and fault section of the message and identifies them.

For each method defined, the UCM Dispatcher business service takes input arguments and produces output arguments. These arguments are described in Table 12 and Table 13.

Table 12.  UCM Dispatcher Method Arguments
Argument
Default
Description

XML Hierarchy

N/A

Property Set in XML hierarchy.

Table 13.  Method Arguments for DispatchMessage Method
Name
Display Name
Data Type
Type
Optional

XMLHierarchy

XML Hierarchy

Hierarchy

Input/Output

No

UCM Security Manager

The UCM Security Manager acts as the gatekeeper of the Siebel Universal Customer Master Application. It verifies the System ID in the message header against the System Registrations in the Siebel Universal Customer Master Application before the system can perform its desired operations. After a system passes the registration verification process, the UCM Security Manager cycles through the heterogeneous commands in the body. The UCM Security Manager checks the privilege of the individual operations in the body sections against the privileges in the Customer Master for the particular object and operation. Any fail operation instances in the body are removed from the XMLHierarchy and attached to the FailSecurityHierarchy. Table 14 lists the user properties for the UCM Security Manager.

Table 14.  User Properties for UCM Security Manager
Name
Value
Description

IXMLOperation_ADD

Insert

Field Name value pair.

Checks the Insert field for privilege if the UCM Dispatcher tags the business process as an IXMLOperation_ADD operation.

IXMLOperation_DELETE

Delete

Field Name value pair.

Checks the Delete field for privilege if the UCM Dispatcher tags the business process as an IXMLOperation_DELETE operation.

IXMLOperation_QUERY

Query

Field key value pair.

Checks the Query field for privilege if the UCM Dispatcher tags the business process as an IXMLOperation_QUERY operation.

IXMLOperation_QUERYPAGE

Query

Field key value pair.

Checks the Query field for privilege if the UCM Dispatcher tags the business process as an IXMLOperation_QUERYPAGE operation.

IXMLOperation_UPDATE

Update

Field key value pair.

Checks the Update field for privilege if the UCM Dispatcher tags the business process as an IXMLOperation_UPDATE operation.

The UCM Security Manager processes only inbound messages. Table 15 lists and describes the method that processes inbound messages.

Table 15.  Process Method for UCM Security Manager
Name
Display Name
Description

SecurityCheck

Security Check

Supports only inbound requests to the Siebel Connector for Master Data Applications. This method checks the System ID in the Envelope against the Siebel Universal Customer Master Application for System Registration. It also checks the individual business process in the body for privileges to perform operations specified.

UCM Security Manager business service uses a combination of user property and method arguments for its methods to achieve different tasks. Table 16 lists the method arguments available to use with UCM Security Manager business service.

Table 16.  Method Arguments for Use with UCM Security Manager
Argument
Display Name
Description

SecurityEnforced

N/A

Use to turn on or off the Security checking process. When this value is set to false the UCM Security Manager will bypass the registration verification process and the operation privilege checking process. UCM Security Manager will perform its security checking operations only when the value is set to true.

XMLHierarchy

N/A

Property set in UCM integration object hierarchy.

FailSecurityHierarchy

N/A

Property set in Siebel Master Data Applications integration object hierarchy. It includes failed system registration verification body instances or individual business processes that have no privilege to perform the operation specified.

Table 17 lists the detailed arguments for the method Security Check.

Table 17.  Arguments for Method Security Check
Argument
Display Name
Data Type
Type
Optional

SecurityEnforced

Security Enforced

String

Input

N

XMLHierarchy

XML Hierarchy

Hierarchy

Input or Output

N

FailSecurityHierarchy

Fail SecurityHierarchy

Hierarchy

Input

Y

UCM Publish/Subscribe Service

The UCM Publish/Subscribe Service supports both Real Time and Daily Batch publish types.

The Real Time publish module takes the Siebel Connector for Master Data Applications output message, which could include heterogeneous body segments with different business object types, as an input message. It dynamically constructs a unique output message for each system based on the Business Object type that the system registered in the Publish/Subscribe administration view. The Real Time publish module sends the constructed messages to the registered systems through a registered protocol type.

Similarly, the Daily Batch publish module publishes the synchronization information of registered Business Object types. The module constructs messages according to Siebel Master Data Applications message specification and sends them to the registered system through registered protocol types at the registered publish time.

Both publish modules then update the Last Publish time to the system in the Publish/Subscribe table.

The UCM Publish/Subscribe Service has no user properties. It uses the prebuilt methods described in Table 18 to publish messages.

Table 18.  Method for UCM Publish/Subscribe
Name
Display Name
Description

PublishMethod

Publish

Dynamically routes to Real Time or Daily Batch publish style according to the incoming message style.

UCM Publish/Subscribe Service uses a combination of methods and method arguments to achieve different tasks. Table 19 lists the method arguments available to use with UCM Publish/Subscribe Service business service.

Table 19.  Method Arguments for Use with UCM Publish/Subscribe
Argument
Display Name
Description

XMLHierarchy

N/A

Property set in UCM integration object hierarchy. It is the input of real-time publish.

Account

N/A

Input of Account integration object name to be used during Daily Batch publishing time. It is the keyword for identifying the integration object associated with CIFAccount messages.

Contact

N/A

Input of Contact integration object name to be used during Daily Batch publishing time. It is the keyword for identifying the integration object associated with CIFContact messages.

Household

N/A

Input of Household integration object name to be used during Daily Batch publishing time. It is the keyword for identifying the integration object associated with CIFHousehold messages

Although these arguments are available to be used by UCM Publish/Subscribe Service, not all can be used with each method. Table 20 and Table 21 list the arguments for each method.

Table 20.  Argument Details for Publish Method (Real Time)
Argument
Display Name
Data Type
Type
Optional

XMLHierarchy

XML Hierarchy

Hierarchy

Input

 

Table 21.  Argument Details for Publish Method (Daily Batch)
Argument
Display Name
Data Type
Type
Optional

Account

Batch Account Integration Object Name

String

Input

 

Contact

Batch Contact Integration Object Name

String

Input

 

Household

Batch Household Integration Object Name

String

Input

 

NOTE:  For Daily Batch, configure one of the integration objects to be used in each batch publish workflow.

Transport Adapter

Transport Adapter is a prebuilt business service providing an interface between Siebel eBusiness Applications and external applications. Transports allow Siebel Master Data Applications to exchange data with external applications using standard technologies for both synchronous and asynchronous communication protocols. Transports provide connectivity to virtually any communication protocol that can represent data as text or binary messages, including MQSeries from IBM, and HTTP.

For details on transport adapters, see Transports and Interfaces: Siebel eBusiness Application Integration Volume III.

Siebel EIM and Integration of Siebel Master Data Applications

Siebel EIM is an important component of Siebel Master Data Applications. It bulk imports and exports data residing in other back-office systems into Siebel Master Data Applications and consolidates and replicates information from these sources. Siebel EIM provides a schema abstraction and has high throughput. Some features of Siebel EIM include:

  • Denormalized interface tables
  • Declarative mapping defined in Siebel Tools
  • Automated SQL generation
  • Support for parallelized import

For further information about Siebel EIM, see Siebel Enterprise Integration Manager Administration Guide.

Siebel Master Data Applications Reference for Industry Applications