Anda di halaman 1dari 47

TABLE OF CONTENTS

1. PURPOSE.................................................................................................................................................................6

2. SCOPE......................................................................................................................................................................6

3. CONVENTIONS USED.......................................................................................................................................6

4. NAMING CONVENTION...................................................................................................................................6

5. APPLICATION CREATION....................................................................................................................................7

6. CREATING A MULTI SCREEN APPLICATION..............................................................................................11

7. JOINS..................................................................................................................................................................14

8. JOIN RELATIONSHIP BETWEEN CONTACT AND ACOUNT.....................................................................14

9. CREATING A JOIN............................................................................................................................................15

10. LINKS.....................................................................................................................................................................17

11. CREATING A 1-M LINK..................................................................................................................................17

12. CREATING A M-M LINK.................................................................................................................................18

13. PICKLISTS.........................................................................................................................................................20

14. CREATING A STATIC PICKLIST.................................................................................................................20

15. CREATING A DYNAMIC PICKLIST...............................................................................................................21

16. TOGGLES.......................................................................................................................................................24

17. CREATING A TOGGLE (STATIC)................................................................................................................24

18. CREATING A TOGGLE (DYNAMIC)..........................................................................................................25

19. DRILLDOWNS..............................................................................................................................................26

20 CREATING A DRILLDOWN............................................................................................................................26

21. CREATING A DRILLDOWN FOR JOINED FIELDS..................................................................................26

22. MULTI VALUE GROUP................................................................................................................................27

23. CREATING A MVG FOR 1-M RELATIONSHIP.........................................................................................28

24. REQUIRED FIELD........................................................................................................................................30

25. TO VALIDATE YOUR OBJECT DEFINATIONS.........................................................................................30

26. TO VISUALIZE YOUR OBJECT DEFINATIONS.......................................................................................30

28. TO SEE RELATIONSHIPS........................................................................................................................30


29. TO GET A NOTE PAD ON THE DESCRIPTION FIELD OF BC............................................................30

30. TO CREATE SUB / CATEGORIZED VIEW.................................................................................................30

31. IMPLEMENTING FIND DIALOG BOX......................................................................................................31

32. TO CREATE A NEW BITMAP......................................................................................................................32

33. TO IMPORT A BITMAP............................................................................................................................32

34. FOR LOGO TYPE BITMAP......................................................................................................................32

35. TO HAVE A BITMAP IMAGE AS A APPLET BACKGROUND.............................................................32

36. TO HAVE A BITMAP IMAGE AS A VIEW BACKGROUND.................................................................32

37. BUTTON CONTROLS IN APPLET..........................................................................................................33

38. COMPANY LOGO.....................................................................................................................................33


39. VISIBILITY--------------------------------------------------------------------------------------------------------------34

40. ATTACHMENT APPLET----------------------------------------------------------------------------------------------35

41. SIEBEL VB----------------------------------------------------------------------------------------------------------------36

42. CHECK-IN/CHECK-OUT---------------------------------------------------------------------------------------------37

43. EXTENSION TABLE & COLUMN---------------------------------------------------------------------------------39

44. SMART SCRIPT-------------------------------------------------------------------------------------------------------40

45. ACTUATE REPORT, ITS INTEGRATION WITH SIEBEL APPLICATION, FILE SYSTEM 35

46. 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
Common Siebel Entities:

1. Account: Client, Business Partner, or a competitor; serviced by a team or individual rep.


2. Opportunity: Potential revenue generating event, may be linked to an account serviced by a team
or individual sales rep. Has probability, end date and follows sales methodology.
3. Service Request: request from customer for information or help related to our product.
4. Contact: Individual outside your company
5. Activity: task or event to be completed, assigned to employee. Can be linked to opportunity,
accounts, service requests, and contacts.
6. Products/ Services.

The Siebel Entity Relationship

I: I, I: M, M: I, M: M Account

1. Opportunity: M:I
M: M M: M
Contact Opportunity Product

I: M

Activities

2. Account: Opportunity

I: M

I: M I: M Activities
Contact Account

M: M

Product Opportunity

M: M
3. Contact:
M: M M:I
Product Contact Account

M: M

