eai/realtime data load - · pdf fileeai/realtime data load 1. ... the workflow handle...

31
EAI/Realtime Data Load EAI/Realtime Data Load 1

Upload: donhan

Post on 12-Mar-2018

245 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

EAI/Realtime Data LoadEAI/Realtime Data Load

1

Page 2: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

The UCM application is just another Siebel applicationwhich can be integrated with external systems viadifferent EAI Methodologies. Few common amongstthem are:

1. Queue BasedEAI HTTP Transport2. EAI HTTP Transport

3. Webservices

So according to client’s requirement, we come up with the appropriate methodology and go about integration. All these methodology use XML as the standard language for data exchange.

2

Page 3: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

3

Page 4: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

CRM Markup Language: An XML based markuplanguage for data exchange and remote businessprocess invocation used for the followingcommunications with UCM:

– Inbound requests (insert, query, update, delete)– Responses– Responses– Publishing messages

The data exchange that happens between the two systems use CRMML.

External System UCMRequest Msg

Resposnse Msg

4

Page 5: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

5

Page 6: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

� An integration object, in the context of Siebel EAI, ismetadata; that is, it is a generalized representation ormodel of a particular set of data. It is a schema of aparticular entity.(Content of messages exchanged duringintegration are called Integration objects.)integration are called Integration objects.)

� Define the structure of the CRMML message� Are used as templates to create memory-resident instances of data for processing by business services

� UCM provides multiple IOs for different parts of the CRMML message (unlike the SiebelMessage XML which used to be formed by just one IO)

6

Page 7: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Contains– Information identifying sending and receiving systems– Message descriptor identifying the message<CRMHeader><FromSystem><SystemInfo><SystemInfo><SystemId>System123</SystemId><SystemName>External App</SystemName></SystemInfo></FromSystem><ToSystem> … </ToSystem><MessageDescriptor> … </ MessageDescriptor></CRMHeader>

7

Page 8: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Used to describe both the sending and receiving systems

– <FromSystem> - sender– <ToSystem> - receiverFor inbound messages, FromSystem SystemId is For inbound messages, FromSystem SystemId is matched against registered systems as part of UCM’s security check

8

Page 9: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Identifies the message– MessageId : Unique ID for the message– Timestamp: when message was issued– TimeToLive: how long (after timestamp) message is validvalid

– TransactionScope : reserved for future use

9

Page 10: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

CRMHeader element has the following structure

10

Page 11: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

� The CIF Envelope Integration Object is used toprocess the CRMML Header

� So if you want to use any customer headers, youwould need to customize this IO.

� In most cases, the default IO can be used as is.� In most cases, the default IO can be used as is.

11

Page 12: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Contains one or more message elements representing:– Inbound requests from an external applications to

insert, query, update, or delete a database object–Outbound response to a requested transaction–Outbound publication messages to be sent to an

external subscribing applicationexternal subscribing applicationEach message element includes:– Software package – CIFPartyPackage–Method – the requested action– Argument – the argument to the action

12

Page 13: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

UCM methods and arguments are mapped tointegration objects according to a set of mappingrules

• These mapping rules define:– What methods are allowed– What methods are allowed– What arguments those methods take

13

Page 14: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

The mapping rules are defined in user propertiesof a mapping integration object

– The default mapping object is CIFDispMap

14

Page 15: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Structure of a base CRMML message

15

Page 16: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

The workflow handle real-time incoming requests (CRMML Messages) coming from external systems.

It performs the following tasks:– Check source system privileges– Create memory-resident instances of data for processing by business

services, based on integration object definitionsservices, based on integration object definitions– Execute requested operation– Return response to requesting system / Publish (real-time) to subscribing

systemsNote: There is a parameter in these workflows called “Enable Realtime Insert”. If this

is set to false, the workflow would load the data from the CRMML only into theSDH table. The data would then need to be processed by the BDM workflows forloading the base tables. If this parameter is set to true, the SPP workflow would,after loading the CRMML into the SDH table, invoke the Data Quality andSurvivorship rules and load the base tables.

16

Page 17: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

This is the vanilla workflow– To make it work in an actual project environment, you mayneed to replace the “File Transport” steps with otherTransports such as WebLogic, TIBCO, JMS etc.

– Some of the important steps of this workflow are discussedfurther

17

Page 18: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Invokes the Receive method of the EAI FileTransport business service

– Reads contents of a file into string– Input file should contain a valid CRMMLmessagemessage

18

Page 19: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Invokes the XMLDocToXMLHier method of theXML Hierarchy Converter business service

– Converts an XML string into an XML hierarchyobjectobject

19

Page 20: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Invokes the DispatchMessage method of the UCMDispatcher business service

– Verifies structure of CRMML message– Acts information to message components that isused by downstream business servicesused by downstream business services

20

Page 21: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Uses two integration objects, specified as userproperties of the business service, to representthe message

21

Page 22: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

22

Page 23: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Invokes the SecurityCheck method of the UCM Security Manager business service

– Verify the SystemId in the message header against system registrations• Return an error if the system is not recognized– For each method in the request, verify that the system has the privilege

required to execute the operation• Failed operations are removed from the request and put into the ‘FailSecurity Req Prop’ property set

23

Page 24: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

User properties map operation (inserted by theDispatcher) to privileges (assigned to systemsin system registration)

24

Page 25: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Invokes the XMLPropSetToPropSet method of the UCMConverter business service

– Each method is converted into the format required by theTransaction Manager

– Requesting System information is extracted from the headerto make it available to downstream business services

• Uses integration object, CIF Envelope

25

Page 26: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Sample converted method

26

Page 27: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Invokes the Execute method of the UCM Transaction Managerbusiness service

– Performs operations in message by invoking services configured inits user properties

– Inserts data into SDH table, and then loads it into the base tables if“Enable Realtime Insert” is true

– Runs DQ and Survivorship rules if corresponding processproperties are true

27

Page 28: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Invokes the PropSetToXMLPropSet method of theUCM Converter business service

– Generates a response that combines informationfrom its inputs

– Response will be converted to an XML hierarchyand then sent back to the requestingand then sent back to the requesting

system

28

Page 29: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Allows records inserted or updated in UCM to bepublished to external systems

– Distributes the best version customer profile– Systems registered as subscribers receivepublication messages

29

Page 30: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

Publish and Subscribe framework supports two operative modes:– Real-time• Transaction are published as they happen• Each individual transaction is published to real-time subscribers– Event-Based• Configure Runtime-Events to trigger publishing• Configure Runtime-Events to trigger publishing– Daily Batch Mode• Transactions are published once per day• Best version of record is published, individual transactions are not• Systems can mix and match modes– Contact updates received in real-time– Account updates received from daily batch job

30

Page 31: EAI/Realtime Data Load - · PDF fileEAI/Realtime Data Load 1. ... The workflow handle real-time incoming requests (CRMML Messages) ... Siebel UCM Training Author: pjha Created Date:

31