Monday, December 20, 2010

Basic EAI Tasks

This post will give you quite a good idea about how siebel integrates with external systems.

Before actually going for integration , you should be clear with following:

  1. External data to bring into the Siebel application and the Siebel data to send to the external application.
  2. Mapping between Siebel field names with external field names
  3. Transformations to match Siebel data structures to external data structures such as Contact in siebel might be customers in external system.
  4. Exchange format such as XML
  5. Transport to use between applications such as IBM MQSeries , File Transport , HTTP , MicrosoftMSMQ etc
  6. Volume of data
  7. Approaches for integration
  • Export Siebel Data
  • Synchronize Siebel and External Data
  • Displaying Siebel data in external application
  • Displaying external Data in siebel without replicating same in siebel
8. Integration Strategies
  • Workflow for EAI
  • Enterprise Integration Manager (EIM)
  • Virtual Business Components
  • Web Services
  • Object Interfaces such as COM Objects etc
While deciding on strategies , we often get confused what to do , below diagram will help you to decide same.

I will be discussing about strategies in detail in next sessions.

EAI Business Services

I have listed down the business services which we often use during integration and each developer should be aware of. I will each in detail in my next posts

  1. EAI Siebel Adapter,
  2. EAI XML Converter
  3. EAI XML Queuing Service
  4. EAI XML Write to File
  5. EAI XML Read from File
  6. EAI XSLT Service
  7. Transcode Service
  8. PRM ANI Utility Service
  9. Workflow Utilities
  10. FINS Industry XML Query Service
  11. EAI Data Transformation Engine
  12. EAI Dispatch Service
  13. EAI File Transport
  14. Server Requests
If you have understanding of services mentioned above , i believe you are good to work on EAI.
I have not specified the entire list of transport business services.

You can also refer Siebel Essentials for other business service such as Data Validation Manager , Server Requests etc.

Please feel free to add the important business services missed, if any in the list.

Sunday, December 19, 2010

Integration Object (IO)

Integration Object is very well defined in Siebel Bookshelf. I will stress on little bit basics and areas which are either usually ignored by reader and are very important for EAI interviews.

Integration Object defines the structure of Business Object , like XSD defines for XML.

Often we get confuse with integration object and integration object instance, Integration object instance is data within the structure or data in the structure of the integration object. For example XML structure without data (Integration Object) and XML with data (Integration Instance). Siebel provides an Wizard to help you create Integration Object.

Integration Object instance is provided as input to Workflow/Business service as shown below.



IO can be of two types

1) Internal Integration Object - Define the structure of Business Objects within Siebel.Query for Data Object Type property as Business Object in siebel tools on Integration Object definition to retrieve Internal IO's.

2) External Integration Object - Defines the structure of Outside/External system with whom siebel is interacting with.Query for Data Object Type property as XML in siebel tools on Integration Object definition to retrieve External IO's.

Practical Things about Integration Objects

Lets take a scenario described above and also copied same below



In above diagram, Opportunity is Child BC of Contact having M:M relationship , Business Address and Position are MVG on Contact BC.

1) User properties Association on the integration component denote that the corresponding business component is an associated or child business component and has M;M relationship with parent business component. For example for Contact IO Opportunity is child BC and has user property association set to Y as it has M:M relationship with contact.

2) User properties MVGAssociation on the integration component denote that the corresponding business component is an MVG and have M;M relationship with parent business component. For example for Contact IO Business address has user property MVGAssociation set as Y as they have M:M relationship. Importantly all the integration components fields of MVG integration component in this case business address has only fields defined which are available in multivalue field of contact BC.

3) User property MVG is used in case parent has only 1:M relationship with MVG as contact has with alternate phone.

4) For fields that are defined on MVG associations, External Name denotes the name of the business component field as it appears on the parent business component, and the user property AssocFieldName denotes the name of the business component field as it appears on the MVG business component.

5) If an integration component field is created for a Siebel business component field, and the business component field is based on a picklist, has a user property with the name PICKLIST and a value of Y otherwise; the Object Manager does validation