51ESS_Using Siebel Remote to Support Mobile Clients
Post on 27-Apr-2015
218 Views
Preview:
Transcript
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)
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
…...
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
top related