Vous êtes sur la page 1sur 27

16

Copyright 2007, Oracle. All rights reserved.


Module 16: The Siebel Data Model
Siebel 8.0 Essentials
2 of 27
Copyright 2007, Oracle. All rights reserved.
Module Objectives
After completing this module you should be able to:
Describe the purpose of the Siebel Data Model
Describe the role of primary and foreign keys, indexes, and user
keys
Identify prominent tables in the Siebel Data Model

Why you need to know:
Enables you to understand how data is accessed in existing Siebel
applications
Enables you to understand how to map your business logic to the
Siebel Data Model
Enables you to configure the Data layer as necessary for your
implementation
3 of 27
Copyright 2007, Oracle. All rights reserved.
The Siebel Data Model
Defines how the data used by Siebel applications is stored in a
standard third-party relational database
Specifies the tables and relationships
Is designed to support the data requirements across Siebel
applications

Business
Component
Business
Object
Table
Field
Column
Defines data storage
organization (makes up
the data model)
Defines business logic
4 of 27
Copyright 2007, Oracle. All rights reserved.
Siebel Data
Is organized and stored in normalized tables in a relational
database
Each table has multiple columns storing atomic data (single-value,
cannot be logically further sub-divided)
The data schema is organized to eliminate repeated storage of
data
S_PROD_INT
R
O
W
_
I
D

N
A
M
E

P
A
R
T
_
N
U
M

U
O
M
_
C
D

Table
Columns (store
single values only)
5 of 27
Copyright 2007, Oracle. All rights reserved.
Primary Key (PK)
Is a column that uniquely identifies each row in a table
ROW_ID serves as the primary key for Siebel tables
Primary key
S_PROD_INT
R
O
W
_
I
D

N
A
M
E

P
A
R
T
_
N
U
M

U
O
M
_
C
D

6 of 27
Copyright 2007, Oracle. All rights reserved.
ROW_ID
Is a column in every table
Contains a Siebel application-generated identifier that is unique
across all tables and mobile users
Is managed by Siebel applications and must not be modified by
users
Is viewed by right-clicking the record or
navigating to Help > About Record
7 of 27
Copyright 2007, Oracle. All rights reserved.
Understanding the Data Model
Columns
User Keys
Indexes
Tables
Relationships Between Tables
Extension Tables
0/6
8 of 27
Copyright 2007, Oracle. All rights reserved.
Tables
Approximately 3,000 tables in the database
Three major types: Data, Interface, and Repository
EIM_PROD_INT
R
O
W
_
I
D

N
A
M
E

P
A
R
T
_
N
U
M

U
O
M
_
C
D

S_TABLE
R
O
W
_
I
D

N
A
M
E

D
E
S
C
_
T
E
X
T

T
Y
P
E

A
L
I
A
S

Interface Repository
S_PROD_INT
R
O
W
_
I
D

N
A
M
E

P
A
R
T
_
N
U
M

U
O
M
_
C
D

Data
This module is
focused on data
tables
1/6
9 of 27
Copyright 2007, Oracle. All rights reserved.
Data Tables
Store the user data
Business data
Administrative data
Seed data
Are populated and updated by:
Users through the Siebel applications
Server processes such as: Enterprise Integration Manager (EIM)
and Assignment Manager
Have names prefixed with S_
Are documented in the Siebel Data Model Reference
1/6
10 of 27
Copyright 2007, Oracle. All rights reserved.
Seven Prominent Data Tables
Store data for the major business entities
S_SRV_REQ
R
O
W
_
I
D

S
R
_
N
U
M

D
E
S
C
_
T
E
X
T

L
A
S
T
_
U
P
D

A
S
G
N
_
D
T

S_OPTY
R
O
W
_
I
D

N
A
M
E

B
D
G
T
_
A
M
T

S
T
G
_
N
A
M
E

P
R
O
G
_
N
A
M
E

S_CONTACT
R
O
W
_
I
D

L
A
S
T
_
N
A
M
E

F
S
T
_
N
A
M
E