Activities
SIEBEL TOOLS BASICS:

1. What is Siebel Tools?


Siebel Tools is not a programming languageit is a declarative Software development tool.
Standard Siebel applications provide a core set of object definitions that you can use as a basis for
your tailored application. Using Siebel Tools, other configuration tools that are part of a Siebel
solution, individual programmers or teams of developers can customize a standard Siebel
application without modifying source code or SQL.

2. Object Types: An Object Type is a named structure from which object definition of that type can
be created. An Object Type has a predefined set of properties. Applet, Application, BC etc are in
the Object Explorer window are Object Types.

3. Object Definition: An Object Definition in the Siebel Tools environment implements one piece of
the software, either a user interface, abstract data representation, or direct database
representation construct. The followings are the important object definitions:

1. Business Component: represents a small business functionality, and also is collections of fields
from one or more tables. Its a virtual table. Its an abstract layer above the Data object Layer.
2. Business Object: represents a major business functionality and is also collection of logical related
business components.
3. Applet: is a user interface mechanism to enter, edit the data and developed on a Business
Component.
4. View: is a user interface mechanism to group the applets, and represents the data of a Business
Object.
5. Screen: represents a major business functionality and collection of views. It logically maps to the
business object in the business object layer.
6. Application: Application is the end product. One application is the collection of Screens.
7. Projects: Projects are named set of object definitions that resides in the Siebel repository-
mechanisms to meaningfully group object definitions, so they can be worked on by teams of
application developers. If a development activity is large, with multiple developers, the object
definitions should be groped into several project

Layered Structure of Siebel Applications


3

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.

The Siebel application architecture consists of the following four layers:


1. User Interface Layer
2. Business Object Layer
3. Data Object Layer
4. DBMS (Database server)

In the multiple Developer Development Environments, the Siebel Server and Siebel
Database Server has to be Installed first. The database server holds the master
Repository and the master copy of all the database tables. The Repository, in Siebel is as
set of database table that holds all Siebel object definitions. The master copy of the
Repository resides on a server database where multiple developers can access it to make
changes and additions. After the installation of the Database server, the Developer
Machines will be configured as a Siebel Mobile Client and the copy or instance of the
master database will be copied into the machine. The Developers machines will have all
the three layer except the database server.
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.
SIEBEL TOOLS REFERENCE MATERIAL

I. 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 CBC - Child Business Component
PBC - Parent Business Component Opty-Opportunity
Acc-Account Cont-Contact
FK-Foreign Key PK-Primary Key
OLE-Object List Editor OE- Object Explorer
OD-Object Definitions OT-Object Type
COT-Child Object Type UIL- User Interface Layer
BOL-Business Object Layer DOL-Data Object Layer
means Next Step

IV. NAMING CONVENTION

Project: <Prefer giving Small and One Word Names that relate to the Objective of the
Project> E.G. Sample Project

OBJECT CONVENTION EXAMPLE


Business <Project Name><BCObjectName>BC SampleAccBC
Component SampleOptyBC

Field Name <Object><FieldName> Opt Name


Business Object <Project Name><BO-ObjectName>BO SampleOptyBO
Applet <ProjectName><BussComp SampleOptyBCListA
Name><AppletType> pplet
View <Project Name><ParentObject- SampleOpty-
ChildObject><ViewType ContListView
<Project
Screen
Name><ObjectName>Screen SampleOptyScreen
Application <Project Name>Application Sample Application
SRF <ProjectName>.SRF Sample.SRF
CFG <Project Name>.CFG Sample.CFG
Responsibility <Project Sample SM
Name><Position>Responsibility 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 FIELD NAME TYPE TEXT LENGTH


NAME Opty Name <Default> <Default>
ALIAS_NAME Opty Alias Name <Default> <Default>
DESCRIPTION Opty Description <Default> <Default>

Change the focus/move from the window to commit the fields


Note:
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

Creating an SRF file and Compiling the Project

17. Menu BarRepositoryCompileClick On BrowseFocus Siebel.SRF File & Right


ClickCopy-PastRename as XYZ.SRFClose and move back to the Compile
Dailog BoxSelect the Project from the Window and Click on Compile

