Vous êtes sur la page 1sur 33

Essentials (Siebel 7.

7)

Module 51: Using Siebel


Remote to Support Mobile
Clients
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

Module 51: Using Siebel Remote to Support Mobile Clients 2 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

Server Database

Local

Database
Siebel Server

Module 51: Using Siebel Remote to Support Mobile Clients 3 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

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


Siebel Remote Elements
 Three major elements:
 Database Server
 Siebel Server
Siebel Server(s):
 Mobile Clients

Database Server

Modem, LAN, or WAN connection

Mobile Clients

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


Database Server Overview
 Stores data for stationary and mobile client users

Siebel Server(s):

Database Server

Modem, LAN, or WAN connection

Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 6 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

Table S_DOCK_TXN_LOG
Table

Master Transaction Log Modem, LAN, or WAN connection

Mobile Clients
Module 51: Using Siebel Remote to Support Mobile Clients 7 of 33
Database Server – Routing Rules
 Determine data to be extracted to mobile user
 Determine follow-on transactions to route to a mobile user
Siebel Server(s):

Database Server

Table S_DOCK_TXN_LOG
Table

Master Transaction Log Modem, LAN, or WAN connection


Routing Rules

Legend
Mobile Clients
= Routing Rules

Module 51: Using Siebel Remote to Support Mobile Clients 8 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

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


Database Server – Routing Models Continued

 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
Field Sales Rep 1 Field Engineer 2

Mobile Client Standard


Field
Field
Sales
Field Sales Rep 2 Rep
Engineer Field Engineer 1
Analyst

Analyst 1 Analyst 2

Module 51: Using Siebel Remote to Support Mobile Clients 10 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

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


Siebel Server Overview
 Siebel Remote components operating on the Siebel Server

Siebel Server(s):
Generate New Database
Database Extract
Database Server Transaction Processor
Transaction Router
Synchronization Manager
Transaction Merger

Modem, LAN, or WAN connection

Mobile Clients

Module 51: Using Siebel Remote to Support Mobile Clients 12 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

\
Database schema DBTEMPL\db41r56.
definition 048\sse_utf8.dbz

Siebel Server(s):
Siebel Generate New Database
Repository

Module 51: Using Siebel Remote to Support Mobile Clients 13 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

VSILVER\Outbox\
User-specific data 000001.uaf
The snapshot file contains
user specific data and is
Siebel Server(s): stored in a user’s
Siebel Generate New Database OUTBOX
Database Database Extract

Module 51: Using Siebel Remote to Support Mobile Clients 14 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
Transactions are extracted

Database Server
\TXNPROC
Table
S_DOCK_TXN_LOG
Table

Transactions are purged

Siebel Server(s):
Generate New Database
Database Extract
Transaction Processor

Module 51: Using Siebel Remote to Support Mobile Clients 15 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 DOCKING\User\Outbox
extracts 0000002.dx
data for
0000003.dx
particular
user …...

Module 51: Using Siebel Remote to Support Mobile Clients 16 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
Siebel Server
Local

DatabaseLocal\Outbox
File System
File System trans
trans Client synchronization
Docking\User\Inbox
trans
trans

Module 51: Using Siebel Remote to Support Mobile Clients 17 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

Database Server

00051.dx
Transaction
00052.dx
Merger 00053.dx
\Outbox

Module 51: Using Siebel Remote to Support Mobile Clients 18 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

Module 51: Using Siebel Remote to Support Mobile Clients 19 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

Module 51: Using Siebel Remote to Support Mobile Clients 20 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
Joe Bob

Server
Local Local
Database
Database Database

Main Phone # Main Phone # Main Phone #

(650) 555-0000 (650) 555-0000 (650) 555-0000

Module 51: Using Siebel Remote to Support Mobile Clients 21 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

Joe Bob

Server
Local Local Database
Database Database

Main Phone # Main Phone # Main Phone #

(650) 555-0000 (650) 555-0000 (650) 555-0000

Main Phone # Main Phone #

(650) 555-2222 (650) 555-1111


Module 51: Using Siebel Remote to Support Mobile Clients 22 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

Joe

Server

Database
Local

Database Current value:


Before
Before image Main Phone # Main Phone # Transaction
Merger update
(650) 555-0000 (650) 555-0000

Value after
Current value Main Phone # Main Phone # Transaction
(650) 555-2222 (650) 555-2222
Merger update

Module 51: Using Siebel Remote to Support Mobile Clients 23 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

Server

Local Database
Database

Before image Main Phone # Main Phone # Bob’s update

(650) 555-0000 (650) 555-2222

Current value Main Phone #


CONFLICT!
(650) 555-1111
Module 51: Using Siebel Remote to Support Mobile Clients 24 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

Bob

Server

Database
Local

Database Current value:


Before
Before image Main Phone # Main Phone # Transaction
(650) 555-2222 (650) 555-2222 Merger update

Current value Main Phone #

(650) 555-1111
Module 51: Using Siebel Remote to Support Mobile Clients 25 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

Module 51: Using Siebel Remote to Support Mobile Clients 26 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

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


Mobile Web Client Overview
 Stores local data and manages synchronization session
between the client and the server

Siebel Server(s):

Database Server

Modem, LAN, or WAN connection

Mobile Clients
Local database and File
System
Siebel Remote Client

Local

Database
Module 51: Using Siebel Remote to Support Mobile Clients 28 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 to
merge from
mobile client’s
Transactions
Inbox to the
stored in the
server database
mobile client’s
Outbox to apply
to the local
database

Module 51: Using Siebel Remote to Support Mobile Clients 29 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

File System

Local

Database

Module 51: Using Siebel Remote to Support Mobile Clients 30 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

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


Synchronization Processing Summary
 Illustrates the synchronization process
Transaction
Server logging
Local
Transaction
Table Trans
Table Trans logging
Table Table Table
Table Transaction
Processor

Siebel trans
Synchronization
Remote
Transaction File System
Merger

File System trans Local\Outbox trans


Docking\User\Inbox
trans
trans Local\Inbox Docking\User\Outbox

Transaction
Synchronization Router
Module 51: Using Siebel Remote to Support Mobile Clients 32 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

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

Vous aimerez peut-être aussi