M
I
D
_
N
A
M
E

S_PROD_INT
R
O
W
_
I
D

N
A
M
E

P
A
R
T
_
N
U
M

O
R
D
E
R
_
C
S
T

P
R
O
D
_
C
D

S_EVT_ACT
R
O
W
_
I
D

A
C
T
I
V
I
T
Y
_
U
I
D

T
O
D
O
_
C
D

O
P
T
Y
_
I
D

P
R
O
J
_
I
D

S_ORG_EXT
R
O
W
_
I
D

D
E
S
C
_
T
E
X
T

D
E
P
T
_
N
U
M

E
M
P
_
C
O
U
N
T

D
I
V
I
S
I
O
N

S_ASSET
R
O
W
_
I
D

N
A
M
E

A
S
S
E
T
_
N
U
M

M
F
G
_
D
T

S
E
R
I
A
L
_
N
U
M

Opportunity Service Request Contact
Asset Account Activity Internal Product
1/6
11 of 27
Copyright 2007, Oracle. All rights reserved.
Columns
Each table has multiple columns to store user and system data
Defined by Column child object definitions
Columns determine the data that can be stored in that table
2/6
12 of 27
Copyright 2007, Oracle. All rights reserved.
Column Properties
Determine size and type of data that can be stored in column
Limit proposed modifications to a standard application
Do not edit existing properties
Identifies data
type and size
2/6
13 of 27
Copyright 2007, Oracle. All rights reserved.
Data Type and Length Properties
Physical Type identifies the type of data to be stored
Length determines the maximum size
2/6
14 of 27
Copyright 2007, Oracle. All rights reserved.
System Columns
Exist for all tables to store system data
Are maintained by Siebel applications and tasks
System columns
2/6
15 of 27
Copyright 2007, Oracle. All rights reserved.
User Keys
Are used to determine the uniqueness of records when
entering, importing, or integrating data
Are predefined and cannot be changed

3/6
All columns in user key
may not be required
Column Combination
provides a unique value
16 of 27
Copyright 2007, Oracle. All rights reserved.
Indexes
Are a separate data structure that stores a data value for a
column and a pointer to the corresponding row
Used to retrieve and sort data rapidly
Are predefined by Siebel as a set of standard indexes

_U index based
on user key
4/6
Sequence affects sort order
_P index based
on primary key
17 of 27
Copyright 2007, Oracle. All rights reserved.
Relationships Between Tables
Siebel tables have many predefined relationships to support the
as-delivered application
1:M one-to-many
M:M many-to-many
S_ASSET
R
O
W
_
I
D

N
A
M
E

A
S
S
E
T
_
N
U
M

S
E
R
I
A
L
_
N
U
M

S_PROD_LN
R
O
W
_
I
D

N
A
M
E

D
E
S
C
_
T
E
X
T

1:M relationship M:M relationship
S_PROD_INT
R
O
W
_
I
D

N
A
M
E

P
A
R
T
_
N
U
M

O
R
D
E
R
_
C
S
T

Asset
Product Line
M
F
G
_
D
T

P
R
O
D
_
C
D

5/6
18 of 27
Copyright 2007, Oracle. All rights reserved.
1:M Relationships
Are captured using foreign key (FK) table columns in the table
on the many side of the relationship
FK column on many side of the relationship references PK
column on one side
PK FK
S_ASSET
R
O
W
_
I
D

N
A
M
E

A
S
S
E
T
_
N
U
M

S
E
R
I
A
L
_
N
U
M

P
R
O
D
_
I
D

Foreign key column for
1:M
Product : Asset
relationship
S_PROD_INT
R
O
W
_
I
D

N
A
M
E

P
A
R
T
_
N
U
M

O
R
D
E
R
_
C
S
T

P
R
O
D
_
C
D