Note: The SRF file should always be stored in Sea702\client\OBJECT folder Before
moving out from Tools ideally copy the Views, Application and SRF name to avoid
mistakes

Creating CFG File


18. Navigate to \sea702\client\BIN\ENU Folder Copy the Siebel.CFG file
PasteRename it as XYZ.CFGOpen the XYZ.CFG Fileand fill the following
properties:

Repository File = XYZ.SRF


Application Name = 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 Applet and CNRAssociate one or more employees to the
responsibilityClose the Applciation

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. CREATING A MULTI SCREEN APPLICATION

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.
Solution: From the URS the following can be derived

Buss Buss Applets Views Screens


Comps Objects
Opty BC Opty BO Opportunity List Applet Opportunity List Opportunity
OpportunityEntryForm Applet View Screen
Opprotunity Form Applet Opty-Cont
Detailed View
Cont BC Cont BO Contact List Applet ContactList View Contact
Contact Entry Form Applet ContactOpty Screen
Contact Form Applet Detail View
Acc BC Acc BO Account List Applet AccountList View Account
Account Entry Form Applet Acc-OptyDetail Screen
Account Form Applet View
Acc-ContDetail
View

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.

Create a Short Cut and run the application.


VII. JOINS

When ever the relationship between two entities is Many-One or One-One we go for a
Join between the entities.

Join is established bteween a BC and One or more related tables.

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. JOIN RELATIONSHIP BETWEEN CONTACT AND ACOUNT

A Contact is associated with a maximum of one Account

An Account can have many Contacts

A Primary Key (PK) uniquely identifies a row on a table


For Siebel Tables, the primary key is always the ROW_ID column
In Siebel, row_id is unique within the table and the database

A Foreign Key (FK) column stores the Primary Key (PK) of another table

M:1
Contact Account
Foreign Primary
Key/Child 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.

Create the Child Business Component (Opty in the above case)

Add FK field in Child BussComp fields Required to Construct Join

Create a Join by Specifying Destination Table(S_ORG_EXT in this case)

Specify the Join relationship

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 Specifies the relationship between Business Components.


A Link provides the display of Master-Detail or Parent-Child Information.
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. CREATING A 1-M LINK

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

Create a Link between the Business Components

Add BCs to BO and specify the Link on Child (Child is Opty BC in this

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
3. Select Link OTCNRParent Business Component(Acc BC), Child Business
Component (Opty BC), Source Field (Row_Id), Destination Field(FK in the CBC)

Note: Observe that the Link Name is automatically genreatd once the PBC and CBC
fields are populated.

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. CREATING A M-M LINK


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. CREATING A STATIC PICKLIST

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

Create LOVs of type created in the previous step in Application


Administration

Create a picklist in Tools

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

CNR in the picklist OT


Specify a name for the picklistSelect the Picklist Generic BC as the BC for the
picklist Select Type in the Type fieldSpecify the name of the picklist as the
same created in Step 4 sub-point ii (Account_Type) in the Value field

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. CREATING A DYNAMIC PICKLIST

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 join between the two BCs

Add a few columns including Account Name and Account ID to the


Opportunity BC by specifying the join created in the previous step

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)

Create a pick Applet based on the Account BC

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 BC by
specifying the join created in the previous step

Create a picklist in Tools

4. Create a new record in the picklist OTSpecify a name for the picklistSelect the
Account BC as the BC for the picklist

5. Associate the Picklist with the field Account Name in the Opportunity

Create mappings between the fields in the Picklist and the fields corresponding to
Account added to the Opportunity BC. Steps for the same are as below:

6. Query for the Account Name field in the Opportunity BC


7. Go to Pickmap OT pertaining to the Account Name fieldCNRSelect Account ID in
the Field attribute and ID (pertaining to Account ID in Account BC) in the Pick List
Field attributeSelect Account Name in the Field attribute and Name (pertaining to
Account Name in Account BC) in the Pick List Field attribute.

Similarly create mappings for the remaining account fields present in the Opportunity BC

8. Creating a pick applet by following the below steps:

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

9. Compile the srf.

Comparison between Static and Dynamic Picklist

Similarities:
They are similar in that both enable the user to select a value to
Populate a text box with data.

