51ESS_Using Siebel Remote to Support Mobile Clients

33
Module 51: Using Siebel Remote to Support Mobile Clients Essentials (Siebel 7.7)

Transcript of 51ESS_Using Siebel Remote to Support Mobile Clients

Page 1: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile

Clients

Module 51: Using Siebel Remote to Support Mobile

Clients

Essentials (Siebel 7.7)Essentials (Siebel 7.7)

Page 2: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 2 of 33

Module Objectives

After completing this module you will be able to: Describe Siebel Remote components and their function Describe how Siebel Remote identifies and resolves

database conflicts

Why you need to know: To support mobile clients effectively, you need to

understand how Siebel Remote works

Page 3: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 3 of 33

Siebel Remote

A data replication and synchronization technology that supports mobile deployments of Siebel Applications Enables users to access Siebel data on a local database while

disconnected from the server Synchronizes local data periodically to a central database

Siebel Server

Local

Database

Server

Database

Page 4: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 4 of 33

Siebel Remote Functions

Transaction capturing Transaction routing Synchronization of Database Server and Mobile Client database

Database records Files such as literature, correspondence, and attachments from

the Siebel File System Conflict resolution

Page 5: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 5 of 33

Siebel Remote Elements

Three major elements: Database Server Siebel Server Mobile Clients

Siebel Server(s):

Database Server

Mobile Clients

Modem, LAN, or WAN connection

Page 6: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 6 of 33

Database Server Overview

Stores data for stationary and mobile client users

Siebel Server(s):

Database Server

Mobile Clients

Modem, LAN, or WAN connection

Page 7: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 7 of 33

Database Server – Master Transaction Log

Captures and stores transactions applied to the Database Server Stores before and after images of data at a field level Table = S_DOCK_TXN_LOG Siebel Server(s):

Database Server

Mobile Clients

Modem, LAN, or WAN connection

Table S_DOCK_TXN_LOG

Table

Master Transaction Log

Page 8: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 8 of 33

Database Server – Routing Rules

Determine data to be extracted to mobile user Determine follow-on transactions to route to a mobile user

Legend

= Routing Rules

Siebel Server(s):

Database Server

Mobile Clients

Modem, LAN, or WAN connection

Table S_DOCK_TXN_LOG

Table

Master Transaction LogRouting Rules

Page 9: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 9 of 33

Database Server – Routing Models

Routing rules are grouped into sets called Routing Models Each mobile user is assigned to one routing model that

matches his/her data requirement Usually based on their job role within the organization

Ensure that only the necessary data is routed to the mobile user

MWEST assigned to the Mobile Client – Standard routing model

Page 10: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 10 of 33

Database Server – Routing Models Continued

Mobile Client Standard

Field Sales Rep 1

Field Sales Rep 2

Analyst 1 Analyst 2

Field Engineer 1

Field Engineer 2

Field Sales Rep

Analyst

Field Engineer

Most users use the Mobile Client Standard routing model Some users need only the data relevant to their functional role Users can also designate individual records to be included or

excluded during synchronization Selective Retrieval

Page 11: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 11 of 33

Dock Objects

Routing rules belong to an entity called Dock Object A logical group of tables with special schema to synchronize data

between a server and mobile database in a coherent manner Three types of data:

Enterprise Visible to all users within the application Example: Currency

Private Data not routed to mobile users Example: EIM

Limited May or may not be visible to a particular mobile user Contain routing rules Examples: Accounts, Opportunities

Page 12: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 12 of 33

Siebel Server Overview

Siebel Remote components operating on the Siebel Server

Database Server

Mobile Clients

Modem, LAN, or WAN connection

Siebel Server(s):Generate New Database Database ExtractTransaction ProcessorTransaction RouterSynchronization ManagerTransaction Merger

Page 13: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 13 of 33

Siebel Server – Generate New Database

Creates the local database template for a given database schema version that the mobile client uses during initialization of the local database

Runs on each Siebel Server supporting mobile clients

\DBTEMPL\db41r56.048\sse_utf8.dbz

Database schemadefinition