5/6
19 of 27
Copyright 2007, Oracle. All rights reserved.
Foreign Key Table Columns
Are columns in a table that refer to the primary key column of a
related (parent) table
Many are named with suffix _ID
Are maintained by Siebel applications and tasks to ensure
referential integrity and should never be updated directly via
SQL
Foreign key table
5/6
Foreign key column
20 of 27
Copyright 2007, Oracle. All rights reserved.
Finding Foreign Keys for 1:M Relationships
Inspect the Foreign Key Table property in a Column object
definition to determine the column that serves as the FK
Parent
table
5/6
PK FK
S_ASSET
R
O
W
_
I
D

N
A
M
E

A
S
S
E
T
_
N
U
M

S
E
R
I
A
L
_
N
U
M

P
R
O
D
_
I
D

S_PROD_INT
R
O
W
_
I
D

N
A
M
E

P
A
R
T
_
N
U
M

O
R
D
E
R
_
C
S
T

P
R
O
D
_
C
D



FK
column
21 of 27
Copyright 2007, Oracle. All rights reserved.
M:M Relationships
Are captured using foreign key columns in a third table called
the intersection table
S_PROD_LN_PROD
R
O
W
_
I
D

P
R
O
D
_
L
N
_
I
D

P
R
O
D
_
I
D

S_PROD_LN
R
O
W
_
I
D

N
A
M
E

D
E
S
C
_
T
E
X
T

S_PROD_INT
R
O
W
_
I
D

N
A
M
E

P
A
R
T
_
N
U
M

U
O
M
_
C
D

Product : Product Line
intersection table
PK
FK FK
PK
5/6
22 of 27
Copyright 2007, Oracle. All rights reserved.
1:1 Extension Table
Is a special table that has a 1:1 relationship with a base table
Foreign key for the relationship:
Is located in the extension table
Is named PAR_ROW_ID
Provides additional columns for business components
referencing the base table
A base and extension table can be considered as a single logical
table
S_PROD_INT
R
O
W
_
I
D

N
A
M
E

P
A
R
T
_
N
U
M

U
O
M
_
C
D

S_PROD_INT_X
R
O
W
_
I
D

P
A
R
_
R
O
W
_
I
D

A
T
T
R
I
B
_
3
9

PK FK
Base Table Extension Table
6/6
23 of 27
Copyright 2007, Oracle. All rights reserved.
Standard 1:1 Extension Tables
Prebuilt for many major tables
Have the name of the base table with suffix _X
Contain 40-plus generic columns of varying types
Store data for new business component fields that are in addition
to those mapped to the base table
6/6
24 of 27
Copyright 2007, Oracle. All rights reserved.
1:M Extension Table
Is a special table for storing child data related to an existing
parent table
Allows you to track entities that do not exist in the as-delivered
Siebel applications
S_ASSET_XM
R
O
W
_
I
D

P
A
R
_
R
O
W
_
I
D

T
Y
P
E

N
A
M
E

A
T
T
R
I
B
_
0
1

PK FK
S_ASSET
R
O
W
_
I
D

N
A
M
E

A
S
S
E
T
_
N
U
M

S
E
R
I
A
L
_
N
U
M

P
R
O
D
_
I
D

6/6
25 of 27
Copyright 2007, Oracle. All rights reserved.
Standard 1:M Extension Tables
Are prebuilt for many tables
Have the name of the main table appended with _XM
TYPE defines data
classification
PAR_ROW_ID stores FK to
ROW_ID in main table
NAME stores name of child
entity
ATTRIBs are predefined with
varying types
6/6
26 of 27
Copyright 2007, Oracle. All rights reserved.
Module Highlights
Siebel Data Model defines how data is stored in a third-party
relational database
A primary key (PK) is a column that uniquely identifies each
table row
ROW_ID is a column in every table
Contains a Siebel application-generated unique identifier
User keys specify the columns used to determine uniqueness of
records when entering, importing, or integrating data
Foreign Key Table columns are columns in a table that refer to
the PK column of a related table
1:1, 1:M, and M:M relationships are predefined within the model
27 of 27
Copyright 2007, Oracle. All rights reserved.
Lab
In the lab you will:
Examine tables, columns, indexes, and user keys that make up the
Siebel Data Model
Determine the form of relationships between tables in the Siebel
Data Model