Differences:
A dynamic picklist draws values dynamically from a pick business component. A static
picklist is a static list of available selection values.

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.

Togles are of Two types. Static Toggle and Dynamic Toggle

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.

XVII. CREATING A TOGGLE (STATIC)

Scenerio: Client XYZ Inc., wants the Opty-Contact Detial View, In addition the client also
wants an option to view complete information of each record in one stroke. The Solution
is to have the Contact List Applet in the Opty-Contact Detailed View with a Toggle. On
Selecting a record and Clicking on the Toggle Button the userr can navigate to the
Contact Entry Form Applet to find the entirte information in one shot. The User will also
have a toggle in the Entry Form Aplet to navigate back to the List Applet

Steps:

1. Applet OTSelect your parent Applet (The applet from where you wish to move to
another applet. Contact List Applet in the above case)

2. Applet Toggle COT of Applet OT) In the Applet Property select the
destination/directional applet which is Contact Entry Form Applet in the above case,
Give the Sequence number in the Sequence property

3. To toggle back from Contact Entry Form Applet to List Applet:


Applet OTSelect your Child Applet (Contact Entry Applet in the above case)

4. Applet Toggle COT of Applet OT) In the Applet Property select the
destination/directional applet which is Contact List Applet in the above case, Give the
Sequence number in the Sequence property
The above two steps have defined the navigation path, however, we must add the
toggle button in both the applets using which the user from the User Interface can
toggle between the applets. To do this:

5. Query for an applet with Toggle button in the Applet OT (Query As: *Toggle*) in the
Name property Right Click one Applet Object Defination appeared as a result of the
queryClick on the Edit Layout Item in the Cascade drop down Copy the Toggle
button from the layout Go back to the Contact List Applet Right Click Edit
LayoutPaste the Toggle Button Save and Exit

6. Repeat the Above and paste the Toggle button in the Entry Applet aswell

XVIII. CREATING A TOGGLE (DYNAMIC)

Scenerio: Customer XYZ Inc., requires a functionality in the application which can
dynamically take the user from Contact List Applet in the Opty-Contact View to Contact
Entry Form Applet when the user focuses on a record when the value of the Job Title
field is CEO

Steps:

1. Applet Select your Parent applet (Contact List Applet)

2. Applet Toggle COT In the applet property select the destination applet (Contact
Entry Applet)Populate the Auto Toggle field with the field on which the Dy. Toggle
Functionality is based on (Job Title in the above example), In the Auto Toggle value
property populate the value (CEO in the above case).Sequence (You can have
more than one Dy. Toggle in one applet with each Dy Toggle based on different
values)

Note: Dynamic Toggles can take yu to the destination applet but, you cannotcome back
to the originating aplet.
XIX. 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. CREATING A DRILLDOWN FOR JOINED FIELDS

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

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

Multi Value Field (MVF) allows Master-detail ot Parent-Child information to be


displayed in one applet. Any field which has more than one value associated to it is
called as a Multi Value Field

Multi Value Links levarages on the Links to support MVFs

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 M-M 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 Master-
Dteail relationship. The disadvantages with this option are:

Two applets would take more space.


We cannot Query at a time on two business components if the dtaa from the BCs
is displayed in two separate applets.

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

Create a Multi Value Link in the Parent BC

Add Multi Value Field sin the Parent BC

Create a MVG Applet to display Child records

Add Controls/ListColumns to the Parent Applet to display MVFs and Invoke MVG

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.


XXIV. REQUIRED FIELD

1. Select your BCField OT Select the field you wish to make as a required
field and check the Required Property to True

XXV. TO VALIDATE YOUR OBJECT DEFINATIONS

Select any of your Object Definations and Right Click and Click on Validate in the
Cscade Drop Down

XXVI. TO VISUALIZE YOUR OBJECT DEFINATIONS

Select your Object Definations Right Click View Hierarchy

XXVII. TO SEE RELATIONSHIPS

Select your Object Definitions Right Click View Relationships

XXVIII. TO GET A NOTE PAD ON THE DESCRIPTION FIELD OF BC

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.
XXX. IMPLEMENTING FIND DIALOG BOX

1. Find OT CNR Specify Name (Say Account), Project and Title (Say Find
Account)