SiebelRepository

Siebel Server(s):Generate New Database

Page 14: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 14 of 33

Siebel Server – Database Extract

Extracts user data for mobile clients on the Siebel Server to which they will synchronize Uses routing rules to determine the data set to be extracted for a

mobile user File is stored in the mobile user’s outbox directory and is used to

initialize the local database for that mobile user

User-specific dataVSILVER\Outbox\000001.uaf

The snapshot file contains user specific data and is stored in a user’s OUTBOXSiebel

Database

Siebel Server(s):Generate New DatabaseDatabase Extract

Page 15: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 15 of 33

Siebel Server – Transaction Processor

Copies transactions from the Master Transaction log to the TXNPROC directory on Siebel Server(s) in the form of sequentially numbered .dx files

Purges the Master Transaction log once transactions are routed to all Siebel Servers

S_DOCK_TXN_LOGTable

Database Server

Transactions are extracted

Transactions are purged

Table\TXNPROC

Siebel Server(s):Generate New Database Database ExtractTransaction Processor

Page 16: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 16 of 33

Siebel Server – Transaction Router

Processes transactions from the TXNPROC directory for each mobile user Uses routing rules and visibility checking to re-bundle and route

transactions to the appropriate mobile client outboxes on the Siebel Server(s)

Extracts data and creates compressed, sequentially numbered transaction (.dx) files

\TXNPROC Transactions

Transaction Router extracts data for

particular user

DOCKING\User\Outbox

0000002.dx0000003.dx

…...

Page 17: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 17 of 33

Siebel Server – Synchronization Manager

Manages user synchronization sessions Starts a task when mobile client requests to synchronize Validates the mobile client

Synchronizes to a given Siebel Server defined during Database Extract

Compressed data and File System files are sent and received: From server by Synchronization Manager From mobile client by client synchronization

Synchronization Manager

Client synchronizationFile System

Siebel Server

File System

Local

Database

Docking\User\Inbox

Local\Outbox

transtrans

transtrans

Page 18: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 18 of 33

Siebel Server – Transaction Merger

Merges or applies transactions sent up from mobile users to the server database Processes inboxes in the order that mobile clients synchronize Applies changes to the server database Data merge occurs after the mobile client disconnects

Identifies and resolves data conflicts

00051.dx00052.dx00053.dx

\Outbox

TransactionMerger

Database Server

Page 19: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 19 of 33

Siebel Server – Transaction Merger Continued

Transaction Merger uses specific rules to resolve conflicts for three types of database data changes: Updates Duplicates Deletes

A system preference is set to write conflict information for users Navigate to Administration – Application > System Preferences >

MRG: User Friendly Notification = Conflicts

User is notified of database conflicts

Page 20: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 20 of 33

Transaction Merger – Update Conflicts

Update conflicts occur when the original image for the record or field being altered does not match the current image on the server

They are resolved by a rule Client Wins: Client database value overrides the server database

value Server Wins: Server database value overrides the client database

value A system preference is set to define the rule

Navigate to Administration – Application > System Preferences > MRG: System Conflict Resolution

Page 21: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 21 of 33

Example: Update Conflict

Business scenario Joe and Bob are on the same sales team, working on the ABC

account The value in the Main Phone # field for ABC is the same on all

machines

Server

Database

Main Phone #

(650) 555-0000

Main Phone #

(650) 555-0000

Main Phone #

(650) 555-0000

Joe Bob

Local

Database

Local

Database

Page 22: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 22 of 33

Example: Update Conflict Continued

Joe and Bob talk to different people at ABC and get different telephone number information

They update the ABC account Main Phone # on their laptops

Main Phone #

(650) 555-0000

Main Phone #

(650) 555-0000

Main Phone #

(650) 555-0000

Main Phone #

(650) 555-2222

Main Phone #

(650) 555-1111

Server

Database

Joe Bob

Local

Database

Local

Database

Page 23: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 23 of 33

Example: Update Conflict Continued

Joe synchronizes first The before image on Joe’s local database matches the current

value on the server, so the phone number is updated

Current value: Before

