Essentials (Siebel 7.
7)
Module 18: Understanding
Business Components
Module Objectives
After completing this module you will be able to:
Describe the structure of business components and joins
Why you need to know:
Enables you to configure your company’s business logic
Module 18: Understanding Business Components 2 of 16
Business Component
Represents a fundamental business entity in the user’s world
Is a logical grouping of data from one or more tables
Consists of single-value fields, each of which references a
single column in a table
Opportunity
Name Description Decision Level Sales Stage Sales Stage Phase
S_OPTY S_OPTY_X S_STG
ROW_ID
NAME
DESC_TEXT
CURCY_CD
ROW_ID
NAME
PHASE_CD
STG_ORDER
ROW_ID
PAR_ROW_ID
ATTRIB_01
ATTRIB_09
ATTRIB_39
Module 18: Understanding Business Components 3 of 16
Business Component Properties
Table: Specifies the base table
Class: Specifies the C++ class used at run time for the
business component
Determines the behavior of the business component
Is usually set to CSSBusComp
Certain business components use specialized classes that support
extra processing specific to that business component
Base table C++ class
Module 18: Understanding Business Components 4 of 16
Base Table
Typically contains the main columns for the business
component
Fields of the business component can be mapped to the base
table columns
These fields are typically editable
Opportunity
Name Description Decision Level Sales Stage Sales Stage Phase
S_OPTY Base table
ROW_ID
NAME
DESC_TEXT
CURCY_CD
Module 18: Understanding Business Components 5 of 16
Fields that Map to a Base Table
Column property maps to a column in the base table
Join property is blank
Type property specifies the behavior of the field
Siebel defined Types correspond to the Physical Type of the
associated column
Columns from
S_OPTY
Module 18: Understanding Business Components 6 of 16
Joined Tables
Business components can include data from additional related
(joined) tables
For display in applets
For use in processing by the business component
Fields referencing columns in joined tables are read-only
Opportunity
Name Description Sales Stage Sales Stage Phase
S_OPTY S_STG
Base table Joined table
ROW_ID
NAME
DESC_TEXT
CURCY_CD
ROW_ID
NAME
PHASE_CD
STG_ORDER
Module 18: Understanding Business Components 7 of 16
Joining Data from Related Tables
Returns only one row from the other (joined-to) table
Is a relationship from the BC to the related (joined-to) table
Relationship is M:1 or 1:1
Is established using an FK field on the BC to join to PK column
on the joined-to table
Requires a FK field on the BC to expose the FK column at base
table level
FK column on Base table
(will be an FK field on BC)
S_OPTY S_STG
ROW_ID
NAME
DESC_TEXT
CURCY_CD
CURR_STG_ID
ROW_ID
NAME
PHASE_CD
STG_ORDER
Joined table
Base table
PK column on
joined-to table
Module 18: Understanding Business Components 8 of 16
Fields Mapped to Joined Table
Join property specifies the join definition
Column property maps to a column in a joined table
Type property specifies the behavior of the field
Module 18: Understanding Business Components 9 of 16
Join Definition
Specifies the joined table from which to retrieve data
Is a child object of the business component
Defaults the alias property to the name of the joined table
The alias may be different from the table name if the join
represents:
A self-join
Multiple relationships with the joined table
Name of join
Joined table
Module 18: Understanding Business Components 10 of 16
Outer Join Flag
If the Outer Join flag is set to TRUE, the join returns all records
from the base table, even when there is no related row in the
joined table
Outer joins affect performance
If there will always be a related row in the joined table, an inner-
join is frequently used
Use outer join
Module 18: Understanding Business Components 11 of 16
Join Specification Definition
Specifies how to retrieve the related row from the joined table
Based on the foreign and primary keys used to relate the base
and joined tables
Opportunity
Name Description Sales Stage Id
Foreign Primary
key key
S_OPTY S_STG field column
ROW_ID
CURCY_CD
ROW_ID
STG_ORDER
NAME
DESC_TEXT
CURR_STG_ID
NAME
PHASE_CD
Module 18: Understanding Business Components 12 of 16
1:1 Extension Table
Is a special table that has a 1:1 relationship with a base table
A foreign key (FK) column on the extension table is used to
establish the relationship with the base table
FK column is named PAR_ROW_ID
Provides additional physical columns to store information for
the business component
Base table and extension table columns can be considered to
be one logical table
Base table S_PROD_INT S_PROD_INT_X Extension table
ROW_ID
NAME
PART_NUM
UOM_CD
ROW_ID
PAR_ROW_ID
ATTRIB_39
Stores the Stock
Level field
Module 18: Understanding Business Components 13 of 16
Fields that Map to a Column in an Extension Table
Data from the extension tables is retrieved for the base table
for the business component
Uses an implicit join to retrieve the data
Join does not appear in join object definitions
The name of an implicit join is always the name of the extension
table
Data coming from extension tables can be edited
Columns from
S_OPTY_X
Module 18: Understanding Business Components 14 of 16
Summary
This module showed you how to:
Describe the structure of business components and joins
Module 18: Understanding Business Components 15 of 16
Lab
In the lab you will:
Examine references (mappings) among UI, Business, and Data
layer object definitions
Module 18: Understanding Business Components 16 of 16