2. Applet OT Select the Applet in which you which this feature be added

3. Find Field CNR In the Fields property specify the field say Acc Name, Give
Sequence in the Sequence property and title in the title property. Repeat the step
for each field you wish to include

4. Go to Find View CNR In the View Property select the view you wish to
implement the Find Dialog box for and specify the Sequence in the Sequence
Property

5. Application: Select your Application Go to Application Find OT CNR In


the Find Property select the Find Object created by you in the 1st Step above and
give the Sequence in the Sequence property Field
XXXI. TO CREATE A NEW BITMAP

1. Goto Bitmap Category CNR In the name property give a name to the Bitmap,
Associate the Bitmap 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

XXXII. TO IMPORT A BITMAP

1. Go to Bitmap OT, which is the Child Object Type of Bitmap Category Right Click
Import Bitmap Choose one from the available .BMP files

XXXIII. FOR LOGO TYPE BITMAP

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)
XXXVI. BUTTON CONTROLS IN APPLET

1. Bitmap Category Select Button Icons

2. Goto Bitmap Object Type (COT of Bitmap Category) Either Create or Select the
Bitmap

3. Goto Applet Query for your applet Right Click Edit LayoutSelect Control from
Menu BarDrag and Drop Right Click Specify a Caption and Set the Owner Draw to
True

XXXVII. COMPANY LOGO

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

All in Page: All questions on the page are visible.


All Reachable: The current question, and all questions that can be reached from
the current question via a single branch, are visible.
Only Current: Only the current question is visible.

9. Create page translations, right-click on the Translations applet and select new record.
Select the language in the Language field
Enter a label for the page. This label will be visible in the script.

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

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:
1. Do join, and get the fields from another table.
2. Add new fields to existing table.
3. Create new table.
4. 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.

Types of Extension Tables:


Extension tables can be of the one-to-one or one-to-many style: Rows in as one-to-one extension
table have a one-to-one relationship with corresponding rows in the base table. A one-to-one
extension table extends the base table horizontally,
One-to-one extension tables are described in greater detail in One-to-One Extension Tables,
following.
In a one-to-many extension table, there are multiple extension table rows for each base table row.
There are standard one-to-many extension tables for certain of the major business components,
including Opportunity, Contact and Account. These are used primarily to create multi-value groups
based on user-created business components.

Exp:
S_CONTACT_X = (1: 1)
S_CONTACT_XM = (1: M)

Join between BC and Extension Tables:


If u requires to populate field from the extension table in the BC in a one to one manner, we do use
the S_ _X kind of tables. The join between the BC and its base tables extension table is called as
Implicit Join, as the primary key and foreign key mappings are already done by Siebel.

Business
Component: Select Contact BC

Field: Join, Column, Name


Cnr S_CONTACT_X, Attribute 01 Mother Name
Cnr S_CONTACT_X Attribute 02 Father Name

Applet: Select the Contact List Applet

List:
List Column: Field Sequence
Father Name 5
Mother Name 6

Extension Table 1: M

Business
Component: Name, Project, Table
Contact Hobby Extn BC S_CONTACT_XM

Fields: Column, Name,


CNR PAR_ROW_ID Contact Id (fk)
CNR NAME Hobby Name
CNR TYPE Hobby Type
CNR Attribute 01 Hobby Descriptions
CNR 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, Link


CNR: Contact Hobby Extn BC Contact/Contact Hobby Extn Link

Applet: Create a list applet on Contact Hobby Extn Link

View: Create a master-detail view on Contact Form Applet( sector 0, 4) and Contact Hobby Extn
List Applet (sector 1,2,3,5,6,7) and drop sectors 3,7.

Screen: Under Contact Screen Pick up the new Contact/Contact Hobby Extn view

Compile the Project and go to call center and assign the responsibility for the new view.
Navigation: History and Thread Bar

Please follow steps to activate the History and Thread Bar.

View: Name, Thread Applet, Thread Field, Thread Title

Opty list view Opty list applet Opty name Opportunity


