Professional Documents
Culture Documents
TABLE OF CONTENTS
1.
PURPOSE ................................................................................................................................................................7
2.
SCOPE .....................................................................................................................................................................7
3.
4.
5.
6.
7.
JOINS .................................................................................................................................................................15
8.
9.
12.
13.
PICKLISTS ........................................................................................................................................................21
14.
15.
16.
TOGGLES .....................................................................................................................................................25
17.
18.
19.
DRILLDOWNS .............................................................................................................................................27
20
CREATING A DRILLDOWN...........................................................................................................................27
21.
22.
23.
24.
25.
26.
28.
TO SEE RELATIONSHIPS.......................................................................................................................31
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
VISIBILITY--------------------------------------------------------------------------------------------------------------34
40.
ATTACHMENT APPLET---------------------------------------------------------------------------------------------- 35
41.
SIEBEL VB----------------------------------------------------------------------------------------------------------------36
42.
CHECK-IN/CHECK-OUT--------------------------------------------------------------------------------------------- 37
43.
44.
SMART SCRIPT------------------------------------------------------------------------------------------------------- 40
45. ACTUATE REPORT, ITS INTEGRATION WITH SIEBEL APPLICATION, FILE SYSTEM
46.
35
SIMPLE REPORT.36
47.
GROUP REPORT---------------------------------------------------------------------------------------------------- 37
48.
MASTER-DETAILS REPORT----------------------------------------------------------------------------------- 38
49.
LOGO-------------------------------------------------------------------------------------------------------------------- 39
50.
GLOBAL MODIFICATION----------------------------------------------------------------------------------------------40
51.
ASSIGNMENT MANAGER..41
52.
WORKFLOW MANAGER..42
53.
EIM----------------------------------------------------------------------------------------------------------------------43
I: I, I: M, M: I, M: M
1. Opportunity:
M:I
M: M
M: M
Contact
Product
Opportunity
I: M
Activities
2. Account:
Opportunity
I: M
I: M
Contact
Account
I: M
Activities
M: M
Opportunity
Product
M: M
3. Contact:
Product
M: M
Contact
M: M
Activities
M:I
Account
Siebel Tools enables you to customize Siebel applications by modifying and creating
object definitions. A standard Siebel application provides a core set of object
Definitions, which you can use as a basis for your own tailored application.
1.
2.
3.
4.
Data Object Layer: Object definitions in the Data Objects layer provide a logical representation
of the underlying physical database (constructs like table, column, and index), and are
independent of the installed RDBMS.
Business Object Layer: This is the layer where we implement the business logic by using the
tables and fields of underlying layer. We do create BC, BO, Joins, Links, MVGs and many
others to represent the business functionality.
User Interface Layer: The User Interface Layer defines the visual elements user interacts with
on the object definition which are created in the Business Object Layer.
All the above layers are independent of each other and at the same time they are
interdependent.
DBMS: Siebel depends on the Third party DBMS systems for installation. Siebel Database will
consist of Repository and Tables. Repository is collection of tables where the Object Definition
has been stored.
SIEBEL FILE SYSTEMS
. EXE
. CFG
. SRF
. EXE: Siebel.exe is the Siebel Application Engine that runs all of the Siebel Application. The below
command line parameters being passed to the Siebel.exe program:
Siebel /D datasource /U username /P password /C Siebel.cfg
. SRF: Siebel.srf is the output of Siebel Tools compilation. It contains the data configuration and the data
presentation configuration (Object Definitions) created by the Developer in a binary format. A single
repository file can support multiple Siebel applications.
. CFG: Siebel.cfg contains the initialisation setting for the application engine. It identifies how the
application engine is to load up and run, where to obtain data from. Its simililar to .INI files used by many
window programs. It specifies the .SRF (containing set of object definitions to use when the application
engine executes. The Application Name setting identifies the application object definitions, within the
specified Repository file, that will be used in execution. Because of its Repository file and Application
name settings, each configuration file starts up a different application with a potential different set of
object definition. It also specifies the Data source available to the application like Sample, Local or Server
RDBMS you will connect to. The configuration file is a text file and is modified by any text editor.
To customize a Siebel application you need to modify the information contained in the configuration file
and the repository file. The Siebel executable is not modified, only the files reads are changed.
PURPOSE
To provide a Simple and Comprehensive guidance to learn/refresh Siebel Tools and Configure
Customised Applications.
II.
SCOPE
This document provides detailed steps of Configuring and Customising Siebel Application. The
document does not cover the concepts in detail as it is assumed that the readers of this guide
have prior exposure to Siebel Application and Configuration.
III.
CONVENTIONS USED
CNR - Create New Record
PBC - Parent Business Component
Acc-Account
FK-Foreign Key
PK-Primary Key
IV.
NAMING CONVENTION
Project: <Prefer giving Small and One Word Names that relate to the Objective of the Project>
E.G. Sample Project
OBJECT
Business
Component
Field Name
Business Object
Applet
CONVENTION
<Project Name><BCObjectName>BC
<Object><FieldName>
<Project Name><BO-ObjectName>BO
<ProjectName><BussComp
Name><AppletType>
View
<Project Name><ParentObjectChildObject><ViewType
<Project
Screen
Name><ObjectName>Screen
Application
<Project Name>Application
SRF
<ProjectName>.SRF
CFG
<Project Name>.CFG
Responsibility
<Project
Name><Position>Responsibility
EXAMPLE
SampleAccBC
SampleOptyBC
Opt Name
SampleOptyBO
SampleOptyBCListA
pplet
SampleOptyContListView
SampleOptyScreen
Sample Application
Sample.SRF
Sample.CFG
Sample SM
Responsibility
V.
APPLICATION CREATION
Scenario:
Client XYZ Inc. desires to automate the Opportunity Management using Siebel Application and
wants the following information to be displayed in the Opty List Applet and the Entry Form
Applet in the Opty List View under Opty Screen.
Opty Name
Opty Alias Name
Description
Steps:
1. Logon to Siebel Tools as SADMIN and connect to Sample Database
Creating the Project
2. Click on Project Object Type in the Object Explorer (OE) WindowGo to the Object
Definitions(OD) Window where you can find the list of all the existing projects Create a
new record(CNR) Mention the Project Name in the Project Name Field( E.G. XYZ
Opportunity) Lock the Project by setting the Lock Field to true change the focus/move
from the record to commit
Creating Business Components
3. Select The Business Component OT from the OE Window Go to Business Component
OD Window where you can find list of all the available Business Components
4. CNR Give Name to the Business Component in the Name Field (E.G. XYZ Opty BC)
Move to the Project Field and select the project from the Pick Applet to associate the XYZ
Opty BC to the XYZ Project Map this BC to the Opty Base Table by selecting the
(S_OPTY) table from Pick Applet attached to the Table Field Change the Focus /Move
from the record to commit.
Click on the Field OT, which is the Child Object Type (COT) of Business Component
Set the Focus on the BC to which you want to add the fields i.e. XYZ Opty BC Move
to the Field Object Definitions Window below the Business Component Window
CNR Populate the Column, Name an, Data Type and Length properties with the data
mentioned in the table below
COLUMN NAME
NAME
ALIAS_NAME
DESCRIPTION
Note:
FIELD NAME
Opty Name
Opty Alias Name
Opty Description
TYPE
<Default>
<Default>
<Default>
TEXT LENGTH
<Default>
<Default>
<Default>
Created, CreatedBy, Updated, Updated By and Id are automatically populated. We can also
Reuse/Modify the Standard Opportunity Business Component provided by Vanilla Siebel
Creating Business Objects
9. Select Business Object (BO) Object Type from the OE windowMove to the Object
Definitions Window CNR Give a name to the Business Object in the Name Field
Associate the BO to the Project by Selecting the Project in the Project Field
Move to the Business Object Components OT, which is the Child Object Type of Business
Object OT CNR Go to the BussComp Property and select XYZ Opty BC from the Pick
applet Change the Focus to Comit
Creating Applets
12. Create Opty List Applets by executing the steps below
Go to Menu Bar FileNew ObjectSelect the Applets Tab Select the List Applet
Wizard Then Click on OKIn the General Dialog Box Populate Project Name (XYZ Inc.),
Business Component (XYZ Opty BC), Name and Title of the Applet will appear automatically.
Click Next Select Applet List (Base/Edit List) from the template window and move the same
to Select the Template to use for the Base-Read only mode box
Select Applet List Edit (Edit/New/Query) from the template window and move
the same to Select the Template to use for the Edit Mode box.
Select Applet List (Base/Edit List) from the template window and move the same
to Select the Template to use for the Edit List Mode box
Click NextPick Up the fields (Opty Name, Opty Alias Name and Opty Description) from the
Available Fields window to Required Field window Click on Next Click on NextClick on
Finish
13. Create Opty Entry Form Applets by executing the steps below
Go to Menu Bar FileNew ObjectSelect the Applets Tab Select the Form Applet
Wizard Then Click on OKIn the General Dialog Box Populate Project Name (XYZ Inc.),
Business Component (XYZ Opty BC), Name and Title of the Applet will appear automatically.
Click Next Select Applet Form 4 Column (Base) from the template window and move the
same to Select the Template to use for the Base-Read only mode box.
Select Applet Form 4 Column (Edit/New) from the template window and move the
same to Select the Template to use for the Edit Mode box.
Click NextPick Up the fields (Opty Name, Opty Alias Name and Opty Description) from the
Available Fields window to Required Field window Click on Next Click on NextClick on
Finish
Creating a View
14. Go to Menu Bar FileNew ObjectSelect the General Tab Select View Wizard In
the Dialog Box Populate Project Name (XYZ Inc.), Business Object (XYZ Opty BO), Name
(XYZ Opty List View), Title (Opportunity View) Click Next Select View Detail (Parent with
Pointer) from Select Web Template window Click Next Move both the List and Form
Applets from Available Applets to Selected Applets window Click Next Click Finish.
Creating Screen
15. Select Screen Object Type Move to the Screen OD windowCNRGive a name to the
Screen in the Name property (XYZ Opty Screen) Select the Project in the Project property
Populate the View Bar Text field(XYZ Opportunity) Default View (The view selected here
from the pick applet will be the default view when we move to the XYZ Opty screen) Change
Focus to Commit
Select the Screen View Object Type which is the COT of Screen OT Move to the OD
Window CNRAssociate the XYZ Opty List View to the XYZ Opty Screen by picking up
the view from the Pick Applet associated to the View FieldPopulate the View Bar Text
field My Opportunities (The name you give here will be the display name of the view in the
Menu Bar) Populate the Menu Bar Text field &My Opportunities(The name you give
here will be the display name of the view in the View Bar) Give the Sequence of the view
in the Sequence field (Sequence is the order in which the views will be listed in the UI
Layer) Change Focus to Commit
Creating an Application
16. Select the Application Object Type Move to the Application OD windowCNRName
the Application(XYZ Application) Select the Project from the Project PropertyGo to the
Menu Property and Select Generic from the Pick Applet Go to the Container Web Page
property and Select CC Container Page from the Pick Applet Go to the Error Page
property and Select CC Error Page from the Pick Applet Go to the Login Web Page
property and Select CC Login Page (Login Only) from the Pick Applet Go to the LogOff
Acknowledgment Web Page property and Select CC Login Page (Login Only) from the Pick
Applet.
Seelct Application Toolbar Object Type which is the COT of Application OTCNR Go to
Toolbar Property and select the Menu Bar/Tool Bar/History Bar from the Pick AppletGive
the Sequence to define the order in which each of these bars should appear in the UIL
Change Focus to Commit
Seelct Application PageTab Object Type which is the COT of Application OTCNR Go
to Screen Property and select the XYZ Opty Screen (The Screens selected here will be
displayed on Page Tab in the UIL Go to the Text Property and give Display name of the
Screen Opportuinty Populate the Sequence in the Sequence Propoerty Change
Focus to Commit
Select Screen Menu Item ObjectType which is the COT of Application OT CNR Go to
Screen Property and select the XYZ Opty Screen (The Screens selected here will be
displayed on Screen Menu Item in the UILGo to the Text Property and give Display name
of the Screen Opportunity Populate the Sequence in the Sequence PropoertyChange
Focus to Commit
= XYZ.SRF
= XYZ Application (Mention the Exact name of the SRF
and Application Name including the Case
Application Splash Text
= XYZ Sales Application
Application Title
= XYZ Application (The title mentioned here will
Appear in the UIL)
Creating a Shortcut to the Configured Application and mapping the Exe File to the CFG
file
19. Go to the DeskTopCopy the Siebel Application IconPasteRename the Icon to XYZ
ApplicationRightClick on the icon and select Properties from the Cascade menuClick on
Shortcutand set the Exe path to:
C or D: \sea702\client\bin\ENU\ XYZ.cfg
Visibility and Access Rights
20.Logon to Siebel Call Center as SADMINClick on Sitemap Click on Application
Administration ViewsIn the Views List Applet CNRCopy-Paste the View Name(In this
case its only the XYZ Opty List View) in the View and Description fields
Navigate
to ScreensApplication AdministrationResponsibilities ViewCNR in the
Responsibility List AppletGive a name to the responsibility
(E.g. Sales Manager
Responsibility) and DescriptionMove to View List Applet and CNRSelect the view you wish
to associate to their responsibility (XYZ Opty List View in this Case)Move to Employee List
responsibilityClose the
21. Goto the DesktopOpen the XYZ Application with the associated employees Login
parameters to find the XYZ Application with One Screen, One View carrying two applets.
VI.
Scenerio: Client XYZ Inc wants to automate the Opportunity, Contact and Account Information
using Siebel Application. Below are the User Requirement Specifications
The Application must provide the ability to manage Opportunity , Account and Contact
Information
The application should provide the Contact information of each Opportunity selected.
The application should provide the Account information, and also the contact and
oppportunity information of each account
The application should provide Contact information along, and also the Opportunities each
contact is associated with.
Buss
Objects
Opty BO
Applets
Opportunity List Applet
OpportunityEntryForm Applet
Opprotunity Form Applet
Views
Screens
Cont BC
Cont BO
Acc BC
Acc BO
Detailed View
ContactList View
ContactOpty
Detail View
AccountList View
Acc-OptyDetail
View
Acc-ContDetail
View
Contact
Screen
Account
Screen
Steps:
Business Component: XYZ MS Opty BC(CNR Means Create New RecorD)
1. Select Project OTCNR Populate Project Name (XYZ Multi-Screen Application) and
Lock the Project
2. CNR Populate (Name, Project, Table)
3. Select Field Object Type CNR and populate (Column, Name, Type, Text Length)
Repeat the Step 1 and 2 to create Contact and Account BCs aswell and pick up 3-4 fields for
each BC
4. Select Business Object OT CNRName the Business Object (XYZ MS Opty BO)
5. Select Business Object Component OTCNRPopulate the BussComp property with the
Parent Business Component, which is Opty BC in this case, and also, select the Contact
BC that will be the Child Business Component in this case.
Note: We can establish a Parent Child relationship between two BCs at the BO level. Parent
Business Component will establish a Parent Child Relationship the XYZ MS Opty BC BCs with
which the Opty BC will establish.
6. Repeat the Step 3 and 4 to create Contact and Account BOs and associate Opty BC to
Contact BO and both Contact and Opty BCs to Account BO to establish Parent Child
relationship
7. Create the Views and Screens specified in the table above and associate the Screens to an
application.
8. Compile an SRF file.
9. Add Views in the Application Administration and associate responsibilities and employees
to the views.
10. Create a CFG file and refer the CFG to the SRF compiled in step 7.
VII.
JOINS
When ever the relationship between two entities is Many-One or One-One we go for a Join
between the entities.
Join Object allows a business component to represent data from a foreign table and is used
on the many side of a Many-One relationship
Join allows data from more than one table to be displayed on one applet.
The Object which is on the One Side is the PBC and the One which in the Many Side is the
Child.
The Parent Table would have the Primary Key and the Child table will have a Foreign Key
refering to the PK of the Parent Table.
VIII.
A Foreign Key (FK) column stores the Primary Key (PK) of another table
Contact
Foreign Key/Child
M:1
Account
Primary Key/Parent
IX.
CREATING A JOIN
Scenerio: Client XYZ Inc wants the Opportunity List applet to also provide the Account Name
and Location the Opportunity is associated to.
Select the fields from the Parent table to Child Business Component
Inputs
Relationship between Opty and Acc is M-1
Opty is a child and Acc is the parent
Opty BC will have the FK and the Acc table will have the PK
Steps:
1. Create Project, Opty BC and select 3-4 fields from Opty Table.
2. Goto Table OTQuery for the S_OPTY (Child table)Goto Column OT which is the Child
OT of TableQuery for S_ORG_EXT (Parent Table)in the Foreign Key Table Property
Copy the FK Coulmn (PR_DEPT_OU_ID) from the Name property and Paste it in the CBC
(Opty BC)
Note: PR_DEPT_OU_ID is the foreign key in the Opty table refering to the Primary key of
Account table.
3. Select Join Object typeGoto the Join OD windowCNRPopulate the Table Property
with the Destination table(S_ORG_EXT)Set the Outer Join Flag Property to True
4. Go to Join Specification Window, which is the COT of Join OT CNR Give a name to
the Join (Optinal)Source Field (Row Id/Primary Key)Destination Field(FK field from
Opty BC/Child BC)
5. Go back to the Opty BC(CBC)FieldsCNRGo to the Join Property and select the Join
created( S_ORG_EXT)Select the Account Name and Location Columns from Accont
Table in the Column Property
Note: On Selecting the Parent table in the Join Property, we get all the coulmns of the Parent
table available in the Column Property.
Creating Applet, Views, Screens , Application would remain normal.
X.
LINKS
A Link Controls what Child records are displayed for a parent record.
When ever the relationship between two Business Components is 1-M or M-M we can
establish a Link.
Links allows data from the Child Business Component (Foreign Tble) to return many
records associated with the parent/driving/main table.
XI.
Scenerio: Client XYZ wants the list of all the Opportunities at each account on selecting the
account.
Create Parent and Child Business Components (Account and Opty in the above case)
Add FK field in Child BussComp fields Required to Construct Link
Add BCs to BO and specify the Link on Child (Child is Opty BC in this case)
Inputs:
Relationship between Account and Opportunity is 1-M
Account is the parent and Opportunity is the Child
Account BC has the PK and Opty BC has the FK
Steps:
1. Create Project, Acc BC and Opty BC and associate 3-4 fields to each BC
2. Goto Table OTQuery for the S_OPTY (Child table)Goto Column OT which is the Child
OT of TableQuery for S_ORG_EXT (Parent Table)in the Foreign Key Table Property
Copy the FK Coulmn (PR_DEPT_OU_ID) from the Name property and Paste it in the CBC
(Opty BC)
Note:In Siebel Row_ID(PK) is a system defined field and is automatically populated in the BC
fields and hence you need not explicitly associate the PK to the PBC
4. Create Account Business Object with Account and Opportunity as the Business Object
Components
5. Goto Acc BOBusiness Object ComponentSpecify the Link created above in the Link
of the CBC (Opty BC)
6. Create Opty List Applet, Account List Applet and Account Form Applet
7. Create Acc List View and Acc-Opty Detail View
8. Create Account Screen and associate both the views created above
9. Application and others remain the same.
XII.
When ever the relation ship between two Business Components is M-M we must use the
M-M link to establish the relationship.
No RDBMS application supports M-M relationship directly . hence when the relationship is
M-M the same is split into two 1-M relationships.
Between two entities with M-M relationship, there exists an Inter table which holds the
referential keys of both the entities pointing to each other through the Inter Table.
The Inter table aslo has a column which is called asa 3 rd FK . The logically arrived Child
table (BC) will have the referntial key as one of the coulmns. The Child BC will use this a
FK refering to the Inter table.
E.G. of a M-M relationship: In Opportunity Screen we have the Contact View which gives
the Opty-Contacts Detialed view. Here the relationship between Opty and Contacts is 1-M
with Opty as the driving entity (One Opty can have Many Contacts associated to it). Hence
logically Opty becomes thee Parent and Contact becomes the Child.
Scenerio:
Client XYZ Inc wants the list of all the Contacts associated to an Opty (Detailed
above)
Inputs:
Relationship between Opportunity and Contact is M-M
Oppportunity is logically the parent and Contact is the Child
Opty BC will hold the 3rd Foerign Key as one of its columns which refers to the PK of the
Interface table.
Steps:
10. Create Project, Opty BC and Contact BC and associate 3-4 fields to each BC
11. Goto Table OTQuery for the S_CONTACT (Child table)Goto Column OT which is
the Child OT of TableQuery for the other table S_OPTY) (Logically the Parent Table)
in the Foreign Key Table Property Copy the 3rd FK from the Name Propeorty and
paste it in the Contact BC fields Also Copy the Inter table name from the Primary
Inter table property
12. Go back to Table Object type and Query for the Primary Inter table in the Name
Property
13. Now Go to the Coulmn Propoert and Query for Both the tables in the FK table property
(Query as S_OPTY or S_CONTACT) to find two records displayed. The First Record
Name Property will have the FK of Opty refering to the Contact Table and the Second
Records Name propoerty will have the Contact Table FK Coulmn name which is
refering to the Opty Table Copy these two FKs
14. Go to the Link Object Type CNR Associate the Link to the Project Populate Opry
and Contact in the BC and CBC PropertiesPopulate the Primary Inter table Property
with the Inter Table NamePopulate the Inter Parent Coumn with the FK of Opty
Populate the Inter Child Column with the FK Coulmn of Contact
15. Create Opty Business Object with Contact BC and Opportunity as the Business Object
Components
16. Goto Opty BOBusiness Object ComponentSpecify the Link created above in the
Link of the CBC (Contact BC)
17. Create Opty Form Applet, Contact List Applet
18. Create Opty-Contact Detailed View
19. Create Opty Screen and associate the view created above
20. Application and others remain the same.
XIII.
PICKLISTS
Picklists enable users to select a value to populate a text box with data.
Static Picklist: A static picklist is a selection list that is invoked from a particular text box or list
column in an applet.
XIV.
Scenerio: Client XYZ wants a specific list of Account Types so that one type can be selected
for each account.
Create an LOV of type LOV_TYPE in Application Administration
Associate the created picklist to the field in the BC where the picklist must
be made available
Inputs:
Special-purpose business component for the list-of-value lists, Pick List Generic BC is used in
static picklists. It is administered through the List of Values view in the System Administration
screen in Siebel applications.
The name of the type of List of Value to be created is specified in the Type attribute of the
picklist Generic BC and the name of the List of Values is specified in the Name attribute of the
same BC
Steps:
1. Login to Tools. Create Project, Acc BC and associate 3-4 fields to the BC including the field
pertaining to Account Type
2. Login to Call Center
3. Go to Application Administration
List of Values
List of Values
4. CNRSelect the Type as LOV_TYPE Provide same values for the Display Name,
Language Independent Value fields say Account_Type, Select the English-American value in
the field Language Name, Check the Translate and Active fields
6. CNR to create the list of Account TypesSelect the Type as Account_Type or the name
provided in Step 4 sub-point ii Provide the first item in the list for the Display
Name,Language Independent Code fields Select the English-American value in the
field Language Name Check the Translate and Active fields
7. Create a picklist in Tools following the below steps
8. In the Picklist field of the field corresponding to Account Type in the Account BC, specify
the name of the picklist created in Step 6.
9. Compile the SRF
XV.
Scenerio: Client XYZ wants to view the list of all the accounts at each Opportunity on
selecting the Account Field and wants to associate on of the accounts to the current
opportunity.
Create Parent and Child Business Components (Account and Opty in the above case)
Create a picklist
Associate the Picklist with the field Account Name in the Opportunity
BC and create mappings to the fields in the Picklist to the fields
present in the BC pertaining to the Account fields(at the PickMap OT
level)
At the applet level, associate the pick applet created with the
corresponding field (Account Name)
Inputs
Since an account picklist is to be made available in the Opportunity applet, the Opportunity BC
forms the Originating BC while the Account BC (on which the Pick List will be based on) forms
the destination BC
There being a 1:M relationship between Account and Opportunity, a join needs to be created
between the two to enable inclusion of Account fields in the Opportunity BC
Steps:
1. Create Account and Opportunity BCs
2. Create a join between the two business components
3. Add a few columns including Account Name and Account ID to the Opportunity
specifying the join created in the previous step
BC by
Go to menu File New ObjectIn the New Object box that appears, select Pick Applet
and click on the OK button
In the General form that appears, choose the project, the Account BC and enter a name to
identify the applet as well as the display title
In the Fields form that appears, select all the fields that you want the pick applet to contain
and click on the Next button
In the Finish form that appears, verify the entered data. In case of any changes needed,
click on the Back button else click on the Finish button
Add the fields pertaining to Account in the Opportunity Applet (which are already available
in the Opportunity BC)
In the record pertaining to Account Name, specify the pick applet created in Step 7 in the
Pick Applet field
A dynamic picklist invokes a dialog box with multiple list columns and buttons. All that
appears in a static picklist is a simple one-column pop-up list, without buttons.
A dynamic picklist can populate multiple controls in the originating applet. A static picklist
populates a single control in the applet, and the corresponding field in the underlying
business component.
XVI.
TOGGLES
Toggle is a User Interface Gadget which is used to navigate between Applets in the
Same View.
Toggle is an Object is aasociated to the applet and enables the user to navigate to
another applet based on the Same or different Business Component.
Toggles are used when you desire to view complete information of a particular record in
a list applet. Viewing all the fields information of a record in one stroke is the comfort
one can attain by using toggle and moving to a Entry Form Applet.
Static Toggle: Static Toggle allow the user to navigate to a different applet by being in the
same view. You may have another togggle in the destination applet which when clicked can
navigate back to the Originating Appplet or move to a Third Applet
E.g. The Contact List Applet in the Opty-Contact View hasa aToggle Button which when
clicked takes us to the Contact Entry Form Applet which becomes the detination applet.
Here we have another toggle button which when clicked will take you back to the Contact
List Applet.
DRILLDOWNS
A Drill down is similar to an Hyperlink which when clicked takes you to a new location.
Drilldown object in Siebel is associtaed to a field in a list applet. On Clicking on the Hyperlink
field the user can navigate to a different view in the same screen or a different screen
E.G. of a Drill down with the same Screen :
Opty name field in Opty List applet in Opty List View when drilled takes you to Opty-Contact
Detail view which is again in the same Opty Screen
E.G. of a Drill down to a View in a different Screen :
Contact Last Name field in the Contact List Applet of Opty Contact Detailed view wi;ll take you
to Contact Activities View in Contact Screen
XX.
CREATING A DRILLDOWN
Scennerio: Creating a Drilldown from Opty ListView (Opty Name Field) to Opty-Contact View
Steps:
1. Applet Select your List Applet (Opty List applet)
2. Go to Drill Down OT CNR Give a name to the drill down in the Name fieldView the
directional /destination view (Opty-Contact Detailed view in the above case), Specify the
Hyperlink field (Opty Name field in the above Scenerio)Mention the name you wish to
have to the drilldown in the Cascade Drop down( Cascade drop down is the other way of
to navigate to the destination view)
XXI.
Scenerio: Associating Drill down functionality to the Account Anem Field in the Opty List
Applet of Opty List View. Account Name being a joined field originated from the Account
Table we must specify the Referntial Key Fields (i.e. the FK in the Opty BC referring to the
Acc BC) in the Source Field Property
Steps:
Go to Drill Down OT CNR Give a name to the drill down in the Name field View the
directional /destination view (Account-Contact Detailed view in the above case)Specify the
Hyperlink field (Account Name field in the above example)Mention the name of the drilldown
in the Cascade Drop down In the Business Component Field Select the Account BCIn the
Source Field Property select the FK from Account column
note: Cascade drop down is the other way of to navigate to the destination view
XXII.
Multi Value Group (MVG) applets allow for the pop up display of detail or child records on
demand/runtime.When ever more than one value is associated with a field we get MVGs
E.g. Sales Team Field in Acount Applet is a Multi Value field because the relationship between
Sales team and Account is:
One Account can have more than one sales person associated to it (1-M). Other way round,
One Sales person can be associated to more than one Account (1-M). Which establishes a MM relationship.
In the above exmple:
Sales team field is a MVF as it have more than one value
The Group of Sales people associated to the account are called a s MVG.
The Object that establishes a link between MVF and MVG is MVL.
When ever the relationship between MVG and MVF is M-M we get an Association applet.
E.g. : In the above example between Account and Sales team, the relationship M-M. In this
case we get an Association applet which is based on the S_EMPLOYEE table and provides th
list of allth employees
The MVG Applet that provides the list of Sales team members asociated to a particular
account is based on the S_POSTN table.
Why Use MVG:
When ever you have two entities with a 1-M or M-M relationship and you desire to get the
related data the only option you had was to have two different applet displaying a MasterDteail relationship. The disadvantages with this option are:
To overcome this problem we can use MVG. E can configure a MVF rather than display the
child information in the sepertae applet because a MVF takes up less
Screen real estate than the entirely separate applet. Also, MVFS are available for use in
queries in combination with other fields in the applets business component.
XXIII. CREATING A MVG FOR 1-M RELATIONSHIP
Scenerio: Client XYZ wants the all the addreeses of an account to be displayed in the same
account applet asa pop up attahed to the Address field instead of having two sepreate applets.
Inputs:
Relationship between Account and Address is 1-M
Parent is Account and Child is Address
Add Controls/ListColumns to the Parent Applet to display MVFs and Invoke MVG Applet
Ad Primary FK in Parent BC and on the MVL to enhance the performance of List Applets
Steps
1. Create a Link between Account and Address Business Components Associate the Link
to the CBC (Address) in the Buss Object Components under BO.
2. Select your Parent/Originating BC (Account).
3. Go to MVL Object Type CNR Give a name to the Link in the Name propertyPopulate
the Child BC(Address) in th eDestination BC PropertyPopulate the Link created in Step(1) in
th4e Destination Link Property.
4. Go to MVF Object TypeCNRGive a Name to the the MVFSelect the MVL in the MVL
property.
Note: On completing the above steps you can see the MVF created in the 4 th Step
automatically populated in the Account BC fields.
5. Go to Applet Object typeCNRUse the Object Wizard to create the Applet
Note: Base the MVG applet on the CBC and the Applet. In case of creating the MVG Applet
manually ensure that you populate the Applet type property to MVG, Dimension 512*220.
9. Select the Originating Applet (Account)ListList ColumnsGo to the MVF and associate
the MVG Applet to this field by populating the MVG Applet propoerty with the MVG Applet
name Check the Runtime property to True.
10. Creating View, Screen and Others remain the same.
XXVIII.
1. Go to Applet OT Query for the applet in which you wish the Note pad to be
associated to the Description field Go to the List Columns of the applet Select the
Description field and Set the Popup Edit Propoerty of the field to true
XXIX. TO CREATE SUB / CATEGORIZED VIEW
1. Go to Screen OTSelect the Screen under which you wish to have sub views
2. Go to the Screen View Object TypeCNR In the View property select the view
you wish to have as a Sub View and Give a name to the Category in the Category
Property
3. Repeat the same step to add more sub views and specify the same Category Name
to all the Sub Views.
1. Screen Query for the Screen in which you desire this Bitmap to be associated Go to the
Bitmap Category property and select the Bitmap from the list
XXXIV. TO HAVE A BITMAP IMAGE AS A APPLET BACKGROUND
1. Bitmap Category In the name property specify a name to the Applet Background
Associate the Object to a Project and Set the Predefined property to true or false
2. Goto Bitmap (COT of Bitmap Category) CNR Specify, Name, Height and Width. Also,
specify the Transparency Color by Right clicking in the Transparent Color Property and
selecting the color
3. Goto Applet OT and Query for your applet in which you want the background and in the
Back Ground Bitmap Property select the above bitmap In the Background Bitmap Style
property specify any of these four (Center Value/Stretch Value/Tile Value/Top Left Value)
XXXV. TO HAVE A BITMAP IMAGE AS A VIEW BACKGROUND
1. Bitmap Category In the name property specify a name to the Applet Background
Associate the Object to a Project and Set the Predefined property to true or false
2. Goto Bitmap (COT of Bitmap Category) CNR Specify, Name, Height and Width. Also,
specify the Transparency Color by Right clicking in the Transparent Color Property and
selecting the color
3. Goto View OT and Query for your View in which you want the background and in the Back
Ground Bitmap Property select the above bitmap In the Background Bitmap Style property
specify any of these four (Center Value/Stretch Value/Tile Value/Top Left Value)
1.Bitmap Category Select One or CNR Go to the Bitmap OT Select One or CNR
2. GO to Application OT Select your Application and in the Company Logo Property Select
the Bitmap Created /Selected in step One.
XXXVIII.
SMART SCRIPT
Siebel SmartScript enables business analysts, call-center managers, and Siebel Developers to
create scripts to define the application workflow for interactive Customer communications. The
flow of the interaction is determined entirely by the Script not by the agent or customer.
A script comprises of pages, which in turn comprise of questions. Each question can have
none or more answers.
Steps for creating a script
1. Logon to the local Siebel client instance with the login parameters
2. Go to Screens Smart Script Administration SmartScripts Questions
3. Right-click on the Questions applet and select new record.
Give a name for the question in the Name field
Three options Optional, Must Answer, Answer if reached are available for selection in
the Must Answer field
Optional: If the question need not be answered
Must Answer: If the question must be answered irrespective of whether the question is
reached or not
Answer if Reached: The question must be answered if it is reached through branching
The type of answer expected is selected in the Answer field. The available options are:
String, Integer, Number, Currency, Date, Date & Time, Time and Information. If no
answer is expected for the question (the question being a statement), the option
Information is selected
If the answer for the question is to be picked up from a list of answers, check the option
Pick Only.
If the answer expected is an integer, the maximum and minimum acceptable values for
the answer can be set in the Maximum and Minimum fields
If the answer expected is a currency, the Currency code can be set in the Currency field
One of the answers among the list of answers for a question can be set as the default
answer in the Default Answer field
The picklist or MVG associated with the question can be set in the PickList and MVG
fields
The Save Answer Table field must be checked is the answer to the question is to be
saved to BC.
4. Create question translations, right-click on the Question Translations applet and select new
record.
Select the language in the Language field
Enter the question text in the Question field
5. Create Answers for corresponding questions (wherever required), right-click on the
Answers applet and select new record.
Enter the sequence number of the answer in the Number field
Enter the answer text in the Value field
Select the appropriate currency (wherever required) in the Currency field
6. Create answer translations, right-click on the Answer Translations applet and select new
record.
Note:
All the questions whose answers must be picked up from a list of answers must
have the field Pick Only checked. The answers must be available as records in the Answer
applet. It is mandatory to provide Question Translations for every question while it is not
mandatory for Answer Translations.
7. Create new pages based on the script document. To create a page, go to the Pages view
8. Right-click on the Pages applet and select new record.
Give a name to the page in the Name field
Select the first question of the page in the First Question field
Select one of the options- One per Line, Rows, Columns in the Layout field
One per line: Each question is displayed across the full width of the script desktop.
Rows: The questions are displayed in horizontal rows across the script desktop.
Columns: The questions are displayed in vertical columns on the script desktop.
Select one of the options All Reachable, Only Current, All in Page in the Reveal field to
select how questions are to be displayed
10. The next step is to create page branching (branching within the questions pertaining to a
single page). The answers to the first question of the page (specified in the Pages applet)
will be available in the Answers to First Question applet. All the answers pertaining to a
page can be associated to the page through page branching
Create new records for each answer to be linked to a question in the same page in the
Answers to First Question applet
Select the answer in the Answer field
Select the question this answer is to lead to in the Next Question field. Once a question
is selected in this field, this question becomes a part of the current page
Drill down on the question selected in the Next Question field to be taken to the
Answers to Current Question applet
Create a new record in the Next Questions applet
For the current question, select the answer which is to lead to the next question in the
same page in the Answer field and the question in the Follow-on Question field
Thus continue linking all the questions pertaining to a page
11. Go to Scripts view.
12. Create a new record in the Scripts applet.
Specify the name of the script in the Name field
Select the first page of the script in the First Page field
Enter the estimated duration, unit of duration in the fields Est. Duration and Duration In
respectively
Select the appropriate Question Style, Dashboard style, Layout and Reveal mode in the
respective fields
Check the Jumping Allowed field to allow jumping from question to another out of order
Choose the appropriate option in the Save Session field the options being: Always,
Finished, Never
Always: The session record and answers are saved whether the script is
Completed normally or cancelled.
Finished: The session record and answers are saved only when the script is
Completed normally and the agent clicks Finish. This is the default setting.
Never: The session record and answers are not saved.
13. Select the Organization the script belongs to in the Organization field
14. Create script translations. Create a new record in the Translations applet
Select the language in the Language field.
Provide a label in the Label field
Specify the text to be specified in the Dashboard in the Dashboard field
15. Now create script branching wherein the pages pertaining to the script are linked.
The questions pertaining to the first page in the script (specified in the Script applet) are
available in the Question field in the Answers to First Page Questions applet
Create records pertaining to the questions in the first page whose answers lead to
questions in other pages in the same script in the Answers to First Page Questions
applet
Select the question whose answer leads to another page in the Question field and the
answer in the Answer field
Select the page which contains the follow-on question in the Next Page field and the
follow-on question in the Next Question field
Drill down on the Next Page field to go the Answers to Current Page Questions applet
Create records pertaining to the questions in the page specified in the Next Page whose
answers lead to questions in other pages in the same script in the Next Pages applet
Select the question whose answer leads to another page in the Exit question field.
Select the answer which leads to another page in the Answer field
Select the follow-on page and question in the Follow-on Page and Follow-on Question
fields
Thus continue linking all the pages pertaining to the script
16. After the questions and the branchings are created, the questions and script need to be
coded for specific functionality and for further control over the flow of the script. The various
methods and events that can be coded at the question and script levels are listed and
explained in the bookshelf.
After the script is ready, coding needs to be done at the Business Component level for
saving data from the script to the business component and setting certain workflow flags.
This coding is done in Siebel VB
Note: Please refer the SmartScript pdf for fields available in the application and not mentioned
in the above document
EXTENSIONS TABLES/ COLUMNS
1.
2.
3.
4.
Siebel has given standard tables and columns to represent the business functionality.
These tables and columns are predefined. Some times the business scenario demands some fields,
which are not available in the standard tables. For example: for a Finance service firm, which is
implementing Siebel, populating the mothers name for the Contact BC is compulsory. But there is no field
mother name field in S_CONTACT table or any other table. In this kind of scenario, we have following
options:
Do join, and get the fields from another table.
Add new fields to existing table.
Create new table.
Use the Extensions tables.
Options 2 and 3 are difficult to go for. If you want create new table and fields, u should have separate
licenses for that. Again adding new table or field will create problem during the upgradation.
Its advisable to go for Extension table in these kind of scenario. Siebel has given the standard Extension
tables for this purpose for almost all the important base tables only.
Extension Tables
17
An extension table provides additional columns to a data table that cannot be directly added to the
original table because the underlying DBMS may support only a limited number of columns, or will not
allow adding a column to a table once it is populated with data. An extension table allows you to provide
additional columns for use as fields in a business component without violating DBMS or Siebel application
restrictions. An extension table is a logical augmentation of an existing table. Its columns are provided for
developers, and are not used by standard Siebel applications. An extension table extends a base table in
the sense that it effectively adds additional columns. These columns are not physically part of the base
table, but are available for use in a business component alongside the base table columns as if they
were.
Note the following distinctions between standard and custom extension tables: Siebel provides standard
extension tables for several of the standard data tables. A standard extension table has a predefined
relationship with a standard data table. This relationship allows you to easily add columns for new
functionality without making alterations to the base table. You cannot create or delete standard extension
tables. You can use the Siebel Database Extension Designer to create custom extension tables to extend
data tables, provided the data tables are of type Data (Public). NOTE: Custom extension tables, once
created by the developer, cannot be deleted from within Siebel Tools. An extension table, whether
standard or custom, provides a set of generic columns of various data types and lengths for your use.
These may eliminate the need to add a custom column to the extension table. Generic columns in an
extension table have names of the form ATTRIB_xx, where xx stands for a two-digit number. For
example, there are generic columns named ATTRIB_04 and ATTRIB_12.
Join,
S_CONTACT_X,
S_CONTACT_X
Column,
Attribute 01
Attribute 02
Field
Sequence
Father Name
5
Mother Name
6
Name
Mother Name
Father Name
Extension Table 1: M
Business
Component:
Name,
Contact Hobby Extn BC
Fields:
CNR
CNR
CNR
CNR
CNR
Project,
Table
S_CONTACT_XM
Column,
Name,
PAR_ROW_ID Contact Id (fk)
NAME
Hobby Name
TYPE
Hobby Type
Attribute 01
Hobby Descriptions
Attribute 14
Hobby Timings
Link: CNR: Name: Contact/Contact Hobby Extn Link, Project: , Parent BC: Contact
BC, Child BC: Contact Hobby Extn BC, Source Field: Id, Destination
Columns: Contact Id (fk).
Business Object: Select Contact BO
BOC:
Bus Comp,
CNR: Contact Hobby Extn BC
Link
Contact/Contact Hobby Extn Link
Name,
Opty list view
Opty Contact view
Acc list view
Acc/Cont view
Acc/Opty view
Cont list view
Cont/Opty view
Opty name
Opty name
Account Name
Account Name
Account Name
Last Name
Last Name
Thread Title
Opportunity
Opportunity
Account
Account
Account
Contact
Contact
ACTUATE REPORT
Siebel doesnt have its own reporting tools. It takes help of the third party software tools like Actuate
and Crystal to generate reports. The default reporting tool for Siebel application is Actuate.
Siebel Tools:
Siebel Tools define the structure of the data exported from the Siebel application to the Actuate Report,
which the Actuate Report receives into its DataStream.
Actuate Developer Workbench:
Actuate Developer Workbench is a visual design editor from which object-oriented Actuate basic code
is generated and compiled from the report design (.rod file) and references library classes (.rol file) into
an executable report program. The resulting executable program is .Rox file. When the executable
program is run, the result is an .roi file containing both the report specificactions and data. The instance
file is in .roi format suitable for display in the Actuate report viewer on a Microsoft windows client.
Actuate file systems:
1. .ROD:(Report Object Design) file defines the layout, structure and behaviour of a report
subsequently compiled into .ROX file. The value in Access Base DB name becomes the .ROD
file. Its generated in Actuate Developer Workbench.
2. .ROL (Report Object Library) file contains reusable components you can add to design files.
The value in Template Name field becomes the .ROL file name.
3. .ROX (Report Object Executable) file is a compiled .ROD file. When you run a report, the Siebel
application executes the .ROX file.
4. .ROI (Report Object Instance) file Is what the user sees when the report is running in the
Actuate window in the Siebel application.
5. .BAS (Basic Source Code) file is generated during the build and compilation processe. It is
generated from the .ROD file being compiled from all included library modules from .ROL files. It
is an intermediate file format used in the subsequent complation step and is not directly
modified by the developer.
Steps to create a Simple Report:
Siebel Tools:
Report: (cnr) Name: Sun Cont detail Report, Project: , BC: Sun Cont BC, Access Base
DB Name: CONTDETL, Template Name: CONTDETL, Menu Text: Cont
details, Client: True, Class: cssActuateReportViewer
Report
Field :
Field
Cnr
last name
Cnr
first name
Cnr
Job title
Menu Bar-Tools-Generate Actuate Report. On clicking it a .ROL file will generate and the report
with the above contact BC and its field will be exported to Actuate Class for subclassing and
generating report.
The path of the file will be D:\sea601\tools\Rptrsc\Enu\Lib\CONTDETL.rol file has been
successfully generated.
View: Select the contact list view and assign the report as the report in Siebel is view
specific.
View Report: Cnr:
The
Actuate
Developer
Workbench:
Menu bar - File- New Blank Report Design (select this) and click on OK.
In the Report Design Window fill the followings:
Title: CONTDETL
File Name: -----CONTDETL.rol
Report Root Name: CONTDETL
Then click on OK and the Report Designer window will open.
Menu bar file Include module: D:\sea601\tools\Rptrsc\enu\lib\
From the above path select and open CONTDETL.ROL AND SSCUSTOM.ROL one by
one.
In the Designer Window select the Top Node (Design) and Double Click and select Class and in
the super class change it from AcReport to ssReport and click on close.
Select the Second Node in the Desginer Window (Content), Right Click and Local Subclass and
Drag the Blue SQL icon from the CONTDETL.ROL library window and place it on Second node
i.e. Content ssRpt1 and close CONTDETL.ROL library window.
Select DataStream and Right Click and Local Subclass.
Select the Child Content Node and from sscustom.rol library view window, drag the ssFrm and
place it on Content. Select Content.ssFrm and right click and local subclass.
From the sscustom.rol library view window, drag the ssTxt and place it on the Content.ssFrm
and a compnent properties window will open and select the last name field and click on close.
Repeat this step for other two fields.
From the sscustom.rol library view window, drag the ssFrm and place it on PageHeader and
right click and local subclass.
From the sscustom.rol library view window, drag the ssLbl and place it on PageHeader.Frm and
Right Click and in the compenent editor fill the Text field as Last Name. Repeat this step for
other two fields too.
Menu bar- File- Include Basic File and select the sssiebel.bas file, open it and close it.
Minimize the Actuate Developer Workbench and open your customized call center with the
Contact list view selected and contact list applet selected.
Come to Actuate Developer Workbench and menu bar- Report- build and run to compile and
Requester window will open and there fill the following parameters.
SsBusObjectName: Account (Remove this one and keep it blank)
SsOLEServer: SiebelAppServer.ApplicationObject
And delete other details and click on ok and wait for sometime the report will
generate.
Once the report generates in Actuate Developer Workbench close both this one and the call
center.
Follow the path D:\sea601\tools\rptsrc\enu\lib and copy the CONTDETL.ROX file and paste it in
path D:\sea\client\Reports\enu and paste the CONTDETL.ROX file over there.
And now open your customized call center and see the report by clicking on the report menu in
the contact screen and my contact list view selected and the report will generate.
ASSIGNMENT MANAGER
Assignment Manager allows organization to define rules that automatically assign data
ownership or job to the most qualified people.
Assignment Manager Elements:
While assign a task to subordinate, a manager in the real time evaluate many things, such as
the expertise, workload of his subordinates. Likewise Siebel Assignment Manager take cares
following elements before assign a job to particular person/position.
1.
2.
3.
4.
5.
6.
Skills
Workload
Assignment Object
Assignment rules/criteria
Geographical Location
Candidates/employee/position
1. Candidates: the people or position to be evaluated as potential assignees for objects: the
resources.
2. Assignment Object: Entities to which candidates will be matched: the work. For exp:
Opportunity, Service Request, Account, contact.
3. Assignment Rules-set of criteria and values, candidates, scores, rule type, and workload
compared to objects and candidates to match candidates for objects:
For exp: If an Opportunity Revenue > &100,000 and the Account State = Calfornia then assign
the small deal sales rep.
4. Workload Criteria: is a special criteria type used to balance the load between
Candidates. The workload criteria applies a workload score to candidates based on their current
workload. Candidates with higher workload receives a higher score than candidate with a
heavier workload. Candidates that have workloads in excess of the maximum workload will be
eliminated from the assignment from the assignment rule.
Low workload = High Score
High Score = Assignment.
5. Skills/Expertise: Assignment Manager uses skills to match assignment rules,
Objects, employees and positions.
Skill Match = Qulaified employee = Assignment
Assignment manager compares the pool of above resources and work to the rules and
Assigns the positions or employees accordingly.
How does AM find the best candidate:
AM calculate score for each candidate on the basis of the above elements. And highest scoring
candidate is considered best match and the assigned the job.
Calculating Scoring:
Criteria: Product= Hard disk
Employee = Halacon, Cconway.
Assignment Object = Service Requests (SRs)
Workload = 20 SRs = 45 scrores
Current workload of Cconway = 15 SRs, Halacon = 4 SRs
Product:
Trace Flag: 1
Table owner password: Siebel.
Click on Close.
Then click on Start and wait till the status will come as Completed
To Cross Check the Assignment Manager do the following things.
Before defining Assignment Mgr:
Screen- Marketing Manager- Accounts and create few accounts with different state and one account with
CA as the Account State in the state field of Account list applet.
After the server process:
Open call center and logon as Halacon and check whether the account, which is having CA as the
Account State, has been assigned to Halacon.
Conflicts Resolutions:
Assignment Mgr recognizes the following conflict scenarios and handles them as follows:
1. Conflicts between two rules with same score,
2. Conflicts between two exclusive rules with the same score
3. Candidates match an item with any rules.
Solution: Assigns System Administration to the team as primary and calculate the score once again.