Transaction Merger update

Before image

Value after Transaction

Merger update

Current value

Main Phone #

(650) 555-0000

Main Phone #

(650) 555-0000

Main Phone #

(650) 555-2222

Main Phone #

(650) 555-2222

Server

Database

Joe

Local

Database

Page 24: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 24 of 33

Example: Update Conflict Continued

Bob synchronizes next The before image on Bob’s local database does not match the

current value on the server, so a conflict is detected Conflict rule = Server Wins, so Bob’s update to the server is

rejected

Bob’s update Before image

Current value Main Phone #

(650) 555-1111

Main Phone #

(650) 555-0000

Main Phone #

(650) 555-2222

CONFLICT!

Server

Database

Bob

Local

Database

Page 25: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 25 of 33

Example: Update Conflict Continued

When Bob synchronizes again, his update is applied to the server database Since he synchronized earlier, the before image on his local

database matches the current value on the server

Main Phone #

(650) 555-2222

Main Phone #

(650) 555-1111

Main Phone #

(650) 555-2222

Before image

Current value

Current value: Before

Transaction Merger update

Server

Database

Bob

Local

Database

Page 26: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 26 of 33

Transaction Merger – Duplicate Conflicts

A new transaction may be a duplicate of a transaction in another database that has not yet been processed on the server

Transaction Merger determines that a duplicate conflict exists if the new row’s User Key matches that of an existing row

Transaction Merger cannot ignore a duplicate transaction It cannot determine whether the transaction is a true duplicate or

simply an accidental use of the same identifier for two different records

It adds a new row and sets a system internal flag (CONFLICT_ID) indicating that the row is a duplicate

It notifies the mobile client on which the duplicate row originated that there is a duplicate

Page 27: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 27 of 33

Transaction Merger – Delete Conflicts

A delete conflict occurs when one of the database changes is to delete a record Example:

One transaction updates a database row and another transaction deletes the row

Transaction Merger ignores the update and deletes the row

Overrides all other transactions Supersedes system preference

MRG: System Conflict Resolution: Server Wins or Client Wins

Page 28: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 28 of 33

Mobile Web Client Overview

Stores local data and manages synchronization session between the client and the server

Siebel Server(s):

Database Server

Mobile ClientsLocal database and File SystemSiebel Remote Client

Modem, LAN, or WAN connection

Local

Database

Page 29: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 29 of 33

Mobile Web Client – Local Database

Mobile clients use a local database that stores data for user access Local transaction log keeps track of changes to database

The local database file is stored as \local\sse_data.dbf in the Siebel installation directory

Transactions stored in the

mobile client’s Outbox to apply

to the local database

Transactions to merge from

mobile client’s Inbox to the

server database

Page 30: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 30 of 33

Mobile Web Client – File System

The local file system contains files available to the mobile client when disconnected

Files added to local file system are synchronized up to the Siebel File System

Modem, LAN, or WAN connection

Local

Database

File System

Page 31: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 31 of 33

Siebel Remote Client

Initializes or refreshes the local database on the mobile client Applies database schema and snapshot file to local database

Is invoked automatically when mobile client attempts to synchronize if: Local database is not detected by the Siebel application Database extract (.uaf file) is waiting in the mobile client outbox on

the server Manages the synchronization process between a mobile client

and the Siebel Server Purges the local transaction log on the client and manages file

compression, decompression, transmission, and verification on the client

Page 32: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 32 of 33

Synchronization Processing Summary

Illustrates the synchronization process

Table Trans

Table

trans

trans

File System

Table

Server

Docking\User\Inbox

Table Trans

Table

transFile System

Table

Local

Transaction logging

Transaction logging

Synchronization

Transaction Processor

Transaction RouterSynchronization

Siebel Remote

Docking\User\Outbox

Local\Outbox

Local\Inboxtrans

trans

Transaction Merger

Page 33: 51ESS_Using Siebel Remote to Support Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 33 of 33

Summary

This module showed you how to: Describe Siebel Remote components and their function Describe how Siebel Remote identifies and resolves

database conflicts