Opty Contact view Opty form applet Opty name Opportunity
Acc list view Acc list applet Account Name Account
Acc/Cont view Acc form applet Account Name Account
Acc/Opty view Acc form applet Account Name Account
Cont list view Contact list applet Last Name Contact
Cont/Opty view Contact form applet Last Name Contact
Tree Applet/ Explorer View:

Assumption is that: There are Opty BC, Contact BC, Product BC, Activity BC and all the BCs are
taken into Opty BO and they are linked to each other.

Applet: Create a tree applet on Opty BC


Menu Bar-File- New Object-Tree Applet Wizard-ok-
Project: Business Component: Opty BC, Name: Opty Tree Applet
Click on next-finish and pick up the fields from available to required window.

Inside the Opty Tree Applet, select the top node-Right Click- View properties window
And fill the following parameters:
Applet: Opportunity list applet
BC : Opportunity BC
Label Field: Opportunity Name
Display Name: Opportunity
Select Tree Node 2 right click view properties window- and fill the followings
Applet: Contact list applet
BC: Contact BC
Display Name: Contact
Label Field: Last Name
Select Tree Node 3 right click move selected tree node-to right-right click and view properties
and fill the followings:
Applet: Product list applet,
BC: Product BC
Display Name: Product
Label Field: Product Name
Right Click in the tree applet and Create new tree node-right click on the new tree node and move
select tree node- to right and right click and view properties window and fill the follwings:
Applet: Activity list applet
BC: Activity BC
Display Name: Activity
Label Field: Activity Name

View: Create an Explorer view on Opportunity BO


Menu Bar-File-New object-View-ok
Project: , Name: Opportunity Explorer view, BO: Opportunity BO , Drop Sector: 3,7
Drag and place the tree applet on the sectors of 0,1,2,3 and keep sectors 4,5,6,7 blank

Screen: assign the newly created view to the Opportunity Screen

Compile the project and go to call center and assign the view and responsibility.
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: Report Name: Sun Cont Detail Report, Sequence: 1

Compile the project and close the Siebel Tools.

Open 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. Skills
2. Workload
3. Assignment Object
4. Assignment rules/criteria
5. Geographical Location
6. 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
Expertise on Hard disk Cconway = 16, Halacon = 12

Employee: Product: Employees Workload Score Total


Total Score * {1-(current workload/Max
Workload)}
-----------------------------------------------------------------------------------------------------------
Cconway 16 45 * {1-(15/20)} = 11.25 27.25
Halacon 12 45* {1-(4/20)} = 36.00 48.00

Highest score = Halacon, assignment of job will be to Halacon

RUN ASSIGNMENT MANAGER:


There are three ways to run assignment manager.

1. Batch Assignment: allows the reassignment of all objects using the new assignment rules.
For exp: need to implement a territory realignment across all existing accounts and
opportunities.
2. Dynamic Assignments: enables users to create assignments as other users and server
programs change object attributes. For example: user changes revenue or address of an
Opportunity: dynamic Assignment Mgr automatically invokes Assignment Manager to
reassign the Opportunity to a different territory or sales team as necessary.
3. Interactive Assignment: allows user to view the list of assignees generated by the
Assignment Manager and then override the assignment and select another assignee from
the list in real time. Exp: need to assign a specific position/employee that the entire rule
will not select.

Steps to Perform a Batch Assignment Exercise:


Call Center- Sadmin Server Screen Assignment Administration Assignment Rules:
Assignment
Rules View: CNR: Name: US West Sales, Object: Account (Pick up), Activation Date: ,
Expiration Date: , Assignment Rule From: All, Above, Minimum

Assignment Criteria View:

Assignment Criteria: CNR: Criteria: Account State, Comparison Method:


Compare to object
Values: CNR: State: CA, cnr: OR
Assignment Employees View: CNR: Pickup two employees. (Halacon, Silver)

Assignment Rules View: Select the US Sales West Record and Click on the Release
Button to release the assignment.

To Activate the Assignment Manager by running the Server Components:

Screen Server Administration Server Server Task

Server Task Click on New and from the component window select the Batch assignment
component and close.
Then click on Parameter button and fill the following parameters:
Assignment Object Name: Account
Sleep time: 17
Error Flag: 1
Sql trace flag: 8
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.

Anda mungkin juga menyukai