Developing and Deploying Siebel Business Applications: Version 8.1, Rev A December 2010
Developing and Deploying Siebel Business Applications: Version 8.1, Rev A December 2010
Developing and Deploying Siebel Business Applications: Version 8.1, Rev A December 2010
Deploying Siebel
Business Applications
Version 8.1, Rev A
December 2010
Copyright © 2005, 2010 Oracle and/or its affiliates. All rights reserved.
The Programs (which include both the software and documentation) contain proprietary information;
they are provided under a license agreement containing restrictions on use and disclosure and are also
protected by copyright, patent, and other intellectual and industrial property laws. Reverse engineering,
disassembly, or decompilation of the Programs, except to the extent required to obtain interoperability
with other independently created software or as specified by law, is prohibited.
The information contained in this document is subject to change without notice. If you find any problems
in the documentation, please report them to us in writing. This document is not warranted to be error-
free. Except as may be expressly permitted in your license agreement for these Programs, no part of
these Programs may be reproduced or transmitted in any form or by any means, electronic or
mechanical, for any purpose.
If the Programs are delivered to the United States Government or anyone licensing or using the Programs
on behalf of the United States Government, the following notice is applicable:
The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently
dangerous applications. It shall be the licensee's responsibility to take all appropriate fail-safe, backup,
redundancy and other measures to ensure the safe use of such applications if the Programs are used for
such purposes, and we disclaim liability for any damages caused by such use of the Programs.
The Programs may provide links to Web sites and access to content, products, and services from third
parties. Oracle is not responsible for the availability of, or any content provided on, third-party Web sites.
You bear all risks associated with the use of such content. If you choose to purchase any products or
services from a third party, the relationship is directly between you and the third party. Oracle is not
responsible for: (a) the quality of third-party products or services; or (b) fulfilling any of the terms of
the agreement with the third party, including delivery of products or services and warranty obligations
related to purchased products or services. Oracle is not responsible for any loss or damage of any sort
that you may incur from dealing with any third party.
Oracle, JD Edwards, and PeopleSoft are registered trademarks of Oracle Corporation and/or its affiliates.
Other names may be trademarks of their respective owners.
Contents
Index
Table 1. New Product Features in Developing and Deploying Siebel Business Applications, Version
Version 8.1, Rev A
Topic Description
“Adding a Custom Logo to the Modified topic. To use a custom image, you must add a
Banner” on page 122 bitmap object in Siebel Tools.
“Modifying the Screen Bar and View Modified topic. You can modify the background color of a view
Bar Colors” on page 125 frame.
“Modifying Applet Colors for High New topic. For high interactivity applets, you change the
Interactivity Applets” on page 128 background color in the main.css file.
“Examining Business Requirements Modified topic. You must use a text file as the input to the
for Using Data from an External Data business service. This file cannot include XML tags.
Source” on page 129
“Running the Generate Triggers Modified topic. The procedure to create a component job
Server Component” on page 151 changed beginning with Siebel CRM version 7.7 and later.
Additional Changes
This book has been reformatted to improve usability.
This chapter describes an overview of developing a Siebel application. It also describes a fictitious
company who develops a Siebel application. It includes the following topics:
This book describes a basic strategy to plan, design, and deploy a Siebel application for your specific
requirement. You can apply this strategy during the case study, and then generalize it to your
company.
This book does not describe a solution design or a detailed development methodology. It presents
techniques in a real-world context that you can generalize to your environment.
1 Discover. Identify and document functional and technical requirements that support the
business goals.
2 Design. Design the project approach and scope, and incorporate project management controls.
For more information, see Documents You Use During the Design Stage on page 12.
3 Prototype. To develop application screen flows and design layouts, use the requirements from
the discovery stage to create a prototype of the solution.
4 Configure. Configure the application, extensions, and external interfaces that are required to
support the custom Siebel application.
5 Validate. Perform a full test of the functionality, including using production data to perform a
user acceptance test of the application.
■ Perform a production test that tests and revises the custom Siebel application, user training,
technical infrastructure, the network, and the help desk.
■ Deploy the solution from the testing environment to the production environment.
7 Sustain. Evaluate the product and perform continuous improvement. Measure how well the
solution meets the business goals.
■ Entity relationship diagram. Illustrates relationships between entities. Entities include object
definitions, such as business components or business objects. For more information, see Figure 7
on page 29.
■ Business object design template. Groups business components and identifies links between
business components, which indicates the parent and associated child records in the Siebel
client. You use the business component design template and then the business object design
template.
■ Applet design template. A reference document you create for each applet. It documents the
properties of the applet, the fields that are available on the applet, and the properties that are
associated with each field. It must include a mock-up or screen shot of the applet. You create an
applet design after you decide what entities you must track in your Siebel application.
■ View design template. Describes what applets are part of the view definition and identifies any
special visibility associated with a view. For example, a My Team’s View or an All View. It must
also document how the user uses drilldowns to navigate through the views, tabs, and other user
interface elements.
■ Screen design template. Lists the views available from each screen and indicates the default
view for each screen.
■ Report design template. Describes information about reports. Includes the business
component, whether the report is dynamic or static, and lists any subreports that must be
available.
■ Testing strategy document. Describes project objectives and provides a structure for tracking
progress. Without proper planning you might perform too much or too little testing.
■ Test cases document. Describes test cases according to approved technical designs. A written
test case can also serve as a blueprint to develop an automated test script.
1 Testing strategy. Makes sure that testing provides useful information, minimizes risk, and
provides a way to track progress. Proper planning helps to make sure you perform the correct
amount of testing. You do the following work:
■ Develop test cases. Developers and testers finalize the test cases according to approved
technical designs. The written test cases can also serve as a blueprint to develop automated
test scripts. To make sure test cases are realistic, you must include input from business
analysts.
■ Evaluate the design. Business analysts and developers verify that the design meets the
business unit requirements. Do not start development work until team members agree that
the designed solution meets the project objectives. It is more cost effective to prevent
problems or omissions during the design stage than addressing them later. If a design is
flawed from the beginning, then the cost to redesign later can be high.
You begin testing when you start to configure the Siebel application. You develop a testing
strategy to meet the following goals:
■ Establishes priorities
2 Functional test. Validates units of the Siebel application. Begins the same time as prototyping
and continues during unit testing. Developers and the test team do the following work:
■ Perform functional tests progressively on units, modules, and business processes to verify
that the Siebel application functions correctly. Developers test units and resolve problems.
The unit test makes sure an individual unit of the overall application can function correctly,
and prevents introducing unstable units in the larger application. The developer tests their
code against a design specification. A unit test is an isolated test that is often the first test
that the developer performs in their own environment before checking changes in to the
configuration repository.
■ Move units to the testing environment and combine units to form a module.
■ Verify module functionality. For example, the team makes sure the module includes the
correct layout, such as list menus and text fields, and returns the correct values. The team
develops features and tracks problems to manage quality.
■ To verify modules work together correctly, performs functional tests that use business
processes and scenarios.
3 System and integration test. Validates that the Siebel application works correctly with new
modules or other applications and interfaces. Tests the Siebel application in a test environment.
This environment allows the Siebel application to interoperate with other required applications.
You must verify integration with backend, middleware, and third-party applications. You perform
integration testing on the entire system to make sure that the Siebel application functions
properly when connected to related applications and other infrastructure components.
4 User Acceptance test. Tests Siebel application usage with business owners and users. You
perform this testing on the complete system. You perform usability tests, which test how well the
application works during user interactions with the Siebel client when the user attempts to
complete specific tasks. You validate how the application supports business processes in the user
community in the lines of business and the IT organization. You make sure the application meets
performance requirements and that there are no user task failures or prohibitive response times.
This is typically a very busy time in the project, when people, process, and technology prepare
for the rollout.
5 Performance test. Determines if the infrastructure performs and scales to your requirements.
You perform a stress test, which is a type of test that identifies the maximum load the hardware
configuration can handle. Test scenarios simulate expected peak loads. You usually use an
automation tool to measures client and server response time. This stage requires an image of
the full database and all interfaces with the Siebel application, such as computer telephony
integration, middleware, or email. You must perform this test in an environment that uses
realistic test data. You do the following:
■ Complete a capacity test. You add users until you reach the number of users that you expect
will use the Siebel application during peak usage over the lifetime of the application.
■ Perform a longevity test, which tests the Siebel application over an extended period of time.
This test determines application durability, and it identifies problems that become visible over
time.
6 Post production tuning. Testing is not complete when you roll out the application. After you
complete the initial deployment, Oracle delivers regular maintenance and major software
releases that you might apply. You review the test strategy, test objectives, test plans, and test
cases to identify any areas for improvement. You must update test cases to include scenarios
that you discovered during testing.
You also perform regression tests, which is a type of test that makes sure predefined and custom
features function correctly together. Code additions or changes can unintentionally introduce
errors or regressions. You must periodically perform integration and regression testing. These
tests make sure your changes do not prevent predefined features from working, and make sure
that the Siebel application can interact with other applications and products. If a test fails, then
you must locate the faulty configuration and make the required corrections. If you perform these
tests too infrequently, then troubleshooting might become problematic.
■ Reduce deployment cost. Identifies problems early in the project to reduce total cost of
ownership. The cost of resolving a problem increases significantly in later development stages.
A problem discovered during the discover stage can be significantly less expensive to address
than the same problem discovered after you deploy the application. When in production, a
serious problem can result in lost business and affect the success of the project.
Performing testing early and often can lower the total cost of ownership. A software project that
attempts to save time and money by lowering the initial investment in testing often results in a
higher cost of ownership.
1 Development. You use this environment to perform the initial configuration. It typically includes
a server computer, several client computers, development tools, and a small set of data that
includes repository data, seed data, and sample transactional data. A development server is the
server computer in the development environment. For more information, see “About the Local
Development Environment” on page 18.
2 Test. You use this environment to test your custom Siebel application with data that simulates
the production environment. A separate computer, or several computers, contain business data
but no development tools. You copy the configuration from the development environment to the
test environment. To simulate the production environment, you configure rules and set up actual
data for your organization. After you complete the setup, you test customizations, patches, and
version upgrades.
3 Production. Similar to the test environment that exists at the end of testing, but the production
environment includes hundreds or thousands of users and live business data. You move the
configuration and user data from the test environment to the production environment, and then
deploy the product to users.
Each environment corresponds to a stage in the application rollout. Each environment contains
separate hardware, software, and data. Using this structure prevents the activities you perform in
one environment from interfering with activities you perform in another environment. For example,
configuration work in the development environment does not interfere with testing activities in the
test environment.
A developer checks out object definitions from the server database, modifies these definitions, and
then checks them back in to the server database. The check-out and check-in process does the
following:
■ Check out. Copies projects from the server database to the local database and locks the projects
on the server database. Locking the project on the server database prevents multiple developers
from simultaneously checking out the same object.
■ Check in. Copies projects from the local database to the server database and releases the lock
on the server database.
Working on a local database rather than working directly on the server database provides the
following benefits:
■ Allows you to remove unwanted changes without overwriting the work of other developers.
Working on a local database provides you the option of not checking in changes to the server
database. Until you check in changes, the server database remains a clean backup.
■ Allows developers to prototype configuration changes by locking a project locally rather than
checking out and locking the project on the server database.
■ Allows you to work remotely because you are not required to be connected to the development
server.
Siebel CRM does not update Siebel Web templates during project check-in and check-out. To manage
Siebel Web template files, you must use a third-party source file control application or a manual
process. For more information, see “Moving Web Templates, Image Files, and Cascading Style Sheets”
on page 167.
For more information, see “Checking Out Projects from the Siebel Server” on page 181 and “Checking
Projects In to the Siebel Server” on page 185.
1 Physical user interface objects layer. Includes the physical files, templates, style sheets, and
other metadata that reference files that render the user interface in the Siebel client.
2 Logical user interface object layer. Includes object definitions for the user interface in the
Siebel client. These objects define the visual elements that Siebel CRM displays to the user and
with which the user interacts in a Web browser. A user interface object references a business
object.
3 Business object layer. Includes objects that define business logic and organizes data from
underlying tables into logical units.
4 Data objects layer. Includes object definitions that directly map the data structures from the
underlying relational database to Siebel CRM. These objects provide access to those structures
through object definitions in the business object layer.
Siebel CRM insulates objects in each layer of the Siebel object architecture from the layers above
and below each layer, including the RDBMS (Relational Database Management System) at the bottom
of the architecture. This allows you to change or customize Siebel objects in one layer without
affecting other layers. Because Siebel CRM separates the database in the RDBMS from the object
architecture, you can make database changes with only minimal affect on Siebel CRM.
Development Stages
Development Stages
Figure 6 illustrates how NREC solicits and routes interest directly from a buyer to an agent. To inquire
about a house, a buyer calls a toll-free number. NREC records the buyer information and, rather than
handling the lead, NREC sends it to an agency in the NREC distribution network.
To address these problems, NREC decides to develop a Siebel business solution. This solution is
employee and partner facing. It provides participants with access to the information they require to
do their jobs. Rules in the Siebel application streamline inefficiencies. For example, the Siebel
application automatically dispatches buyer leads to partners according to assignment rules that all
parties have agreed upon. The Siebel application can automatically assigns an opportunity to an
agent, and can automatically send an email notification to the agent regarding the new assignment.
The employee applications in this deployment are modeled on Siebel Sales and Siebel Partner
Manager, while the partner application is modeled on Siebel Partner Portal. Because each Siebel
application shares a common back end, all users view the most up-to-date information.
Because this book assumes that the configuration for the employee applications proceeds
successfully, it focuses on the configuration of Siebel Partner Portal, which is the partner application.
All examples in this book that describe the Siebel client use Siebel Partner Portal.
■ NREC application administrator. NREC operates the Partner Portal Web site for NREC partner
real estate agencies and their agents. Administrators add houses and leads as they become
available. The Partner Portal Web site automatically sends these leads to a partner agency.
Administrators perform administration tasks, such as managing partner information.
■ Real estate agent. To manage opportunities and contact information, browse houses for sale,
and track activities related to each opportunity, real estate agents of the partner agencies use
the NREC Partner Portal site.
■ Real estate agent manager. Managers at partner real estate agencies use the NREC Partner
Portal site to track opportunities and activities for every agent in the agency. They also use the
NREC Partner Portal to examine houses for sale, and to track their own opportunities, contact
information, activities, and so forth.
■ Access through low-bandwidth Internet connections. NREC partner agents must access
data over low-bandwidth connections without installing the Siebel application on their personal
computers. A dial-up connection is an example of a low-bandwidth connection.
■ Access through corporate intranet. NREC administrators and employees must perform
administration tasks, such as creating new users, assigning responsibilities, and so forth. They
must also maintain data, such as information about houses, opportunities, contacts, and so forth.
They must perform this work through a graphical user interface connected to the corporate
intranet.
■ Mobile access. NREC employees must access and manipulate data on their laptops while they
are not connected to a corporate database. They must synchronize with the corporate database,
when required.
To meet these requirements, NREC plans to use the Siebel Web Client and Siebel Mobile Web Client:
■ Siebel Web Client. The user uses their Internet browser to connect to the Siebel server. The
Siebel Web Client is an HTML, Web interface. It meets the NREC requirements to access a Siebel
application through the Internet or an intranet.
■ Siebel Mobile Web Client. Agents can use a Siebel application and work offline in a local
database that resides on the personal computer that the agent uses. The user synchronizes their
local database with the server database, when necessary. The Siebel Mobile Web Client provides
the same HTML interface as the Siebel Web Client, but the local Siebel application serves the Web
pages rather than a server. It meets the NREC mobile access requirement. For more information
about deploying the Siebel Mobile Web Client, see Siebel Installation Guide for Microsoft
Windows.
NOTE: As a general rule, a gap analysis results in less than 25% of the functionality that requires
customization. If the gap is more than 25%, it might indicate that the team is not employing
predefined functionality appropriately. For more information, see “Getting Help from Oracle” on
page 13.
Track houses for sale. You create a new screen for Houses and add it to the Siebel
eChannel application. For more information, see “Creating the
Houses Screen” on page 85.
Track the features of each To store more attributes and display them in the Siebel client, you
house, such as square add columns to the S_PROD_IN T table. For more information, see
footage, number of “Process of Configuring the House Detail View” on page 73.
bedrooms, and so forth.
Enter and edit records for To allow updates and add necessary controls to the Product Form
houses. Applet, you modify the Internal Product business component. For
more information, see “Configuring the Internal Product Business
Component” on page 77 and “Modifying the Product List Applet” on
page 81.
Provide the user with You configure static picklists for fields. For more information, see
predefined values to choose “About Picklists” on page 105.
from when the user enters
house features.
Track and display previous To store appraisal data and display fields in the Siebel client, you
appraisal information for use a predefined one-to-many table. For more information, see
each house. Example “Process of Configuring the House Detail - Appraisals View” on
information includes date, page 88.
amount, and assessor.
Display renovation To store and display data from flat file, you create a virtual
information for each house. business component. You create a new view to display the data.
For more information, see “Creating a Virtual Business Component”
on page 133.
Display houses to partner Use Siebel Personalization to filter the list of houses according to
users according to ZIP code. ZIP code. For more information, see “Filtering Records According to
a User Profile” on page 153.
Manage Opportunities
NREC must provide NREC internal employees and partner agents a way to manage opportunities.
Uses record opportunities for potential buyers and include contact information and information about
the type of house in which the buyer is interested. NREC sends these opportunities to a partner
agency according to location.
For each opportunity, store You add columns to the base S_OPTY opportunity table. For more
house features that the buyer information, see “Process of Configuring the House Detail View” on
seeks and buyer page 73.
characteristics.
Users might choose values for You add picklists for each field requires predefined values. For
house attributes from a list more information, see “Creating Static Picklists” on page 107.
rather than enter them.
Example attributes include
square footage, price range,
and so forth.
Send an email notification to You use the Business Process Designer to configure Siebel CRM to
partner agents when Siebel automatically send email notification. For more information, see
CRM assigns a new “Process of Automating a Business Process” on page 144.
opportunity to the agent.
Manage Activities
NREC must manage activities for each opportunity and contact. The predefined Siebel CRM activity
management functionality meets most NREC requirements.
Table 5 describes NREC requirements that the predefined Siebel CRM activity management
functionality does not meet.
Display the opportunity You add the opportunity to the Activity List and Form Applets.
associated with each activity. For more information, see “Adding Fields to Applets” on
page 68.
Allow users to navigate from the You configure a dynamic drilldown. For more information, see
Opportunity Detail view to one of “Creating a Dynamic Drilldown” on page 112.
the following views, depending on
the sales stage:
Manage Contacts
The predefined Siebel CRM contact management meets NREC requirements.
■ NREC users and partners can realize the benefits of the project as early as possible.
■ The project team can use feedback gathered during the early project stages and incorporate it
in the final solution.
This scenario assumes that a design team performed the discover, define and prototype stages, and
communicated this information to developers. For more information, see “About Developing a Siebel
Application” on page 11.
■ Account Management
■ Activity Management
■ Assignment Manager
■ Contact Management
■ Opportunity Management
■ Partner Management
■ Personalization
■ Product Information
2 Data source. Provides the source of data for each entity. Siebel CRM stores most data in tables.
For example, house information resides in the S_PROD_INT table. Siebel CRM can derive data
from an external source. For example, the House Renovations virtual business component
derives data from an external source.
3 Relationship. Indicates the nature of the relationship between entities, such as one-to-one,
one-to-many, or many-to-many.
■ Accounts
■ Activities
■ Contacts
■ Internal Products
■ Opportunities
■ Activity
■ Contacts
■ Internal Product
■ Opportunity
■ Partner Company
Figure 8 illustrates part of the user interface layer. NREC will also use other screens, such as Partner
Management and Application Administration.
■ Use Oracle’s Siebel Application Deployment Manager (ADM). For more information, see Siebel
Application Deployment Manager Guide.
■ Deploy Siebel CRM to Siebel users. For more information, see Siebel Installation Guide for
Microsoft Windows.
This chapter describes how to install software, add users, and create the company structure. It
includes the following topics:
In this topic you install software you use in the development environment. For more information, see
“Overview of the Development Environment” on page 17.
For more information, see “Software You Use in the Development Environment” on page 33.
For more information, see “Software You Use in the Test Environment” on page 35.
For more information, see “Software You Use in the Production Environment” on page 36.
The NREC example uses a Windows environment. For more information, see Siebel System
Requirements and Supported Platforms on Oracle Technology Network.
Siebel database Installing and running a database script For more information, see
schema creates a database schema and enters seed Siebel Installation Guide for
data into some tables. Microsoft Windows
Siebel File System A shared directory tree that stores files that
the database software does not manage.
Database software. Third-party relational database software. For more information, see
For example, IBM the product documentation
The computer name is DEV_DB_server.
DB2, Oracle, or for the database software.
SQL Server.
Web server. For Web server that the Siebel Web architecture For more information, see
example, Microsoft requires. the product documentation
Internet for the Web server.
The computer name is DEV_server.
Information Server
or IBM HTTP
Server.
Siebel Tools An integrated development environment you For more information, see
use to configure a Siebel application. Using Siebel Tools.
Microsoft Internet The Web browser that displays the interface For More Information, see
Explorer for the Siebel Web Client or the Siebel Mobile the Microsoft Web site.
Web Client.
Web server. For example, TEST_server For more information, see the
Microsoft Internet product documentation for the Web
Information Server or IBM server.
HTTP Server.
Microsoft Internet Explorer TEST_client_B, and other For more information, see the
client computers that you Microsoft Web site.
use to test access.
Assume that NREC installs the production software on computers with names that it prefixes with
PROD. For example, it installs server software on the PROD_server computer.
Your database administrator creates database accounts and optionally encrypts user passwords.
Depending on your user authentication environment, each user might possess an individual database
account, or multiple users might share accounts. If you deploy an external authentication
application, then you must configure user authentication including associating each user with a
database account.
For more information about configuring user authentication, see Siebel Security Guide. For more
information about creating users, see Siebel Applications Administration Guide.
■ For the password, use the same value as the User ID. For example, for Patricia Bosh, use
PBOSCH for the User ID and PBOSCH for the password. This technique simplifies
development because the developer can enter the same value for the User ID and the
password during testing. In an actual deployment, you must set the password according to
your security requirements.
The steps to create a database account depends on the database software that your organization
uses. Work with your database administrator to perform these tasks.
Types of Users
A Siebel application recognizes several types of users:
■ Partners. Individual users in partner companies to whom your organization might grant access
to data. For more information, see “Creating a Partner Organization” on page 48.
■ Users. Internal and external users who possess login privileges. These users might include
customers who require access to your company data. A user does not require a position to access
views.
■ Persons. Includes employees, partners, users, and contacts. Persons might or might not
possess login privileges.
You use the Siebel client to add users. To use the Siebel client, you must modify the configuration
file for the Siebel client so that it references the correct Siebel database.
For example:
C:\Siebel\8.1\Client_1\BIN\ENU\pmanager.cfg
The Siebel client for each Siebel application references a specific configuration file. In the NREC
example, you modify the Partner Portal application. The pmanager.cfg file is the configuration file
for the Partner Portal application.
■ To modify the local database, in the [Siebel] section, make sure the DataSource parameter
is set to Local.
In most development environments, you modify the local database, which is located in the
following directory:
C:\ORACLE_HOME\release number\Client_1\local\sse_data.dbf
■ If you are prototyping and prefer not to modify the local database, then you can use the
Sample database. Do the following:
❏ In the [Sample] section, set the ConnectString parameter to reference the Sample
database.
For example, assume you install the Sample database in the following directory:
C:\Siebel\8.1\Client_1\
For more information, see “Prototyping with the Sample Database” on page 62.
Creating Responsibilities
This task is a step in “Process of Adding Users” on page 36.
A responsibility determines the views a user can access. For example, the Siebel Administrator
responsibility allows the user to access all views. Creating responsibilities lets you limit user access
to views. If you do not use a predefined responsibility, then you must create a new one.
In this topic, you create responsibilities for NREC employees and partners. You do not create a
responsibility for the developer. To perform development tasks, the developer typically must access
all views. The predefined Siebel Administrator responsibility provides access to all views. You assign
the Siebel Administrator responsibility to the developer.
To create responsibilities
1 Log in to the Partner Manager application as an administrator.
For more information, see “Logging In as the Siebel Administrator” on page 183.
a In the Responsibilities list, click Query, enter CEO in the Responsibility field, and then click Go.
You cannot edit a predefined responsibility. You must copy it and then modify it. The CEO
predefined responsibility includes most views that the NREC CEO requires. The NREC CEO
responsibility must access all views except application administration views.
b Click Menu and then choose the Copy Record menu item.
Siebel CRM creates a new responsibility. It copies the views from the predefined
responsibility, but it does not copy the users from the predefined responsibility.
Field Value
a In the Responsibilities list, click Query, enter Sales Manager in the Responsibility field, and then
click Go.
b Click Menu and then choose the Copy Record menu item.
Field Value
a In the Responsibilities list, click Query, enter Universal Agent in the Responsibility field, and
then click Go.
The predefined Universal Agent responsibility contains many of the views that the NREC
Agent requires. In an actual development project, you must customize the views that each
responsibility can access.
b Click Menu and then choose the Copy Record menu item.
Field Value
a In the Responsibilities list, click Query, enter Partner Sales Rep in the Responsibility field, and
then click Go.
b Click Menu and then choose the Copy Record menu item.
Field Value
■ Define each responsibility to correspond to a major job function in your organization. For
example, you might create a separate responsibility for each of the following job functions:
■ NREC CEO
■ Sales manager
■ Partner manager
■ Field sales representatives
■ Copy a predefined responsibility and then customize it. Note that you cannot edit a sample
responsibility.
■ For a developer, add new views to the administrator responsibility. The administrator
responsibility provides access to all views. A developer typically helps troubleshoot the Siebel
application and requires access to all views.
■ Do not provide end users with access to the following views and screens:
■ System Preferences view. This view controls server logic and processing. Provide access
to the System Preferences to only a particular group of administrators.
■ License key view. To discourage an unauthorized user from attempting to change a license
key, you can limit access to the license key view. To do this, you use the License Keys view
in the Administration - Applications screen. To hide the license key view, disable the Siebel
License Key view in the responsibility for the user.
Siebel CRM automatically adds the Siebel Administrator responsibility. When you add the
NREC CEO responsibility, remove the Siebel Administrator responsibility.
For more information, see “About the User Id Field” on page 42.
❏ In the Positions Occupied dialog box, in the Find list, choose Position.
❏ In the Starting With window, enter Siebel Administrator, and then click Go.
❏ In the Available window, make sure the Siebel Administrator position is chosen, click Add,
and then click OK.
Siebel CRM requires that you add a position. You change this position later. For more
information, see “Creating Positions and Position Skills” on page 44.
3 Repeat Step 2 for each of the other users listed in “NREC Employees and Users” on page 42.
■ For each user, set the Position to Siebel Administrator. For some users, you change this
position later. For more information, see “Creating Positions and Position Skills” on page 44.
■ For the sales manager and agent users, make sure you remove the Siebel Administrator
responsibility.
If a developer locks a project in Siebel Tools, then Siebel Tools displays the user ID for the account
in the Locked By Name property. Make sure the user name clearly identifies the developer. It is
recommended that you use a convention for the user name, such as the first initial plus the last
name.
The login name must match the database account name for the user. To maintain compatibility across
databases, it is recommended that you use all uppercase letters. For example, LCHENG.
Creating the organizational structure for your company includes creating the following items:
■ Divisions. A division belongs to an organization but does not affect visibility. A division groups
positions and record addresses, and maintains default currencies.
■ Positions and position skills. A position represents a specific job type. It determines the
records a user can access.
■ Responsibilities. A responsibility controls the screens and views a user can access. For more
information, see “Creating Responsibilities” on page 38.
The company structure affects the records and views that Siebel CRM displays to a user. A many-to-
many relationship exists between a person and the positions you associate with that person. For
example, you can associate a person with the sales representative position for the X territory and
the sales manager position for the XYZ region. You can also associate more than one person to a
single position. For example, when two people share a single job.
If you associate a user with one responsibility and multiple positions, then that user can access the
same set of views regardless of the position the user logs in with. If the user changes position, then
the user can access different data. For example, a user who logs in as a sales representative can
only access data that pertains to the sales representative position. The user can still access the My
Team’s Accounts view, but because no other positions report to the sales representative position,
Siebel CRM only displays data that pertains to the sales representative position. In this situation, it
does not display data that pertains to the sales manager position. If the user changes to the sales
manager position, and if the user is the primary on the account, then the My Team’s Accounts view
displays user information for the positions that report to that user.
NOTE: Changing your company structure can cause routers to reevaluate visibility for every object
that is related to the objects that you change. This reevaluation can affect performance. For more
information, see Siebel Remote and Replication Manager Administration Guide.
For more information, see Siebel Applications Administration Guide and Siebel Security Guide.
Creating an Organization
This task is a step in “Process of Creating the Company Structure” on page 42.
Creating an organization is optional. If you do not create an organization, then Siebel CRM
automatically assigns objects to a default organization. For the NREC example, you create one parent
organization for NREC and then a child organization for each partner real estate agency. This
structure lets NREC logically group different user groups and partition data.
To create an organization
1 Navigate to the Administration - Group screen, and then the Organizations view.
Field Description
This value must be a unique name for the organization. To provide a visual
clue, it is recommended that you include the word organization in the name.
Siebel CRM automatically creates a division when you create an organization. For example, when
you create the NREC Organization, Siebel CRM automatically creates the NREC division. Note that
you cannot delete an organization that you create.
3 Examine the division that Siebel CRM created for your organization:
b In the Divisions list, click Query, enter NREC Organization in the Division Name field, and then
click Go.
A position represent an actual job position in your organization. It determines the records that Siebel
CRM displays to each user. A position can be a formal job title, such as the actual job title that the
developer uses. It can also be any descriptive text. For example, Developer 1, Developer 2, and so
forth.
To log in to a Siebel application, an employee must be assigned a position. When you create positions
and position skills, it is recommended that you do the following:
■ To determine reporting relationships between positions and parent positions, refer to the
organization chart for your company.
■ Because you choose parent positions as you create new positions, start at the top of the
organization chart and work your way down.
Note that there is typically one position that does not include a parent position. For example, the
CEO position typically does not report to a higher level.
Siebel CRM includes predefined positions that ship with the Siebel product. However, none of the
predefined positions meet the requirements of the developer role in the NREC example, so you must
create a new position for the developer. For more information about positions, see Siebel Applications
Administration Guide.
a In the Siebel client, navigate to the Administration - Group screen, and then the Positions view.
b In the Positions list, add a new record using values from the following table. For all positions that
you add in this step, enter NREC Organization in the Division field.
Field Value
c In the Positions list, add a new record using values from the following table.
Field Value
d In the Positions list, add a new record using values from the following table.
Field Value
First Name Li
e In the Positions list, add a new record using values from the following table.
Field Value
f In the Positions list, add a new record using values from the following table.
Field Value
g In the Positions list, add a new record using values from the following table.
Field Value
a Navigate to the Administration - Users screen, and then the Employees view.
b In the Employees list, click Query, enter Bosch in the Last Name field, and then click Go.
d In the Selected window, click the NREC CEO position, and then make sure the Primary field for
the NREC CEO position contains a check mark.
e In the Selected window, click the Siebel Administrator position.
■ Christine Brown
■ Li Cheng
■ Sandy Bolivar
■ Lee Smith
■ Dana Castro
a Log in to the Siebel client. In the login screen, enter values using information from the following
table.
Field Value
User ID LCHENG
Password LCHENG
To make sure you possess system administrative access, navigate to an administrative view,
such as Administration - User, and then the Employees view.
b Log out of the Siebel client, and then log back in using values from the following table.
Field Value
User ID PBOSCH
Password PBOSCH
c To make sure you do not possess system administrative access, attempt to navigate to an
administrative view, such as Administration - User, and then the Employees view.
a Navigate to the Administration - Group screen, and then the Positions view.
You must use Siebel Tools to add skills before you can add them to a position.
For the NREC example, you register only one partner, San Francisco Real Estate. You create an
organization and set up the company structure for this partner. For more information, see Siebel
Partner Relationship Management Administration Guide.
Siebel CRM automatically adds the Siebel Administrator responsibility. When you add the
NREC CEO responsibility, remove the Siebel Administrator responsibility.
Field Value
c Click Register.
d In the Register Partner form, set values using information from the following table, and then click
Save.
Field Value
If you click Save, then Siebel CRM adds the partner to the Registered partners list and creates
an organization for the partner as a child of the parent NREC Organization.
3 In the Registered Partners list, in the Name field, click the San Francisco Real Estate link.
4 In the Responsibilities list, click Menu, choose the New Record menu item, and then set values
using information from the following table.
Field Value
5 Click the Positions tab, click New, and then set values using information from the following table.
Field Value
6 Click the User Assignments tab, click New, and then set values using information from the
following table.
Field Value
This chapter describes how to set up the development environment. It includes the following topic:
The NREC example requires that each developer use a local database. The process to set up a local
database includes tasks that an administrator performs and tasks that the developer performs. For
example, to generate a local database, an administrator creates the database user and runs Siebel
Remote server tasks. To initialize the local database, each developer downloads repository data from
the Siebel Server.
For more information about each step in this task, see Siebel Remote and Replication Manager
Administration Guide.
NOTE: To complete the examples in Chapter 5, “Configuring the User Interface” through Chapter 8,
“Configuring Logos, Banners, and Colors” instead of setting up and using a local database you can use
the Sample database. For more information, see “Prototyping with the Sample Database” on page 62.
For more information, see “Logging In as the Siebel Administrator” on page 183.
a Navigate to the Administration - Siebel Remote screen, and then the Mobile Clients view.
b In the Mobile Clients list, click New, and then complete fields using values from the following
table.
Field Description
CAUTION: The Mobile Client name and the User ID must contain only
Roman characters, alphanumeric characters, the underscore (_) or the dash
(-). It cannot include spaces, periods, or other special characters. For more
information, see the topic about format of the remote client name, database
name, login id, and windows password in Siebel Remote and Replication
Manager Administration Guide.
The user uses the User ID to log in to the local database during initialization.
Siebel Remote uses the User ID to access the local database during
initialization and synchronization.
Field Description
To download data in a preferred language for the following dock objects that
contain translation tables, Siebel CRM uses a language preference for the
mobile user:
■ LOV
■ Product
■ Literature
■ Catalog
■ Catalog Category
Although Siebel CRM does not use Siebel Remote to check in and check out projects, you must
register each developer as a Siebel Mobile Web Client. This registration provides Siebel Remote
the information it requires to create a local database file for the developer and to enter
appropriate data in the file.
■ If you enabled Siebel Remote when you installed the Siebel Server, then the Siebel Remote
component group is enabled.
■ If you did not enable Siebel Remote when you installed the Siebel Server, then you must
enable it. For more information, see “Enabling the Siebel Remote Component Group” on
page 55.
a Navigate to the Administration - Server Management screen, and then the Jobs view.
d In the Requested Server field, enter the name of the Siebel Server on which to run the
GenNewDb job.
f In the Name field, click the select button, locate the SQL Anywhere Database job parameter, and
then click OK.
The Siebel Server defaults the Value field to sse_utf8.dbf. To use an encrypted template file,
replace this value with sse_encr.dbf.
g (Optional) To modify the values of other optional parameters, repeat Step e through Step f for
the other parameter.
For more information, see “Parameters for the Generate New Database Server Component” on
page 57.
The Siebel Server generates a new database file, which typically requires a few minutes.
a Click Tasks.
b In the Tasks list, click Query, enter Generate New Database in the Component field, and then
click Go.
c Make sure the value in the State field is Completed.
d If the value in the State field is not Completed, then wait a few minutes, and then repeat Step b.
If necessary, repeat Step d until the value in the State field is Completed.
a Click Jobs.
b In the Jobs list, click New.
c In the Component/Job field, choose Database Extract.
d In the Job Parameters list, add a new parameter for each row in the following table.
Parameter Value
The Job Parameters list is located below the Jobs list and below the Job Detail form. The
encryption parameters allow you to extract a local database without encryption. For more
information, see 475398.1 (Article ID) on My Oracle Support.
Siebel CRM extracts the database for the Siebel Mobile Web Client. This might take a few
minutes
a On the Siebel Server computer, open Windows Explorer, and then navigate to the following
directory:
siebel\docking\lcheng
c Open the outbox directory, and then verify that at least one file exists for each of the following
file extensions:
❏ .uaf
❏ .dat
❏ .toc
For more information, see “How the Database Extract Server Component Extracts Data” on
page 58.
a Navigate to the Administration - Server Configuration screen, Enterprises, and then the
Component Groups view.
b In the Component Groups list, click Query, enter Siebel Remote in the Component Group field,
and then click Go.
c If the value in the Enable state field is not Enabled, then click Enable.
d In the Component Group Assignments list, make sure the Enabled on Server option contains a
check mark.
e If you clicked Enable in Step c, or if you added a check mark in Step d, then log out of the Siebel
application, restart the Siebel Server, and then log back in.
For more information, see “Enabling the Siebel Remote Component Group” on page 55.
a Navigate to the Administration - Server Management screen, and then the Components view.
b In the Components list, click Query, enter Database Extract in the Component field, and then
click Go.
c Make sure the value in the State field is Online.
d If the server component is not online, then use the buttons in the Components list to restart the
server component.
a Navigate to Administration - Server Configuration screen, and then the Enterprises view.
SQL DbfFile The SQL Anywhere database filename to initialize. The default
Anywhere value is sse_utf8.dbf, which is a Unicode file that supports all
Database languages. Alternatively, you can use sse_encr.dbf, which provides
Sybase encryption of the local database template. The SQL
Anywhere Database parameter is a required parameter.
DBA DbaPwd Password for the DBA account. The default value for SQL
Password Anywhere is SQL.
Set the DBA Password parameter to the password for the DBA user
ID in the empty database template file.
New DBA NewDbaPwd The password assigned to the local database administrator
Password account on the Siebel Mobile Web Client.
The Siebel Server uses the parameter value you specify only for
the current run of the Generate New Database component.
If you do not specify a value for the New DBA Password parameter,
then the Siebel Server does the following:
Table Space TSpace Space name in the database template that stores Siebel tables. Do
not specify the Table Space parameter unless you intend to build
a custom empty database file that uses this table space.
Index Space ISpace Space name in the database template that stores Siebel indexes.
Do not specify the Index Space parameter unless you intend to
build a custom empty database file that uses this index space.
Use UseTxnLog Use if you create a new template file. The default value is TRUE.
Transaction
Log File
Use DDL File UseDdlFile Use this parameter if you create a new template file. Note the
following values:
■ FALSE. The Siebel Server reads the schema directly from the
server database. This is the default value.
■ TRUE. The Siebel Server reads the schema from a DDL file.
Interface IFaceTbls Creates interface tables and indexes. The default value is FALSE.
Tables
Warehouse WarehouseTbls Creates warehouse tables and indexes. The default value is FALSE.
Tables
Client Db ClientDbType Sets the client database engine type. The default value is SQL
Type Anywhere.
Each registered Siebel Mobile Web Client requires a separate directory on the Siebel Remote server.
The Database Extract job creates these directories for each Siebel Mobile Web Client. It also places
a directory named txnproc in the docking directory in the Siebel server root directory. Do not modify
the contents of this directory under any circumstances.
The following example displays a portion of the server directory tree after you run Database Extract
for Siebel Mobile Web Clients and developers named LCHENG and SSCOTT.
siebel
docking
lcheng
inbox
outbox
sscott
inbox
outbox
txnproc
Running the Database Extract job creates a database snapshot for a given user, which includes
multiple files. These files contain the data the Siebel CRM requires to initialize the local database for
the user. Siebel CRM places them in the following directory on the development server:
siebsrvr_root\docking\user\outbox
To create a local database and local file system, each mobile user downloads these files.
In this topic you set up Siebel Tools. For more information, see Using Siebel Tools.
C:\ORACLE_HOME\BIN\ENU
Parameter Description
a Establish a LAN connection between the Siebel Remote server and the remote computer.
Because the amount of information that Siebel CRM must download from the Siebel server
to initialize the database for Siebel Mobile Web Client is substantial, it is recommended that
you use a LAN connection rather than a modem or WAN between the server and the Siebel
Mobile Web Client. Alternatively, you can initialize the local database from a CD-ROM or other
media.
b On the local computer that the developer uses, start Siebel Tools.
In the Siebel Tools login dialog box, in the Connect to window, choose Local.
The local Siebel database was not found. Would you like to connect to the
Siebel Remote server to initialize the local database?
c Click Yes.
Siebel Tools connects to the Siebel Remote server and initializes the local database. If
initialization is successful, then Siebel Tools creates a local database file named sse_data.dbf,
and stores it in the following directory:
C:\ORACLE_HOME\local directory
where:
❏ ORACLE_HOME is the root directly of where you installed Siebel Tools. For example,
c:\siebdev.
If you use the Sample database, then it is not necessary to initialize the local database. For
more information, see “Prototyping with the Sample Database” on page 62.
a Choose the Tools menu, and then the Check Out menu item.
b In the Check Out dialog box, choose the name of your development repository from the
Repository list.
d In the Development Tools Options dialog box, make sure the following settings exist:
Option Value
Client Data Source References the local database you initialized in Step 2.
These data sources must match the values displayed in the Control Panel under ODBC Data
Sources.
For more information, see “About the Full Get” on page 62.
a Choose the View menu, Toolbars, and then the Configuration Context menu item.
b In the Target Browser list of the Configuration Context toolbar, choose Target Browser Config.
c In the Target Browser Configuration dialog box, move the target browser to the Selected pane
window, as necessary.
d Click OK.
You use the Target Browser feature to configure your Siebel application for different
browsers, such as Internet Explorer or Firefox. Although you do not configure for different
browsers in this book, Siebel Tools requires that you set a target browser. Otherwise, you can
not open the Web Layout Editor. For more information, see “Opening the Web Layout Editor”
on page 178.
5 Make sure the Application list on the Configuration Context toolbar is set to All Applications.
b Choose the View menu, and then the Options menu item.
d Scroll down through the Object Explorer Hierarchy window until you locate the object you must
display.
e Make sure the tree for the object you must display and all child objects of the tree include a check
mark. For the example in this book, display the following object types:
❏ Bitmap Category
❏ Symbolic String
❏ Workflow Process
If all child objects of an object type are displayed, then Siebel Tools displays a black check
mark with a white background for the tree.
f Click OK.
b In the Projects list, right-click, and then choose the New Record menu item.
Property Value
Locked TRUE
You use this project during development to group object definitions that you create or modify.
This grouping simplifies the task of finding your work and exporting and importing the object
definitions.
a If an HTML editor is not installed on your computer, then install one now.
To allow you to edit HTML code, Siebel Tools uses a third party HTML editor. This HTML editor
is a third-party application that you must install on your computer. Notepad++ is an example
of a third-party HTML editor.
b Choose the View menu, and then the Options menu item.
d In the Executable Full Path window, enter the full path to the executable file for your HTML editor.
9 Choose the View menu, Toolbars, and then make sure the WF/Task Editor Toolbar menu item
contains a check mark.
A full get is equivalent to checking out every project from the Siebel Server, however the projects
are not locked and you cannot modify the object definitions until you check out a project from the
server database or lock a project locally. Having a read-only copy of the full repository on your local
computer allows you to compile a Siebel repository file for your local database. This is required to
test changes locally.
If you use the Sample database, then it is not necessary to perform a full get. For more information,
see “Prototyping with the Sample Database” on page 62.
This chapter describes how to configure the user interface. It includes the following topics:
To begin developing the NREC example, you configure the user interface layer. Completing tasks in
this topic helps you understand the hierarchy of applications, screens, views, and applets, and
provides you with experience in performing configuration tasks.
NREC deployment of the Siebel Partner Portal application does not require every screen that comes
with the predefined product, such as the Service, Solutions, and Campaigns screens. These screens
are not part of the NREC requirements, and NREC does not plan to use them in the future.
Siebel CRM displays screens in the Siebel client as screen tabs and as links on the Site Map. The
following objects control these tabs and links:
To remove these screens in the NREC example, you disable the Page Tab and Screen Menu Item
objects.
As an alternative, you can create a responsibility that does not include any of the views in the screen,
and then assign users to that responsibility. This technique removes the screens from the Siebel
client but leaves the screen objects active in the repository. It allows you to add the screens back in
the Siebel client without having to recompile the repository file. For more information, see “Creating
Responsibilities” on page 38.
The Siebel eChannel application object represents the Partner Portal application. The employee
application is Siebel Partner Manager.
3 Choose the Tools menu, and then the Lock Project menu item.
Siebel Tools locks the Siebel eChannel project, which is the project to which the application
belongs. Siebel Tools displays a pencil icon in the W column. This icon indicates that you can
modify the record.
This step associates the application object with the NREC project, which simplifies how you
manage changes.
5 In the Object Explorer, expand the Application tree, and then click Page Tab.
6 In the Page Tabs list, make sure the check box in the Inactive property contains a check mark
for all page tabs, except for the Opportunities Screen (SCW) page tab.
Siebel Partner Portal uses the SCW designation for many screens, views, applets, and so forth.
Siebel Tools uses red font to indicate inactive Page Tabs.
7 In the Object Explorer, in the Application tree, click Screen Menu Item.
8 In the Screen Menu Items list, enter the following query in the Screen property:
<> "Accounts Screen (SCW)" AND <> "Activities Screen (SCW)" AND <> "Contacts
Screen (SCW)" AND <> "Opportunities Screen (SCW)"
This query returns only those screens that NREC does not require.
9 Make sure the Inactive property contains a check mark for each record that Siebel Tools displays
in the Screen Menu Items list.
11 To test your changes, open the Partner Portal application and make sure Siebel CRM only displays
screen tabs and links for the following screens:
■ Accounts
■ Activities
■ Contacts
■ Opportunities
Each screen in a Siebel application includes a set of views. The screen view object type is a child of
the screen object type, and it creates an association between a view and a screen. Siebel CRM
displays views in the Siebel client below the screen tabs. Some views include data or contain
functionality that NREC does not require. For example, NREC does not require certain views that are
associated with the Opportunities Screen, such as Attachments, Presentations, Proposals, Quotes,
and Sales Teams. To remove these views in the NREC example, you make sure the Inactive property
for each view contains a check mark.
To remove a view from a Siebel application, you can also do one of the following:
■ Create a responsibility for NREC that includes only the views that NREC requires. For more
information, see “Creating Responsibilities” on page 38.
■ Use Siebel Personalization to display or hide views according to user profile attributes. For more
information, see Siebel Personalization Administration Guide.
3 Choose the Tools menu, and then the Lock Project menu item.
5 In the Object Explorer, expand the Screen tree, and then click Screen View.
6 In the Screen Views list, make sure the Inactive property contains a check mark for each of the
following views:
■ In the Screen Views list, make sure the Inactive property contains a check mark for the FS
Activity Part Movements view.
■ In the Screen Views list, make sure the Inactive property contains a check mark for the
Contact Detail - Service Request View (SCW) view.
■ In the Screen Views list, make sure the Inactive property contains a check mark for each of
the following views:
You use the Web Layout Editor to remove fields from an applet. For more information, see “Opening
the Web Layout Editor” on page 178.
2 In the Applets list, locate the Activity Detail Applet (SCW) applet.
3 Choose the Tools menu, and then the Lock Project menu item.
5 Make sure you set up the target browser and the application on the Configuration Content
toolbar.
6 In the Applets list, right-click the Activity Detail Applet (SCW) applet, and then choose the Edit
Web Layout menu item.
a Right-click the label for the Account field, and then choose the Delete menu item.
b Right-click the control for the Account field, and then choose the Delete menu item.
12 Choose the File menu, and then the Save menu item.
13 (Optional) To view an approximation of how Siebel CRM renders the applet in the Siebel client,
right-click anywhere in the Web template, and then choose the Preview menu item. To turn off
the preview, right-click and then choose Preview again.
14 Choose the File menu, and then the Close menu item.
When you remove a field from the Web template, Siebel Tools unbinds the list column or control from
the Web template. The objects remain intact as child objects of the applet, but Siebel CRM does not
render them in the Siebel client.
You must modify these applets to meet the following NREC business requirements:
■ Provide partner agents the ability to track which opportunity is associated with each activity. This
functionality is not available in the predefined application. Therefore, you must add the
Opportunity field to the Activity List Applet and the Activity Detail Applet applet.
Figure 10 illustrates a view mock-up. You will develop a view that resembles this mock-up.
Because the Opportunity field is predefined on the Action business component that these applets
reference, you are only required to add the field to each applet. It is not necessary to add a field to
the business component.
Each object that Siebel CRM displays in the Siebel client includes a display name or caption. Example
objects include controls, fields, views, and screens. The following properties determine the text label
that Siebel CRM displays in the Siebel client:
To determine the text that the property displays, you use the drop-down list for the property to
identify a predefined symbolic string. You do not define text directly in the property.
2 In the Applets list, locate the Activity List Applet (SCW) applet.
3 Choose the Tools menu, and then the Lock Project menu item.
5 Right-click the Activity List Applet (SCW) applet, and then choose the Edit Web Layout menu
item.
7 To make room for the Opportunity field, rearrange predefined controls in the Web template.
To determine the required layout, see Figure 10 on page 69. To move a control, drag and drop it.
8 Drag a Field control from the Palettes window, and drop it in the space you made in Step 7.
9 In the Properties window, set properties for the control you added in Step 8, using values from
the following table.
Property Description
■ In the Current String Value column, click the record that includes only
Opportunity. It is approximately the fourth record in the list. Do not
choose the record that includes a colon, such as Opportunity:.
■ Click Pick.
Field In the Field property, click the arrow, and then choose Opportunity.
Note that the values that Siebel Tools includes in the list of values in the
Field property are fields that are defined on the parent business
component of the Applet. In this example, this is the Action business
component.
10 To approximate how Siebel CRM renders the applet in the Siebel client, right-click anywhere in
the Web template, and then choose the Preview menu item.
You can also export the preview to an HTML file. To do this, choose the File menu, and then the
Export menu item. Choose a file name and location in the Save As dialog.
2 In the Applets list, locate the Activity Detail Applet (SCW) applet.
3 Choose the Tools menu, and then the Lock Project menu item.
5 Right-click the Activity Detail Applet (SCW), and then choose the Edit Web Layout menu item.
6 To make room for the Opportunity field, rearrange controls in the Web template that are already
mapped to the Web template.
To determine the required layout, see Figure 10 on page 69. To move a control, drag and drop it.
7 Drag a Field control from the Palettes window, and drop it in the space you made in Step 6.
8 In the Properties window, set properties for the control you added in Step 7. Use the values
described in Step 9 on page 70, with the following differences:
9 Drag a Label control from the Palettes window, and drop it immediately to the left of the
Opportunity control you added in Step 7.
10 In the Properties window, set properties for the control you added in Step 9. Use the same values
you used for the Opportunity field you defined in Step 8.
11 To approximate how Siebel CRM renders the applet in the Siebel client, right-click anywhere in
the Web template, and then choose the Preview menu item.
12 Choose the File menu, and then the Save menu item.
After you finish configuring screens, views, and applets, you must verify your changes.
2 Open the Siebel client, and then verify that the Activities screen is similar to the following screen
capture. It must include the following:
■ An Opportunity column between the Account and Due columns in the list applet.
This chapter describes how to configure the house and opportunity entities. It includes the following
topics:
4 “Configuring Text for Labels and Other User Interface Elements” on page 78
The NREC House Detail view must display the current list of houses for sale and the details for each
house, such as square feet and number of bedrooms. The product entity in the Siebel data model
meets some of the NREC requirements. However, some information, such as square feet and number
of bedrooms, are not part of the Siebel data model.
You can extend the predefined data model to meet unique business requirements. For example,
assume NREC decides to add columns to the internal products base table to store the following
information for each house:
■ Address
■ City
■ Number of bathrooms
■ Number of bedrooms
■ Price
■ Square feet
■ State
■ ZIP code
Although List Price exists as a predefined field in the Internal Product business component, assume
NREC decides to add a column to the S_PROD_INT table to keep the house attributes stored in one
table.
For more information about extending the data model, see Configuring Siebel Business Applications.
Figure 11 illustrates a mock-up of the House Detail View. This is a new view that uses predefined
applets.
In this topic, you add new columns to the base table and then apply these changes to your local
database.
3 Choose the Tools menu, and then the Lock Project menu item.
■ The Project property is read-only for tables. You cannot change the value in the project
property.
■ The Type property for the S_PROD_INT table is Data (Public). You can only extend a public
table.
a In the Object Explorer, expand the Table tree, and then click Column.
b In the Columns list, add a new column for each row listed in the following table.
X_ADDRESS Varchar 30
X_BATHROOMS Varchar 30
X_BEDROOMS Varchar 30
X_CITY Varchar 30
X_PRICE Varchar 30
X_STATE Varchar 30
X_SQFT Varchar 30
X_ZIP_CODE Varchar 30
The name of an extension column begins with the X_ prefix. For example, X_ADDRESS. The
User Name of an extension column ends with the Ext suffix. For example, X_ADDRESS Ext.
Siebel Tools automatically applies these formats.
d In the Apply Schema dialog box, in the Tables window, choose Current Row.
This setting updates the database to reflect the schema change to the row that is currently
chosen in the Tables list. In this situation, that row is for the S_PROD_INT table only.
f Verify that the information in the ODBC Data Source text box is correct for your environment.
You cannot apply a schema change to any database other than the one to which you are
currently connected. If you are connected to the Sample database, then do the following:
❏ Enter SEAW Samp Db default instance in the ODBC Data Source window.
For more information, see “Prototyping with the Sample Database” on page 62.
g Click Apply.
Siebel Tools applies the schema changes. The new columns you added now physically exist in
your local database. They are available to use in your configuration.
In this topic, you modify properties of the business component to allow the user to update records,
and you add custom business component fields.
2 In the Business Components list, locate the Internal Product business component.
3 Choose the Tools menu, and then the Lock Project menu item.
Property Value
No Delete FALSE
No Insert FALSE
No Merge FALSE
No Update FALSE
a In the Object Explorer, expand the Business Component tree, and then click Field.
b In the Fields list, add a record for each of the rows in the following table.
Name Column
Address X_ADDRESS
Bathrooms X_BATHROOMS
Bedrooms X_BEDROOMS
City X_CITY
Price X_PRICE
State X_STATE
The column property references the columns you created in Step 4 on page 76.
In this topic you configure text for labels and other user interface elements.
The Symbolic Strings project includes predefined symbolic strings. It is recommended that you
create all custom symbolic strings in a custom project. For example, the NREC Configuration
project.
4 In the Symbolic Strings list, create new record using values from the following table.
X_Bathrooms Bathrooms
X_Bedrooms Bedrooms
X_House_ID House ID
For the Project property, use NREC Configuration for all symbolic strings you create. Some of the
customizations you make for the NREC project involve adding new fields or changing the names
of predefined fields. To make these changes, you add these new symbolic strings or edit the
Symbolic String Locale of a predefined string.
As you create each symbolic string Siebel Tools automatically adds a child Symbolic String Locale
object. This object includes ENU as the language, as determined by the language mode in Siebel
Tools, which is set by default to ENU.
Symbolic strings is a model that Siebel CRM uses to keep the text strings separate from the view
definitions. Symbolic strings provide the following advantages:
■ Reduces redundancy because many objects can reference one symbolic string. For example, you
only need to define the term Account Team one time as a symbolic string. When you must use
Account Team on multiple views, you can reference the same string rather than defining a
separate text label for every view and applet that uses Account Team.
■ Results in a more consistent display of objects in the Siebel client. By reusing the same symbolic
string, you avoid having slightly different phrasing on similar views. For example Acct. Team, Act.
Team, Account Group, Client Team, and so forth.
■ Simplifies maintenance because you only have to maintain one string for a given term. If you
must change the name from Account Team to Client Group, you can update the symbolic string.
Siebel CRM displays your update in all views that use this symbolic string. This technique is more
efficient than having to change each view individually.
■ Eliminates duplicated translations of the same word, which simplifies translation. Because you
reuse symbolic strings, the same term does not exist in multiple different objects that must be
translated.
■ Reduces localization cost, time, and inconsistency. If the term Account Team is on five views,
then Siebel CRM must translate it five times. A symbolic string allows Siebel CRM to translate the
term only once. This saves on localization costs and reduces the development time for the
project. The use of symbolic strings also helps prevent inconsistent translations. Although the
NREC example does not cover localization, many custom deployments are localized.
Name The unique name for the symbolic string. Siebel Tools enforces a prefix for
the symbolic string name, such as X_. This helps you distinguish a custom
symbolic string from a predefined Siebel System string, which is prefixed
with SBL_.
The SymStrPrefix parameter in the tools.cfg file determines the value that
Siebel Tools uses for the prefix. For more information, see “Setting Up
Siebel Tools” on page 59.
Current String Value The text that Siebel CRM displays in the Siebel client.
Assume that NREC determines that it is preferable to modify the following two applets rather than
creating new applets:
These applets reference the Internal Product business component and meet most of the NREC
requirements.
3 Choose the Tools menu, and then the Lock Project menu item.
5 In the Object Explorer, expand the Applet tree, expand the List tree, and then click List Column.
6 Change the display name for predefined list columns using values from the following table.
Part # House ID
Name Summary
8 In the Applets list, right-click the Product List Applet, and then choose the Edit Web Layout menu
item.
9 In the Web Layout Editor, in the Controls/Columns window, make sure the mode is set to Base.
10 In the Web template, delete the following columns:
■ Class
■ Compensable
■ Customizable
■ Description
■ Equivalent Product
■ Lead Time
■ Orderable
■ Organization
■ Product Line
■ Revision
■ Serialized
■ Service Product
■ Unit of Measure
11 For each row in the following table, drag a Field control from the Palettes window, and then drop
it in the Web template. Each row represents a separate control. Set properties for each control
using values from the following table.
For more information, see “Adding a Field to a List Applet” on page 70.
12 Choose the File menu, and then the Save menu item.
13 In the Controls/Columns window, set the mode to Edit.
14 Repeat Step 10 through Step 12.
15 In the Controls/Columns window, set the mode to Query.
16 In the Web template, delete the following columns:
■ Class
■ Vendor
17 Save your work, and then close the Web Layout Editor.
3 Choose the Tools menu, and then the Lock Project menu item.
5 In the Object Explorer, expand the Applets tree, and then click Control.
8 In the Web Template, delete the controls that NREC does not require.
9 For each row in the following table, drag a Field control from the Palettes window, and then drop
it in the Web template. Each row represents a separate control. Set properties for each control
using values from the following table.
For more information, see “Adding a Field to a Form Applet” on page 71.
10 Drag the EditRecord control from the Controls/Columns window and drop it in an appropriate
placeholder in the Web template.
11 Save your work, and then close the Web Layout Editor.
You must create a new view to display the Product List and Product Form Applets you modified.
3 In the New View wizard, provide the information that the wizard requests using the information
from the following table.
Property Value
After you click Finish in the last dialog box, Siebel Tools creates the view and related objects.
6 Right-click the NREC House Detail View, and then choose the Edit Web Layout menu item.
7 Right-click anywhere in the Web template, choose Preview, and then examine the layout of the
new view.
8 Choose the File menu, and then the Close menu item.
NOTE: If you create a view that contains special visibility properties, such as Organization, Manager,
or Sales Rep, then set the Visibility Applet Type property of the View object. Do not modify the View
Web Template Item object. The only exception to this rule is the Home Page. To set visibility for the
Home Page, modify the View Web Template Item object.
After you create a view you typically add it to a screen so Siebel CRM can display it in the Siebel
client. For the NREC example, you must create a new screen for houses. This screen groups the views
related to the Houses entity.
Houses
For more information, see “Configuring Text for Labels and Other User Interface Elements” on
page 78.
3 In the Screens list, right-click, and then choose the New Record menu item.
4 In the Screens list, define properties for the new record using values from the following table.
Property Value
5 In the Object Explorer, expand the Screen tree, and then click Screen View.
6 In the Screen Views list, right-click, and then choose the New Record menu item.
7 In the Screen Views list, define properties for the new record using values from the following
table.
Type Aggregate Category Defines a category that Siebel CRM displays in the
Site Map under the Houses link. You group this and
other screen views in this category.
Category NREC Provides a name for the category. When you define
Name a screen view, you choose this category name as
the Parent Category for the screen view.
Viewbar Text More Info Text that Siebel CRM displays in the Show menu.
8 In the Screen Views list, right-click, and then choose the New Record menu item.
9 In the Screen Views list, define properties for the new record using values from the following
table.
View NREC House Detail View Choose the name of associated view.
Viewbar Text More Info Enter the text. Siebel CRM displays this text in the
Show list in the client.
10 In the Screen Views list, locate the NREC category screen view you created in Step 7.
11 Set the Category Default View property to NREC House Detail View.
12 Make the NREC House Detail View the default view for the House screen:
a In the Object Editor, click Screen.
c In the Object Explorer, expand the Application tree, and then click Page Tab.
d In the Page Tabs list, right-click, choose New Record, and then create a new record using values
from the following table.
Screen NREC House Screen The screen object that is associated with the page
tab.
Text Houses Text that Siebel CRM displays in the page tab.
Siebel CRM displays page tabs across the top of the client. It displays Screen Menu Items in
the Site Map.
e In the Object Explorer, in the Application tree, click Screen Menu Item.
f In the Screen Menu Items list, add a new record using values from the following table.
Screen NREC House Screen Screen associated with the Screen Menu Item.
Sequence 15 Determines the sequence in which Siebel CRM
displays the item.
Text Houses Text that Siebel CRM displays as a link on the Site
Map.
In this topic, you compile, register, and test the House Detail View.
The view must resemble Figure 11 on page 75. For more information, see “Verifying Your Changes”
on page 185.
To configure the House Detail - Appraisals View, perform the following tasks:
1 “Examining Business Requirements for the House Detail - Appraisals View” on page 88
7 “Adding the House Detail - Appraisals View to the Houses Screen” on page 95
8 “Compiling, Registering, and Testing the House Detail - Appraisals View” on page 96
The House Appraisals view provides a list of appraisal details for a particular house. These details
include the appraisal date, appraisal value, and the appraiser. A one-to-many relationship exists
between products and appraisals. The products represent houses. A user can associate each house
with many appraisals. For more information, see “Design Strategy for the Data Layer” on page 29.
Because the predefined Siebel data model does not include an appraisal entity, NREC must create a
new business component for appraisals that stores data in a predefined one-to-many extension
table. In the NREC example, you use the S_PROD_INT_XM table, which is a one-to-many extension
table of the S_PROD_INT table. For more information about extension tables, see Configuring Siebel
Business Applications.
NREC determines that it must use a master-detail view to display appraisal data. The view includes
a house record in the top applet and a list of appraisals in the bottom applet. For the top applet, you
can use the Product Form Applet that you configured in “Modifying the Product List Applet” on page 81.
To display the list of appraisals in the bottom applet, you must create a new applet. To view the end
result of this configuration work, see Figure 12 on page 90.
If you use a one-to-many extension table to store data, then you use the TYPE column to group
records. You create a new business component for the entity. This business component must include
the following items:
■ A search specification that finds only those records that contain this unique value
■ You can use a single one-to-many extension table to store data for multiple business
components.
■ If only one business component uses the extension table, then you must use this technique.
For more information, see “Creating the Appraisals Business Component” on page 90.
To display data from a one-to-many extension table, you must define a new business component that
includes the following items:
■ Fields that reference the generic columns in the extension table. Examples of generic columns
include ATTRIB_01, ATTRIB_02, and so forth.
■ NAME. Referenced by the field tracked in the business component. The value in the name
must make the record unique for each parent record.
■ TYPE. Referenced by the Type field. It groups records in the extension table. You set a
default value for the Type field and then configure the business component to search for
those records in the extension table that contains this value.
To satisfy the U1 index of the _XM table, the combination of the NAME, PAR_ROW_ID, and TYPE
columns must be unique.
2 In the General tab of the New Object Wizards dialog box, click BusComp, and then click OK.
3 In the New Business Component dialog box, enter the information from the following table, and
then click Next.
Property Value
Name Appraisals
Table S_PROD_INT_XM
4 In the Single Value Fields dialog box, enter a column and field name for each row from the
following table.
ATTRIB_01 Date
ATTRIB_03 Comments
NAME Name
TYPE Type
After you enter a column and field, click Add, and then add the next column and field. Note the
following:
■ The Date field stores the date on which the appraiser performed the appraisal.
The Business Component Wizard creates the business component according to the information
you entered.
6 In the Business Components list, modify the following property for the Appraisals business
component.
Property Value
This search specification instructs the business component to retrieve only those records in which
the Type field contains the value Appraisals.
a In the Object Explorer, expand the Business Component tree, and then click Field.
b In the Fields list, locate the Type field and then set the following property.
Property Value
This property instructs Siebel CRM to always default the Type field in the Siebel client to
Appraisals.
8 In the Fields list, make sure the Required property contains a check mark for each of the following
fields:
■ Name
■ Par Row Id
■ Type
Because the combination of the NAME, PAR_ROW_ID, and TYPE columns satisfy the U1 index of
the _XM table, you must make sure these fields are required.
The relationship between Houses and Appraisals is one-to-many. For each house, there can be many
appraisals. A link establishes this relationship between the Internal Products parent business
component and the Appraisals child business component.
c In the Object Explorer, expand the Business Component tree, and then click Field.
d In the Fields list, right-click, choose New Record, and then set the following properties.
Property Value
Name Row_Id
Column ROW_ID
Before you can create the link, you must display the Row_Id field in the Internal Products
business component. Siebel CRM uses this field to link with the Par Row Id field in the
Appraisals business component.
2 Create a link:
b In the Links list, right-click, and then choose the New Record menu item.
Property Value
The Source Field establishes the primary key value in the parent table. The Destination Field
establishes the foreign key value in the child table.
A business object groups related business components together, and gathers the link objects that
associate two business components with one another. The Internal Products business object provides
data for the Houses screen. You must associate the Appraisals business component that you create
in “Creating the Appraisals Business Component” on page 90 to the Internal Products business object.
2 In the Business Objects list, locate the Internal Product business object.
3 In the Object Explorer, expand the Business Object tree, and then click Business Object
Component.
4 In the Business Object Components list, enter a new record using values from the following table.
Bus Comp Appraisals This is the business component you created in “Creating
the Appraisals Business Component” on page 90.
To display appraisal data in the Siebel client, you create a new list applet that displays a list of
appraisal records for a single house record.
2 In the Applets tab, click List Applet and then click OK.
3 In the General dialog box, enter values from the following table, and then click Next.
Property Value
4 In the Web Layout - General dialog box, choose the templates to use, using values from the
following table, and then click Next.
Template Value
5 In the Web Layout - Fields dialog box, choose the following fields, and then click Next:
■ Appraisal Value
■ Date
■ Name
6 In the next Web Layout - Fields dialog box, accept the default values and then click Next.
7 In the Finish dialog box, review the information you entered and then click Finish.
The New Applet Wizard creates a new list applet according to the information you entered and
displays the applet in Web Layout Editor.
8 Choose the File menu, and then the Close menu item.
In this topic you create a new view that displays the Product Form applet and the Appraisals List
applet.
2 In the General tab of the New Object Wizards dialog box, click View and then click OK.
3 In the New View dialog box, enter information using values from the following table, and then
click Next.
Property Value
4 In the View Web Layout - Select Template dialog box, choose the View Detail (Parent with
Pointer) Web template, and then click Next.
5 In the Web Layout - Applets dialog box, choose the following applets and then click Next:
6 In the Finish dialog box, review the information you entered and then click Finish.
The New View wizard creates the applet, the necessary supporting objects, and then opens the
applet in the Web Layout Editor.
7 Choose the File menu, and then the Close menu item.
In this topic, you add the House Detail - Appraisals View to the Houses Screen.
Appraisals
For more information, see “Configuring Text for Labels and Other User Interface Elements” on
page 78.
4 In the Object Explorer, expand the Screen tree, and then click Screen View.
5 In the Screen Views list, add a record using values from the following table.
Property Value
In this topic, you compile, register, and test the House Detail - Appraisals view.
The view must resemble Figure 12 on page 90. For more information, see “Verifying Your Changes”
on page 185.
6 “Compiling, Registering, and Testing the Opportunity Details View” on page 103
To allow partner agents to enter and display information about opportunities, NREC uses the
predefined Opportunity Details view in the Partner Portal application. Many of the attributes that
NREC must track for each opportunity are not part of the predefined Siebel data model. For example,
the data model does not include the number of bedrooms or bathrooms in which a potential buyer
might be interested. This information must include the following items:
■ Agent
■ Number of Bathrooms
■ Number of Bedrooms
■ Price Range
■ Square Feet
To add these items, you perform work that is similar to configuring the Houses entity, such as adding
columns to the base table and then modifying the objects at the business logic layer and the user
interface layer.
Figure 13 illustrates a mock-up of the Opportunity Detail View that NREC requires.
The Opportunity Detail view is the default view for the Opportunities screen. It includes the following
applets:
Add columns to the S_OPTY table using values from the following table.
X_AGENT Varchar 50
X_BATHROOMS Varchar 20
X_BEDROOMS Varchar 20
X_PRICE_RANGE Varchar 20
X_SQUARE_FEET Varchar 20
For more information, see “Adding Columns to the Products Table” on page 75.
Add fields to the Opportunity business component using values from the following table.
Name Column
Agent X_AGENT
For more information, see “Configuring the Internal Product Business Component” on page 77.
In this topic, you modify the predefined Opportunity List Applet (SCW). Siebel CRM displays it in the
Opportunity Detail View. As an alternative, you could create new applets. However, modifying
predefined objects is typically a preferable method because it requires less configuration work and
causes fewer problems with future upgrades.
Price Range
For more information, see “Configuring Text for Labels and Other User Interface Elements” on
page 78.
3 In the Applets list, right-click the Opportunity List Applet (SCW), and then choose Edit Web
Layout.
■ Revenue
■ Close Date
■ Lead Quality
■ Probability %
■ Expected Value
■ Status
■ Reason
■ Sales Method
■ Created
■ Description
■ Site
■ Address
■ City
■ State
■ Zip Code
■ Country
■ Sales Team
■ Organization
■ Split Revenue
To choose multiple controls, press and hold down the CTRL, and then choose each field in
succession. For more information, see Figure 13 on page 98.
100 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring the House and Opportunity Entities ■ Process of Configuring the
Opportunity Details View
5 For each row in the following table, drag a Field control from the Palettes window, and then drop
it in the Web template. Each row represents a separate control. Set properties for each control
using values from the following table.
For more information, see “Adding a Field to a List Applet” on page 70 and “About the Show In List
Property” on page 83.
8 Save your work, and then close the Web Layout Editor.
2 In the Applets list, right-click the Opportunity Form Applet (SCW), and then choose the Edit Web
Layout menu item.
■ Description
■ Site
■ Probability %
■ Close
■ Organization
■ Revenue
■ Expected Value
■ Committed
■ Sales Team
4 For each row in the following table, drag a Field control from the Palettes window, and then drop
it in the Web template. Each row represents a separate control. Set properties for each control
using values from the following table.
6 Save your work, and then close the Web Layout Editor.
102 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring the House and Opportunity Entities ■ Process of Configuring the
Opportunity Details View
In this topic, you compile, register, and test the Opportunity Details View.
The view must resemble Figure 13 on page 98. For more information, see “Verifying Your Changes”
on page 185.
104 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
7 Configuring Picklists,
Drilldowns, and MVGs
This chapter describes how to configure picklists, drilldowns, and MVGs. It includes the following
topics:
About Picklists
To standardize data entry and minimize mistakes, NREC must use picklists. To enter information in
a field, the user can choose a value from a picklist rather than typing the information in the field.
Static Picklist
A static picklist is a type of picklist that displays a single-column list of predefined values when the
user clicks the arrow that is located to the right of a field. When the user chooses a value from this
list, Siebel CRM enters the value in the field. A static picklist derives values from a table that a Siebel
administrator maintains. To view an example of a static picklist, do the following:
Dynamic Picklist
A dynamic picklist is a type of picklist that is similar to a static picklist, except it gets list values from
a table that the user maintains. A field that uses a dynamic picklist is typically a joined field that
displays data from a table other than the base table that the business component references. The
opportunity field you display on the applet in “Adding a Field to a List Applet” on page 70 is a joined
field. A dynamic picklist on this field allows the user to use the opportunity name from the
Opportunity table to update the activity. NREC requires a dynamic picklist on the Activity Detail
Applet.
The Pick List Wizard creates the following dynamic picklist and related objects:
■ Pick List. Defines the properties of the picklist, including the originating business component
and the pick business component. The originating business component is the business
component that the dynamic picklist references. The pick business component is the business
component from which Siebel CRM picks values to display to the user. In the NREC example, the
Action business component is the originating business component, and the Opportunity business
component is the pick business component.
■ Pick Map. Child object of a business component field that maps the source field in the pick
business component with the target field in the originating business component.
Constrained Picklist
A constrained picklist is a type of picklist that uses a pick applet to display records that only include
field values that match corresponding field values in the originating business component. For
example, you can constrain the Opportunity pick applet to display only the opportunities for the
account that are associated with the activity.
To constrain a picklist, you create another pick map with the Constrain property set to TRUE. This
pick map defines fields on the originating business component and a field on the pick business
component. If the values in these fields match, then Siebel CRM displays the record in the pick
applet. You can create more than one constrain pick map. A constrain pick map does not copy the
values of the field from the originating business component to the pick business component. It
provides a filter then Siebel CRM uses to determine which records to display in the pick applet.
About Drilldowns
A drilldown is a user interface element that allows the user to click a field and display another view
that includes more information about the field. If a field includes a drilldown, then Siebel CRM
displays the value in the field as a link. To view an example of a drilldown, do the following:
1 In the Siebel client, click the Opportunity screen tab, and then click the Opportunities List link.
■ Dynamic. Can display a view depending on a condition, such as the value of a field.
Dynamic Drilldown
A dynamic drilldown is a type of drilldown that display a view depending on a condition, such as the
value of a field. NREC must configure a dynamic drilldown according to the following condition:
■ If the opportunity sales stage is not Prospecting, Qualification, or Closing, then display the
Opportunity Detail - Contacts view. This is the behavior of the predefined drilldown object.
106 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Picklists, Drilldowns, and MVGs ■ Process of Configuring Picklists,
Drilldowns, and MVGs
■ If the opportunity sales stage is Prospecting, Qualification, or Closing, then display the
Opportunity Detail - Activities view.
A dynamic drilldown requires at least one dynamic drilldown destination object. This object defines
the conditions that determine when Siebel CRM displays a particular drilldown object. It is a child of
the object type known as drilldown object. A drilldown object is a child of an applet.
For a dynamic drilldown, to define each candidate view, you create a drilldown object. To define the
condition for each drilldown object, you define one or more dynamic drilldown destinations. A
dynamic drilldown destination is a child of the drilldown object. If the condition in the dynamic
drilldown destination is false, then Siebel CRM uses the parent drilldown as the default.
In this topic, you create a static picklist for each of the following fields in the Opportunity business
component:
■ Price Range
■ Bathrooms
■ Bedrooms
■ Square Feet
2 In the General tab of the New Object Wizards dialog box, click Pick List, and then click OK.
3 In the Pick List dialog box, enter values from the following table, and then click Next.
Property Value
5 In the Pick List Definition dialog box, choose the Create New Pick List option, and then click Next.
6 In the next Pick List Definition dialog box, enter Price Range for the name, choose the Create
New List Of Values option, and then click Next.
7 In the List of Values dialog box, enter Price for the name.
8 In the Enter a Value window of the List of Values dialog box, enter the following value, and then
click Enter:
■ 0 - 100,000
9 Repeat Step 8 until the Current Values window in the List of Values dialog box contains all of the
following values:
■ 100,000 - 150,000
■ 150,000 - 200,000
■ 200,000 - 250,000
■ 250,000 - 500,000
■ 500,000 - 750,000
■ 750,000 - 1,000,000
10 Click Next.
11 In the Pick List Definition dialog box, do the following:
a Leave the Search Specification property empty.
b Enter a comment in the Comment field that describes the purpose of this picklist.
c Make sure the Bounded Pick List option does not contain a check mark.
❏ Bounded. Restricts the user to only choose a value from the list.
❏ Unbounded. Allows the user to choose a value from the list or type a value in the field.
108 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Picklists, Drilldowns, and MVGs ■ Process of Configuring Picklists,
Drilldowns, and MVGs
12 In the Finish dialog box, review your configuration, and then click Finish.
The wizard does the following:
■ 1
■ 2
■ 3
■ 1
■ 2
■ 3
■ 4
Square Feet Use the following values:
■ Under 1000
■ 1000 to 2000
■ 2000 to 3000
■ 3000 to 4000
■ Over 5000
In this topic, you create a dynamic picklist. For more information, see “Dynamic Picklist” on page 105.
c Right-click the Action business component, and then choose the Lock Project menu item.
You already locked the project that the Opportunity business component references. For more
information, see “Adding Fields to the Opportunity Business Component” on page 99.
2 Choose the File menu, and then the New Object menu item.
3 In the General tab of the New Object Wizards dialog box, click Pick List, and then click OK.
4 In the Pick List dialog box, enter the values from the following table, and then click Next.
Field Opportunity Field for which you are defining the picklist.
5 In the Pick List Type dialog box, choose the Dynamic option, and then click Next.
6 In the Pick List Definition dialog box, choose the Create New Pick List option, and then click Next.
7 In the next Pick List Definition dialog box, enter the values from the following table, and then
click Next.
Field Created Siebel CRM uses the field you specify to sort
records in the pick applet.
Comment Describe this picklist Enter a comment that will help you identify
this picklist in the future.
8 In the Pick List Specifications dialog box, accept the defaults, and then click Next.
9 In the Pick Map dialog box, choose the business component fields:
a In the Select a Field in the Originating Business Component list, choose Opportunity, and then
click Add.
b In the Select a Field in the Pick Business Component list, choose Opportunity, and then click
Add.
c In the Select a Field in the Pick Business Component list, choose Oppty Id, and then click Add.
110 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Picklists, Drilldowns, and MVGs ■ Process of Configuring Picklists,
Drilldowns, and MVGs
d Click Next.
Siebel CRM uses the information you enter to define the pick maps for the picklist. These pick
maps are the mappings between the source field and the target field.
10 In the Finish dialog box, review the information you entered, and then click Finish.
The Pick List wizard creates the picklist, pick maps, and determines if a pick applet already exists
that it can use to display the records. For the NREC example, an Opportunity pick applet is
already defined, so Siebel Tools does not open the New Applet Wizard.
Constraining a Picklist
This task is a step in “Process of Configuring Picklists, Drilldowns, and MVGs” on page 107.
In the NREC example, you constrain the list of records in the Opportunity Pick Applet according to
the Account field. For more information see, “Constrained Picklist” on page 106.
To constrain a picklist
1 In the Object Explorer, click Business Component.
In this example, the Action business component is the originating business component, and the
Opportunity business component is the pick business component.
3 In the Object Explorer, expand the Business Component tree, and then click Field.
At runtime, Siebel CRM calls the pick applet from the Opportunity field.
5 In the Object Explorer, expand the Field tree, and then click Pick Map.
6 In the Pick Maps list, create a new pick map using values from the following table.
Property Value
At run-time, if the value in the Account Name field in the originating business component
matches the Account field in the picklist business component, then Siebel CRM displays the
record in the pick applet.
Enter data for accounts, activities, and opportunities. Choose an activity and then open the
Opportunity picklist. The Pick Opportunity list must display only the opportunities for the chosen
account.
This topic describes how to create a dynamic drilldown. For more information, see “About Drilldowns”
on page 106.
b In the Applets list, locate the Opportunity List Applet (SCW) applet.
This applet contains the link that the user clicks to drill down to a view.
c In the Object Explorer, expand the Applet tree, and then click Drilldown Object.
112 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Picklists, Drilldowns, and MVGs ■ Process of Configuring Picklists,
Drilldowns, and MVGs
d In the Drilldown Objects list, create a new record using values from the following table.
Property Value
Name Activities
If the conditions in the dynamic drilldown destinations are false, then Siebel CRM displays
the view that you define in the View property of the Original drilldown object.
b In the Object Explorer, expand the Drilldown Object tree, and then click Dynamic Drilldown
Destination.
c In the Dynamic Drilldown Destinations list, enter new records using values from the following
table.
Destination
Name Field Value Drilldown Object Sequence
In the Siebel client, navigate to the Opportunity List Applet, and then drill down on the name
field. Siebel CRM must display the Opportunity Detail - Contacts (SCW) view or the Opportunity
Detail - Activities (SCW), depending on the value of the Sales Stage field.
A multi-value group is a user interface element that incorporates child data in an applet. It allows
the user to display multiple child records for a single parent record. Instead of using a master-detail
view, the user clicks the select button in a multi-value field, and then Siebel CRM displays an MVG
applet that includes a set of child records.
For example, to display the contacts associated with each opportunity, NREC must create an MVG on
the Opportunity Form Applet (SCW). To view the results of the configuration work, see Figure 14 on
page 116.
In this example, you use the Multi Value Group Wizard. This wizard automatically creates the
following objects:
■ Multi-Value Link
■ Multi-Value Field
After you use the wizard, you configure Siebel CRM to display the multi-value field in the Siebel
client. The Opportunity Form (SCW) applet already includes a Contact field. You modify it so it
displays the Contact MVG.
a In Siebel Tools, choose the File menu, and then the New Object menu item.
b In the General tab of the New Object Wizards dialog box, click MVG and then click OK.
c In the Multi Value Group dialog box, enter values from the following table, and then click Next.
d In the next Multi Value Group dialog box, enter the values from the following table, and then click
Next.
Multi Value NREC Contact Unique name for the multi value link.
Link Name
e In the Direct Links dialog box, click the Opportunity/Contact link and then click Next.
This dialog box displays every link that describes a master-detail relationship between the
business components you define in Step c and Step d.
f In the Primary ID Field dialog box, accept all default values, and then click Next.
As an option, you can use a primary to improve performance. It reduces the number of SQL
queries that Siebel CRM performs to enter items in the MVG for each record.
g In the Multi Value Link dialog box, accept all default values, and then click Next.
114 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Picklists, Drilldowns, and MVGs ■ Process of Configuring Picklists,
Drilldowns, and MVGs
h In the Multi Value Fields dialog box, use the list to choose a field from the detail business
component that the wizard uses to create the multi-value field in the master business
component:
❏ In the Select a Field in the Destination Business Component of the Multi Value Link list,
choose Last Name.
❏ For the name of the multi value field, enter NREC Contact Last Name.
i In the Finish dialog box, review the information you entered and then click Finish.
The Multi Value Group Wizard creates the objects for the multi-value group. It also searches
the repository for a predefined multi-value group applet that Siebel CRM can use to display
data in the Siebel client. If the wizard does not find an appropriate applet, then Siebel Tools
opens the MVG Applet Wizard so you can define one. In the NREC example, the Contacts MVG
Applet already exists, so Siebel Tools does not open the MVG Applet wizard.
c In the Object Explorer, expand the Applet tree, and then click Control.
Property Value
Figure 14 illustrates how Siebel CRM must display the multi-value field in the applet with a select
button next to the field. When you click the select button, Siebel CRM must display the MVG applet.
Multi-value field MVG Applet
116 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
8 Configuring Logos, Banners, and
Colors
This chapter describes how to configure logos, banners, and colors. It includes the following topics:
Screen tab
Show list
View Tab
Applet menu Button
Banner frame
Screen bar frame
View bar frame
Content frame
118 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Logos, Banners, and Colors ■ Overview of Configuring Logos, Banners, and
Colors
In the directory paths listed in this topic, language_code is the three letter code of the language pack
for the installed software. For example, ENU is the code for English and FRA is the code for French.
Siebel Tools
Siebel Tools uses the files in the Siebel Tools installation directory when it renders objects when you
use the Preview option in the Edit Web Layout window. The following table lists the locations of the
files in the Siebel Tools installation directory:
File Directory
Siebel Server
The Siebel Web engine uses files in the Siebel Server installation directory when it renders objects
in the Siebel client. The following table lists the locations of the files in the Siebel Server installation
directory:
File Directory
File Directory
The typical development process for Siebel Web templates varies in the following ways:
■ Simple Web template modifications. The modifications you make in this chapter are simple.
For simple changes, such as moving the position of a control placeholder, it is easiest to make
the changes to the Web templates in the Siebel Tools directory. Siebel Tools parses the file when
you save it and identifies any format errors that might occur. The Preview functionality displays
the Web template and the objects that are mapped to it as they would be rendered in the Siebel
client. For minor changes, it is easier to debug the files this way rather than starting the Siebel
Mobile Web Client and navigating to the applet where Siebel CRM displays the changes. After you
use Siebel Tools to verify the change, you can manually copy the changed template to the Web
template directory of your Siebel Mobile Web Client, start the application, and do final testing.
■ Complex Web template development. For complex template development, such as creating
a new Web template or significantly modifying the layout of a predefined template, you must
create a prototype in HTML, translate the various parts of the template to SWE, and then debug.
For more information, see Siebel Developer’s Reference.
1 “Examining Business Requirements for Configuring Logos, Banners, and Colors” on page 121
4 “Modifying the Screen Bar and View Bar Colors” on page 125
120 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Logos, Banners, and Colors ■ Process of Configuring Logos, Banners, and
Colors
For more information about content in these topics, see Configuring Siebel Business Applications.
Figure 18 includes a screen capture of a banner and colors you must modify to meet NREC
requirements.
Figure 18. Screen Capture of Banner and Colors Modified for NREC
The banner is the top frame in the application frame set. It contains the application banner and the
Siebel logo. The banner frame includes a Siebel Web template file that you can modify.
Figure 19 includes a screen capture that includes the custom NREC logo.
For example:
■ C:\Siebel\8.1\Client_1\PUBLIC\enu\IMAGES
■ C:\Siebel\8.1\Tools_1\PUBLIC\ENU\IMAGES
122 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Logos, Banners, and Colors ■ Process of Configuring Logos, Banners, and
Colors
The dCCFrameBanner.swt file is located in Siebel Tools Web template directory. For example,
C:\Siebel\8.1\Tools_1\WEBTEMPL. This file is the banner frame template for a Siebel application.
4 In Siebel Tools, make sure you set up the default HTML editor and display the Bitmap Category
object type.
a Choose the View menu, Windows, and then the Web Templates Window menu item.
c Siebel Tools displays the HTML contents of the dCCFrameBanner Web template in the Web
Template File window.
d Right-click in the Web Template File window, and then choose the Edit Template menu item.
Siebel Tools opens your HTML editor and displays the code of the dCCFrameBanner.swt file.
To use this feature, you must set up the default HTML editor. For more information, see
“Setting Up Siebel Tools” on page 59.
h Close the Web Template File window and the Web Template Explorer window.
d In the Bitmap Categories list, query the Name property for HTML Control Icons.
e In Object Explorer, expand the Bitmap Category tree, and then click Bitmap.
g Right-click the BANNER_LOGO bitmap, choose Copy, and then set properties for the new record
using values from the following table.
Property Value
Name NEW_BANNER_LOGO
Filename new_banner_logo.gif
7 Copy the dCCFrameBanner.swt file from the Web templates directory for Siebel Tools to the Web
templates directory for the Siebel client.
a Choose the Tools menu, and then the Internet Options menu item.
c In the Delete Browsing History dialog box, click Delete Files, and then click Close.
10 Make sure the banner resembles the screen capture in Figure 19 on page 122.
To modify color and other styles in a Siebel Web template, you use a cascading style sheet. To modify
the color of the banner frame, you change code in the cascading style sheet for your Siebel
application.
The dCCmain.css file is the cascading style sheet for Siebel Customer and Partner Applications.
The main.css file is the cascading style sheet for Employee applications.
.banner,
TD.banner TD A,
TD.banner TD A:visited,
TD.banner TD A:hover {background-color: #afc2ea; color: #003399; text-
decoration:none; font-weight:bold;}
4 Change the value of the background-color attribute and the color property. Use the following
code:
124 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Logos, Banners, and Colors ■ Process of Configuring Logos, Banners, and
Colors
.banner,
TD.banner TD A,
TD.banner TD A:visited,
TD.banner TD A:hover {background-color: #BDD3FF; color: #333399; text-
decoration:none; font-weight:bold;}
.applicationMenu {background:#123783;}
6 Change the value of the background attribute. Use the following code:
.applicationMenu {background:#BDD3FF;}
8 Clear your the browser cache and then open the Siebel client.
9 Verify that Siebel CRM displays the banner frame with the new background color, as illustrated
in the following screen capture:
NREC requires that the background color for the screen bar and view bar match the background color
of the other user interface elements of the banner frame.
The screenbar and viewbar frames contain the screen tabs and show list. For example, see Figure 16
on page 118. These frames contain color elements that the cascading style sheet controls.
The dccscrnbar_back.gif image file controls the background color of the screenbar frame in a
customer application or partner application. This image is a tiling background that Siebel CRM uses
to make sure that the background displays appropriately in Internet Explorer and other browsers.
Note that you can also modify the background color of a view frame. You modify the bgcolor tag in
the following files:
.tier2Back {background-color:#BDD3FF; }
TD.tier2Rule {background-color:#003366; }
TR.tier2On, TD.tier2On,
TD.tier2OnNormal
font-size: 9pt;
color:#000000;
text-decoration:none;
background-color: #BDD3FF;
font-weight:bold;}
2 Save the dCCmain.css file, clear the browser cache, and then open the Siebel client.
3 Verify that Siebel CRM displays the background color on the screen bar and view bar, as
illustrated in the following screen capture:
■ Parent
■ Child
■ Grandchild
The applet styles define the color of the tab that Siebel CRM displays at the top of the applet and the
color of the control bar where Siebel CRM displays applet menus and buttons. The cascading style
sheet includes the following items for each applet style:
Attributes define each applet style. To modify each applet style, you modify the definitions for the
following items:
■ AppletTitle. The area where Siebel CRM displays the applet title.
The modification you make for a standard interactivity applet is different from the modification you
make for a high interactivity applet.
126 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Logos, Banners, and Colors ■ Process of Configuring Logos, Banners, and
Colors
■ AppletStyle1 TD.AppletTitle A
2 Locate the following selectors and then modify the attributes using values from the following
table.
■ AppletStyle3 .AppletTitle
■ AppletStyle3 TD.AppletTitle A
3 Locate the following selectors and modify the attributes using values from the following table.
■ AppletStyle7 TD.AppletTitle A
5 Clear the browser cache and then open the Siebel client.
6 Make sure Siebel CRM displays the custom background color on the parent and child applets.
128 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
9 Configuring Siebel CRM to Use
Data From an External Data
Source
This chapter describes how to configure Siebel CRM to use data from an external data source. It
includes the following topic:
■ Process of Configuring Siebel CRM to Use Data From an External Data Source on page 129
To configure Siebel CRM to use data from an external data source, perform the following tasks:
1 “Examining Business Requirements for Using Data from an External Data Source” on page 129
8 “Documenting Your Configuration in an Entity Relationship Diagram” on page 138. For more
information about the content described in this chapter, see Overview: Siebel Enterprise
Application Integration and Integration Platform Technologies: Siebel Enterprise Application
Integration.
Assume NREC stores house renovation data in a comma-delimited text file that a third-party vendor
provides to NREC. NREC must retrieve the data from this file and display it in the Partner Portal
application. Partner agents and NREC employees can use it to display a history of renovation
information for each house stored in the NREC Siebel database. The text file includes the following
information:
Figure 20 includes a screen capture that illustrates how Siebel CRM must display the data from the
external file in the Siebel client. It display this data in a typical master-detail view that includes a
house record in the top applet and a list of renovations in the bottom applet.
■ Legacy application
■ Transaction service
■ Web site
The example in this chapter uses a simple file as an external data source instead of an external
database or external application.
130 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Siebel CRM to Use Data From an External Data Source ■ Process of
Configuring Siebel CRM to Use Data From an External Data Source
A business service is an object that defines a set of functionality. For example, a business service
can perform certain tasks, such as moving data or converting data formats. Although a business
service is stored in the Siebel repository, it does not interact with tables and data. Instead, it
interacts with other objects.
A virtual business component uses a business service to help it manipulate external data. The
business service defines the methods, properties, and states that determine the behavior of the
virtual business components.
You can use a predefined business service, such as the XML Gateway, or you can create your own
custom business service. You create virtual business components and business services in Siebel
Tools. In the NREC example, you use Siebel Tools to create a business service that reads data from
and writes data to a comma-delimited text file.
For more information, see Integration Platform Technologies: Siebel Enterprise Application
Integration.
For more information, see “Configuring Text for Labels and Other User Interface Elements” on
page 78.
3 In the Business Services list, create a new record using values from the following table.
Property Value
4 In the Business Services list, right-click the NREC Text File Handler business service, and then
choose the Edit Server Scripts menu item.
5 In the Scripting Language dialog box, choose Visual Basic and then click OK.
b In the text editor, enter the code for the declaration custom function.
For more information, see “Code for the Declaration Function” on page 197.
c Choose the File menu, and then the Save menu item.
d Repeat Step a through Step c for each of the following custom functions:
❏ Pal_Init. For more information, see “Code for the Pal_Init Function” on page 197.
❏ Pal_Insert. For more information, see “Code for the Pal_Insert Function” on page 198.
❏ Pal_PreInsert. For more information, see “Code for the Pal_PreInsert Function” on
page 199.
❏ Pal_Query. For more information, see “Code for the Pal_Query Function” on page 200.
❏ After you enter these functions, the script editor must resemble the following screen
capture:
b In the text editor, delete all existing code, and then enter the code for the
Service_PreInvokeMethod custom function.
For more information, see “Code for the Service Function” on page 203.
c Choose the File menu, and then the Save menu item.
Method Description
Init Pal_Init creates the initial link between the columns in the VBC and
the columns in the external data source.
PreInsert Pal_PreInsert provides default values for new rows. In the NREC
example, there are no default values.
Query Pal_Query queries the external data source and returns rows that
match a given value. In the NREC example, the method queries the
text file and returns rows that include a matching value for the
current House_ID field.
132 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Siebel CRM to Use Data From an External Data Source ■ Process of
Configuring Siebel CRM to Use Data From an External Data Source
Method Description
If you create a virtual business component you do not use the Business Component Wizard for the
following reasons:
■ The wizard forces you to choose a table that the business component references.
b In the Business Components list, right-click and then choose the New Record menu item.
Property Value
Class CSSBCVExtern
a In the Object Explorer, expand the Business Components tree, and then click Single Value Field.
b In the Single Value Fields list, create a new record for each row in the following table.
a In the Object Explorer, in the Business Component tree, click Business Component User Prop.
b Add a new business component user property for each row in the following table.
Name Value
Service Parameters
The service parameters define the parameters that Siebel CRM sends to the business service during
initialization. The script for the NREC example uses the following format:
path;num_columns;column_names
where:
■ path is the full path to the file name including the file name
■ column_names is a list of column names. You must use a comma to separate each column
name.
Service parameters vary depending on the business service you use. In this example, you define the
parameters in the script for the business service.
The relationship between houses and house renovations is one-to-many. A user can add many
renovations for one house. NREC uses the Internal Product business component to store houses. To
create the parent-child relationship, you must add a link between the Internal Product business
component and the NREC Renovations VBC. For more information, see “Design Strategy for the Data
Layer” on page 29.
134 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Siebel CRM to Use Data From an External Data Source ■ Process of
Configuring Siebel CRM to Use Data From an External Data Source
2 In the Links list, add a new record using values from the following table.
Property Value
The source field is the unique ID on the parent record. This property is typically Row Id. In this
example, the user enters the unique field.
The destination field is the column in the child record that stores the parent ID.
After you define a link between the Internal Product business component and the NREC Renovations
VBC, you can add the Renovation VBC to the Internal Product business object.
2 In the Business Objects list, locate the Internal Product business object.
3 In the Object Explorer, expand the Business Object tree, and then click Business Object
Component.
4 In the Business Object Components list, add a new record using values from the following table.
Property Value
NREC requires a typical master-detail view that displays the House Form applet on top and the
Renovations list applet on the bottom. To display the Renovations list applet you add it to a view.
a In Siebel Tools, choose the File menu, and then the New Object menu item.
b In the New Object Wizards dialog box, click the Applets tab, click List Applet, and then click OK.
Property Value
■ House_ID
■ Date
■ Description
Controls Accept all default values.
a Choose the File menu, and then the New Object menu item.
b In the New Objects Wizard dialog box, click View, and then click OK.
Property Value
Project NREC Configuration
Title Renovations
136 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Siebel CRM to Use Data From an External Data Source ■ Process of
Configuring Siebel CRM to Use Data From an External Data Source
Property Value
Renovations
For more information, see “Configuring Text for Labels and Other User Interface Elements” on
page 78.
d In the Object Explorer, expand the Screen tree, and then click Screen View.
e In the Screen Views list, add a new record using values from the following table.
Property Value
Sequence 30
It is recommended that you document in an entity relationship diagram (ERD) the following
configuration work:
■ Changes to data objects. For more information, see Chapter 6, “Configuring the House and
Opportunity Entities.”
Figure 7 on page 29 illustrates a prototype of the relationships between NREC data objects. You can
create an Entity Relationship Diagram in Siebel Tools.
Property Value
Status Scope
4 In the Entity Relationship Diagrams list, right-click the NREC House ERD, and then choose the
Edit Entity Relationship Diagram menu item.
5 In the Entity Relationship Designer, drag shapes from the palette and drop them on the canvas
until your diagram resembles Figure 7 on page 29.
138 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Siebel CRM to Use Data From an External Data Source ■ Process of
Configuring Siebel CRM to Use Data From an External Data Source
6 Click an entity, and then use the Properties window to set properties for the entity using values
from the following table. Each row in this table represents values for a single entity. Repeat this
step until you define these properties for all entities.
Appraisals Appraisals
Contact Contact
7 Add relationship lines between all entities until the diagram resembles Figure 7 on page 29.
Make sure you attach all endpoints. If you attach an end point, then the Entity Relationship
Designer changes the end point from white to red.
a Right-click a relationship line, and then choose the Bind Entity Relation menu item.
b In the Bind Relationships dialog box, choose a relationship and then click OK.
❏ Lists multiple relationships, then examine the business components and tables listed, and
then choose the most appropriate pairing.
❏ Lists no relationships, then there is no link or join between the business components.
If you bind a relationship, then Siebel Tools increases the thickness of the relationship line.
Figure 21. NREC Entity Relationship Diagram in the Entity Relationship Designer
140 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
10 Assigning Objects and
Automating Business Processes
This chapter describes how to configure Siebel CRM to assign objects and automate business
processes. It includes the following topics:
In this topic, you create an assignment rule that assigns opportunities to agents depending on the
ZIP code. When a user creates a new opportunity, NREC requires Siebel CRM to automatically assign
the opportunity to an NREC agent or a partner agent according to the ZIP code. Siebel CRM must
assign the opportunity to the real estate agent whose sales region includes the ZIP code that is
specified in the Zip Code field.
Siebel Assignment Manager is a Siebel CRM feature that allows you to assign the most qualified
person to a specific task. To accomplish this, Assignment Manager matches candidates to assignment
objects. To assign the most qualified candidate to each object, Assignment Manager applies
assignment rules that you define. You can specify how Siebel CRM uses Assignment Manager to
evaluate a record. You can configure Assignment Manager to make assignments in the following
ways:
■ Periodically in batches
For more information, see “Logging In as the Siebel Administrator” on page 183.
b In the Assignment Rules List, click Menu, and then choose the Columns Displayed menu item.
c In the Columns Displayed dialog box, make sure the Assignee Filter column is included in the
Selected Columns window, and then click Save.
d In the Assignment Rules List, click New.
Object Opportunity To choose the object Siebel CRM must assign, do the
following:
■ Click OK.
Minimum 0 Although NREC does not require scoring, you must enter a
Score value.
Assignee All Above Choose the filter from the list. This filter causes Siebel CRM
Filter Minimum to assign all assignees who possess an assignment score
that is greater than or equal to the minimum score of the
assignment rule.
a In the Assignment Rules List, in the Name field, click San Francisco.
142 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Assigning Objects and Automating Business Processes ■ Customizing How Siebel CRM
Assigns Objects
b In the Criteria list, click New, and then define fields values from the following table.
Comparison Compare to Choose the method that Siebel CRM uses to match objects
Method Object to candidates. For example, Compare to Object compares
the criteria value to an object attribute.
Inclusion Include Choose the method that Siebel CRM uses to match criteria
values and candidates.
Siebel CRM uses the criteria to determine which candidates qualify to receive the assignment.
In the NREC example, the criteria compares the ZIP code of an opportunity to the ZIP codes
that constitute the region that the agent covers.
c In the Values list, add a new record for each ZIP code included in this assignment rule using
values from the following table.
Siebel CRM displays the Values list below the Criteria list. In this list you specify values or a
range of values for a given criterion. Siebel CRM uses these criteria values for comparison.
In the NREC example, the ZIP codes that are in a particular territory are the values for the
assignment criteria.
c In the Add Positions dialog box, in the Find window, choose Position.
d In the Starting With window, enter NREC Sales Agent, click Go, and then click OK.
Each rule must include a list of positions, employees, or organizations that specifies the
candidates for the assignment. In the NREC example, the position determines the
assignment. Each assignment rule is associated with a position at NREC or at the partner real
estate agency. For example, the positions at the San Francisco Real Estate Agency are
associated to the assignment rule for the Peninsula and East Bay territories.
4 To add rules for the Peninsula and East Bay territories, repeat Step 1 through Step 3 for each of
the following assignment rules.
■ 94301
■ 94401
■ 94010
■ 94701
■ 94602
■ 94580
NOTE: This step releases all assignment rules. Do not release assignment rules while associated
server tasks are running.
144 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Assigning Objects and Automating Business Processes ■ Process of Automating a
Business Process
In the NREC example, if an opportunity is assigned to an agent, then Siebel CRM must send an email
notification to a partner real estate agent. To implement this functionality, NREC uses Siebel
Worklfow, which is a customizable business application that allows you to manage and enforce
business processes, such as meeting response time objectives, creating review policies, or
monitoring service requests or opportunities over time. Siebel Worklfow can model the same
business processes that an organization uses in their sales, marketing, and service departments. You
can use Siebel Worklfow to automatically enforce business policies and procedures. In the NREC
example, Siebel Worklfow uses the following objects:
■ Workflow process. An object type that defines the steps that are required to send the email.
■ Workflow policy. An object type that starts the workflow process if the trigger detects that an
opportunity is assigned.
This topic describes an overview of how to create a workflow process. For more information, see
Siebel Business Process Framework: Workflow Guide.
To use Siebel Workflow to send an email message, you must configure the email communications
application and the Siebel Communications Server.
■ Configure and administer the Siebel Communications Server components you require, including
the Communications Outbound Manager server component.
■ Configure communications drivers and profiles that the Siebel Communications Server uses.
■ Configure recipient groups for your communications, according to Siebel business objects and
business components.
To send an email message from a Siebel application, Siebel CRM uses the following types of email
templates:
■ Simple. Performs simple commands and sends replies in a Siebel eMail Response. Examples of
simple commands include Send Email, Send Fax, Send Wireless Message, Send Page, and so
forth.
■ Advanced. Performs an outbound communication request, such as the request that a workflow
process starts.
For more information, see “Logging In as the Siebel Administrator” on page 183.
2 In the Templates list, enter a new record using values from the following table.
Field Value
146 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Assigning Objects and Automating Business Processes ■ Process of Automating a
Business Process
4 In the Advanced form, click New, and then enter a new record using values from the following
table.
Delivery Default SMTP Profile Created for the communication drivers for the
Profile SMTP/POP3 servers for an email template. The
profile must exist before you create the template.
To define the communications sender, use the From
Address override parameter in this profile.
Recipient Opportunity Sales Team The recipient group you specify here only
Group Members determines which substitution fields are available
for the template text. Siebel CRM determines the
actual recipients in the context in which it uses the
template.
Subject New Opportunity in Default subject line for the email. The subject line
Queue can also include substitution fields.
Public Contains a check mark Determines if the template is available to all users.
Template Text Dear [Full Name], Text that Siebel CRM displays in the body of the
template. The term in brackets is a substitution.
A new opportunity is
assigned to you.
Thank you,
NREC
A workflow process defines the series of actions that must occur in the workflow. It includes one or
more process steps, such as a start step, decision point, business service step, subprocess step, and
so forth. The NREC example uses the following steps:
■ Send Email business service. A predefined business service that sends an email.
■ Display the Workflow Process object type and all child object types of the Workflow Process.
3 In the Workflow Processes list, add a new record using values from the following table.
Property Value
4 In the Workflow Processes list, right-click the NREC New Opportunity Notification workflow
process, and then choose the Edit Workflow Process menu item.
5 Drag steps and connectors from the palette to the canvas until your workflow resembles the
workflow in the following diagram.
NOTE: A connector end point that is colored white is not connected correctly to a step. A red end
point indicates that the connector is correctly connected. Make sure every end of every connector
in the workflow process is colored red.
6 Right-click the business service step, and then choose the View Properties Window menu item.
7 In the Properties window, set the properties using values from the following table.
Property Value
Note that you must choose the business service before you can choose the business service
method.
8 With the Send Email business service step still chosen, right-click anywhere in the Multi Value
Property Window, and then choose the New Record menu item.
148 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Assigning Objects and Automating Business Processes ■ Process of Automating a
Business Process
For more information, see Siebel Business Process Framework: Workflow Guide.
10 Repeat Step 8 and Step 9 for each input argument listed in the following table.
11 Choose the File menu, and then the Save menu item.
12 In the WF/Task Editor Toolbar, click the Publish/Activate icon.
In the Worklfow Processes list, Siebel Tools changes the Status property for the workflow to
Completed.
For more information, see “Logging In as the Siebel Administrator” on page 183.
c In the Name field, enter the following text, and then click Go:
d Click Activate.
e Click the Active Workflow Process tab.
g In the Name field, enter the following text, and then click Go:
Siebel CRM must display the record with a Deployment Status of Active.
In this topic you create a workflow policy that calls the workflow process. A workflow policy includes
a condition and an action. In this example, the condition is met when Assignment Manager assigns
an opportunity. The action calls the workflow process you defined in “Creating and Deploying a
Workflow Process” on page 147.
a Navigate to the Administration - Business Process screen, and then the Actions view.
b In the Actions list, add a new record using values from the following table.
Program Run Workflow Process Choose this value to specify that the policy
calls a workflow process.
Workflow Object Opportunity Choose this value to specify the object that is
associated with the workflow policy.
c In the Arguments list, click New, and then add a new record using values from the following
table.
Value NREC New This value is the name of the workflow process you
Opportunity created in “Creating and Deploying a Workflow Process” on
Notification page 147.
b In the Policies list, click New, and then enter a new record using values from the following table.
Name NREC You can use any name that is meaningful to you.
Opportunity
Notification
150 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Assigning Objects and Automating Business Processes ■ Process of Automating a
Business Process
Policy Group NREC Because this group does not currently exist, do the
following work to create it:
c In the Conditions list, click New, and then enter the condition using values from the following
table.
Position ID IS ADDED
d In the Actions list, enter the record using values from the following table.
Action NREC Opportunity This is the name of the Workflow Policy Action you
Notification created in Step 1.
To create a database trigger, you use the Generate Trigger (GenTrig) server component on the Siebel
Server. Siebel Workflow uses a database trigger to identify the records that might match a policy
condition. You must run the Generate Triggers server component any time you create, modify, or
delete a workflow policy.
You can run the Generate Triggers server component from the Server Manager or from the command
line interface. This topic describes how to use the Server Manager. For information about using the
command line interface, see Siebel System Administration Guide.
5 In the Starting With window, enter the following text, and then click Go:
Generate Triggers
6 In the Job Parameters list, create a new parameter for each row in the following table.
Trigger File Name trigger.sql This file name identifies the SQL script that the Siebel
Server must run. The server creates this file in the
siebsrvr_root directory.
EXEC TRUE If you set this parameter to TRUE, then Siebel CRM
automatically runs the SQL script.
Table Owner Your password If you use an Oracle database or an IBM DB2 database,
Password then enter the password for the table owner.
8 To view updates that the Siebel Server displays in the Status field, click Query, and then click Go.
Upon completion, the Siebel Server displays Success or Error in the Status field.
In this topic, you define and start a separate Workflow Monitor Agent task for Assignment Manager,
and another task for Workflow policies.
152 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Assigning Objects and Automating Business Processes ■ Filtering Records According
to a User Profile
3 In the Component Definitions list, click New, and then create a new record using values from the
following table.
Field Value
Alias NRECWorkMon
a In the Component Parameters list, query the Parameter field for Group Name, and then set it
using values from the following table.
Parameter Value
Group Name Enter the name of the workflow policy group for
which this component handles requests.
b In the Component Parameters list, click Advanced, and then set the value for the Default Tasks
parameter using values from the following table.
Parameter Value
Default Tasks 1
This step sets the component to start when the Siebel server starts, and to stop when the
Siebel server shuts down.
c In the Component Definitions list, click Menu, and then choose the Enable Component Definition
menu item.
Siebel Personalization is a solution that allows you to filter content in an applet that Siebel CRM
displays for a specific user according to the requirements of a preference or profile of the user. This
topic describes an overview of how to configure Siebel Personalization. For more information, see
Siebel Personalization Administration Guide.
NREC must filter the list of houses that are for sale according to the ZIP code in the profile of the
partner agent. If the agent views the list of houses for sale, then Siebel CRM must display only
the houses for sale that are located in the same ZIP codes that constitute the sales region to
which the agent is assigned. In this example, filtering must occur in the Product Form Applet and
the Product List Applet.
For more information, see “Logging In as the Siebel Administrator” on page 183.
b In the Rule Sets list, click New, and then add a new record using values from the following table.
Field Value
A rule set is a collection of the rules that define how Siebel CRM displays content. For the
NREC example, you create one rule set to contain these rules.
b In the Applets list, click New, and then create a new record using values from the following table.
Field Value
Name Product List Applet
c In the Rule Sets list, add a new record using values from the following table.
Name NREC House This is the rule set you created in Step 2.
Filter
Sequence 1 Choose the order in which Siebel CRM must evaluate the
rule sets.
154 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Assigning Objects and Automating Business Processes ■ Filtering Records According
to a User Profile
Start Date Leave empty The date when Siebel CRM must start to evaluate the
conditional expression. If Start Date is empty, then Siebel
CRM evaluates the conditional expression continuously or
until the End Date occurs.
End Date Leave empty The date when Siebel CRM must stop evaluating the
conditional expression. If End Date is empty, then Siebel
CRM evaluates the conditional expression continuously
after the Start Date occurs.
If Start and End Date are empty, then Siebel CRM always
evaluates the conditional expression.
d To associate the Product Form Applet with the NREC House Filter, repeat Step a through Step c
with the following differences:
❏ In the Applets list, create the Product Form Applet instead of the Product List Applet.
b In the Rule Sets list, choose the NREC House Filter rule set that you created in Step 2.
c In the Rules list, click New, and then enter a new record using values from the following table.
Name NREC House Filter Enter a name that describes the purpose
of the rule.
Active Contains a check mark. Make sure the Active field contains a
check mark.
d In the More Info form, add information using values from the following table.
b In the Test Mode form, enter a Primary User Login and Primary User Password.
This is the user name and password of the user you must use to test the personalization
rules. For example, to test the NREC personalization rule, use the SADMIN user and SADMIN
password.
c In the Test Application field, enter the command string for the Siebel Mobile Web Client.
For more information, see “Entering the Command String to Test a Personalization Rule” on
page 157.
d Click Load.
Siebel CRM loads the persistent user profile attributes of the primary user in the Primary User
Attributes list with an Me prefix. It uses the following values in the Source field:
e In the Primary User Attribute list, query the Name field for Me.Org.Postal Code, and then enter
a value in the Value field.
Siebel CRM opens a new instance of the Siebel Partner Portal application. If you use the
Siebel Web Client to perform the test, then Siebel CRM displays the Test Mode dialog box that
includes instructions about how to start a new instance of the application.
g Navigate to the House Detail view, and then enter several house records.
Make sure you use several different ZIP codes for the different records you enter. For more
information, see “Process of Configuring the House Detail View” on page 73.
h Make sure Siebel CRM only displays records that include a ZIP code value of 94121.
■ Business Service
■ Expression
■ Invoke Method
To define the parameters that control this content, an expression rule uses Siebel Query Language.
For this example, the following expression specifies that when Siebel CRM displays records from the
Internal Product business component, it must display only those records whose value in the ZIP Code
field matches the value in the Postal Code for the user:
156 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Assigning Objects and Automating Business Processes ■ Filtering Records According
to a User Profile
C:\ORACLE_HOME\BIN\siebel.exe /c “C:\ORACLE_HOME\bin\ENU\config_file.cfg”/d
data_source
where:
■ ORACLE_HOME is the root directly of where you installed the Siebel client
■ config_file is the application configuration file. for example, uagent.cfg for Siebel Call Center
or siebel.cfg for Siebel Sales.
■ data_source is the database to which to connect. You must use one of the following values:
❏ Local
❏ Sample
❏ ServerDataSrc
For example:
C:\Siebel\8.1\client\BIN\siebel.exe /c "C:\Siebel\8.1\client\BIN\ENU\scw.cfg"/d
Sample
You can also enter the URL for a Siebel Web Client. For example, you can enter the following URL:
http://computer_name/eChannel
158 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
11 Configuring Siebel Remote
This chapter describes how to configure Siebel Remote. It includes the following topics:
A remote client can download a portion of the Siebel database and the Siebel File System to a laptop.
The User can access their data locally without a connection to the Database Server, Siebel Server, or
file system.
Between synchronization sessions, the Siebel Remote server prepares transactions that mobile and
connected users apply to CRM data. Siebel Server components write the transactions to a separate
directory for each mobile user. During the next synchronization session, Siebel CRM downloads
transactions and items from the file system. Items from the file system include updated, published,
or requested marketing literature, correspondence templates, and other types of file attachments.
For details about content in this topic, see Siebel Remote and Replication Manager Administration
Guide.
■ Runs Siebel Remote server components, such as the transaction processor, transaction router,
and other server components.
■ Provides an interim storage area for data that Siebel Remote requires to synchronize mobile
databases with the Siebel database server.
Setting up a Siebel Mobile Web Client involves certain tasks for the Siebel Remote server and the
Siebel Mobile Web Client. You must repeat each of these steps for each mobile client.
160 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Siebel Remote ■ Process of Configuring Siebel Remote
Because NREC does not use authentication for the Siebel Mobile Web Client, you do not create
this account or password for the NREC example. Not using accounts or passwords is the easiest
and most popular configuration. It is the default configuration.
2 Install and configure the hardware and software for the Siebel Mobile Web Client.
Depending on your implementation, this work might include the following items:
■ Install the necessary hardware and software on the Siebel Mobile Web Client so the Siebel
Mobile Web Client can exchange files with the Siebel Remote server. This work might include
choosing communication settings and installing networking cards, modems, and software.
For more information, see Siebel Installation Guide for Microsoft Windows.
To identify the location of the Siebel Server, the Siebel Remote client reads parameters in the
siebel.cfg configuration file. Before you use Siebel Remote, you must set the values for the
configuration parameters. The Siebel installation utility creates a siebel.cfg file in the client BIN
directory with default values for each configuration parameter.
NREC uses the default settings for the Siebel Remote parameters in the client configuration file
that are established during installation. For the NREC example, you do not set any remote
preferences.
To register a Siebel Mobile Web Client and extract and initialize the database
1 Make sure you set up Dana Castro as an employee.
For more information, see “Creating Positions and Position Skills” on page 44.
2 Navigate to the Administration - Application screen, and then the Responsibilities view.
3 In the Views list of the Real Estate Agent responsibility, add the Client Status view.
4 In the Responsibilities list, click Query, enter the following text in the Responsibility field, and
then click Go.
Real Estate Agent
5 In the Views list, click Add, add then add a new record using values from the following table.
Field Value
This view displays conflict information after synchronization. It allows the Siebel Mobile Web
Client to resolve data merge conflicts on the local database. For more information about
responsibilities, “Creating Responsibilities” on page 38 and Siebel Applications Administration
Guide.
6 To register the remote user, do Step 3 on page 51 but with the following differences:
Field Description
User ID DCASTRO
a Navigate to the Administration - Application screen, and then the Responsibilities view.
b In the Responsibilities list, click Query, enter the following text in the Responsibility field, and
then click Go:
Siebel CRM uses this responsibility for the data routing model you chose in Step 6.
d In the Add Users dialog box, choose the record for Dana Castro, and then click OK.
In this topic, you extract, initialize, and synchronize the remote database.
a On the remote computer, in the Siebel program group, click Siebel Remote.
162 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Configuring Siebel Remote ■ Process of Configuring Siebel Remote
b In the Siebel Remote Parameters dialog box, enter information using values from the following
table.
Field Entry
Password DCASTRO
c Click Continue.
b Choose the File menu, and then the Synchronize Database menu item.
d Click Synchronize.
■ Connects
■ Disconnects
164 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
12 Setting Up the Test Environment
This chapter describes how to set up the test environment. It includes the following topics:
To move repository data to the test environment, perform the following tasks:
2 “Moving Web Templates, Image Files, and Cascading Style Sheets” on page 167
This topic describes how to move repository data, such as applets, views, and business components.
The tool you use to move data depends on the type of configuration changes you must move:
■ If you must move a database schema change, then use the Repository Migration Configuration
Utility. For example, if you add columns to a base table, which you did do in Chapter 6,
“Configuring the House and Opportunity Entities.”
■ If you must move only user interface and business object definitions, then you can use the Export
and Import Repository Utilities.
For more information about managing repositories, see Going Live with Siebel Business Applications.
2 To start the Database Server Configuration Utility, in Microsoft Windows, choose the Start menu,
Programs, Siebel Enterprise Server version_number, and then the Configure DB Server menu
item.
3 In the Gateway Server Address dialog box, specify your Siebel Gateway Name Server Address
and Enterprise Server Name, and then click Next.
4 In the Siebel Server Directory dialog box, accept the default value or click Browse, and then click
Next.
5 In the Siebel Database Server Directory dialog box, accept the default value or click Browse, and
then click Next.
6 In the RDBMS Platform dialog box, choose the platform for your environment, and then click
Next.
7 In the Siebel Database Operations dialog box, choose Migrate Repository from the list of
operations, and then click Next.
For more information, see “About the Repository Migration Configuration Utility” on page 167.
8 Proceed through each dialog box using values from the following table, and then clicking Next.
ODBC Data Source Name Enter the name of the ODBC data source.
Database User Name Enter the source database user name and source
database password.
Database Table Owner Enter the source database table owner and source table
owner password.
Source Database Repository Name Enter the database repository name and the target
database repository name.
Target Database ODBC Datasource Enter the target database ODBC datasource.
Target Database User Name Enter the target database user name and password.
Target Database Table Owner Enter the target database table owner and table owner
password.
Index Table Space Name Enter a value only if you indicated that the target
database is IBM DB2. Enter the index table space name
and 4 KB Table Space Name.
16-KB Table Space Name Enter a value only if you indicated that the target
database is IBM DB2. Enter the 16 KB table space name
and 32 KB table space name.
166 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Setting Up the Test Environment ■ Process of Moving Data to the Test Environment
Index Table Space Name Enter a value only if you indicated that the target
database is Oracle. There are no 4 KB, 16 KB, or 32 KB
table spaces in Oracle.
Configuration Parameter Review Summary screen that displays a list of your choices. To
accept this configuration, click Finish.
As a result of this work, the database schema and object definitions in the target environment
matches the database schema and object definitions in the source environment.
The Siebel Server installation includes a set of Web template files and other related files, such as
image files and cascading style sheets. If you make changes to any of these files in your source
environment, then you must copy the modified files to the target environment.
Images ORACLE_HOME\webmaster\images\language_code
Moving application run-time customization data from one Siebel application environment to another
Siebel application environment is a common requirement when you go live to a new development,
test, or production environment. The Application Deployment Manager (ADM) automates moving this
data. For example, ADM can move customization data from a development environment to a testing
environment. ADM eliminates the need to transfer this data manually. Modified views,
responsibilities, and assignment rules are examples of enterprise customization data. ADM does not
change the data that it moves.
■ Access Groups
■ Assignment Rule
■ Expense Types
■ Product Feature
■ Product Line
■ Responsibility
■ State Model
■ User List
■ View
These data types are included in the predefined Siebel application. You can use Siebel Tools to add
more data types for use with ADM.
If you use ADM, then you perform most of the administrative tasks to move data in the Application
Deployment Manager screen in the Siebel client. These tasks require the Siebel administrator
responsibility. For more information, see “Creating Responsibilities” on page 38.
The ADM setup process in the ADM user interface creates a template in which you can move one data
type on a regular basis, if required. The deployment project is the fundamental structure of this
template. The deployment project includes one or more data types that you can move.
To load CRM data in the test environment, perform the following tasks:
168 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Setting Up the Test Environment ■ Process of Loading CRM Data in the Test Environment
This topic describes only one import example, which is how to load account data. You must load the
EIM_ACCOUNT interface table, prepare the NRECimp.ifb configuration file, and run the EIM import
process.
Figure 23. Flow Between a Non Siebel Database and a Siebel Database
If the EIM Interface Table object type is not visible, then display it. For more information, see
“Setting Up Siebel Tools” on page 59.
b In the EIM Tables list, locate the interface table you must load.
c In the Object Explorer, expand the EIM Interface Table tree, and then click EIM Interface Table
Column.
d In the Interface Table Columns list, enter a query that locates all records that contain a check
mark in the Required property.
For the EIM_ACCOUNT table, the following interface table columns are required:
❏ IF_ROW_BATCH_NUM
❏ IF_ROW_STAT
❏ PARTY_TYPE_CD
❏ PARTY_UID
❏ ROW_ID
For more information, see Siebel Enterprise Integration Manager Administration Guide.
To load legacy data to Siebel interface tables, you use a database software utility that is specific
to your database. For example, if you use DB2, then use one of the load utilities available for
DB2. For more information, see the documentation for your database software.
Make sure you load the required columns you identified in Step 2.
Some columns in the interface tables are part of a user key sequence. The user key sequence is
the set of user key columns whose values uniquely identify a row. To prevent importing duplicate
rows, as EIM loads each row, it checks whether the interface table already contains the user key
sequence for that row.
For information on the following topics, see Siebel Enterprise Integration Manager Administration
Guide:
EIM reads a configuration file that specifies which process it must perform and defines the
parameters EIM uses to run the process. This file is an ASCII text file that contains an IFB extension
in the file name. Before you start an EIM process, you must edit the contents of this EIM configuration
file. If you do not specify a configuration file, then EIM uses the default.ifb file.
170 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Setting Up the Test Environment ■ Process of Loading CRM Data in the Test Environment
In this example, EIM sets the process locale as specified in the configuration file at start up. For
information on the following topics, see Siebel Enterprise Integration Manager Administration Guide:
siebsrvr_root\admin
In a Unicode environment, you must save the EIM configuration file as a Unicode text file.
2 Copy the text from the example to the NRECimp.ifb file you created in Step 1, and then save your
work.
For more information, see “Example Text for the Configuration File” on page 171.
Parameter Description
Siebel Interface Manager The header section must use this reserved name
PROCESS Initial or main process section to run. Use Import Accounts for
NREC.
■ Specific to a particular EIM process. Each parameter applies only to the particular process you
specify. It overrides any corresponding value in the header section.
Parameter Description
ONLY BASE COLUMNS For the NREC example, only process the following columns:
■ S_ORG_EXT.NAME
■ S_ORG_EXT.LOC
■ S_ADDR_ORG.ADDR
■ S_ADDR_ORG.OU_ID
■ S_ADDR_ORG.CITY
■ S_ADDR_ORG.STATE
■ S_ADDR_ORG.ZIPCODE
ONLY BASE TABLES For the NREC example, only process the following tables:
■ S_ORG_EXT
■ S_ADDR_ORG
■ S_PARTY
172 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Setting Up the Test Environment ■ Process of Loading CRM Data in the Test Environment
Parameter Description
TABLE For the NREC example, only process the EIM_ACCOUNT interface table.
TYPE For the NREC example, only process the following types:
■ IMPORT
■ EXPORT
■ DELETE
■ MERGE
■ SHELL
To improve EIM performance, it is recommended that you disable transaction logging before you
perform an initial load through EIM.
CAUTION: If there are active mobile clients, then do not disable Docking Transaction Logging. If
there are active mobile clients, and if you disable Docking Transaction Logging, then the server
database and mobile client databases will be out of synchronization after the import. To
resynchronize them, you must extract the database for each mobile client, and then initialize the
database on each client. For more information, see Chapter 11, “Configuring Siebel Remote,” and
Siebel Remote and Replication Manager Administration Guide.
For more information, see “Logging In as the Siebel Administrator” on page 183.
2 Navigate to the Administration - Siebel Remote screen, and then the Remote System Preferences
view.
3 Make sure the Enable Transaction Logging option does not contain a check mark.
To disable transaction logging, you can also change the LOG TRANSACTIONS parameter in the
EIM configuration file. For more information, see “Adding the EIM Configuration File” on page 170.
In this topic, you start an import process for Enterprise Integration Manager from the Siebel client.
For information about starting the import process from the command line, see Siebel Enterprise
Integration Manager Administration Guide.
d In the Starting With window, enter Enterprise Integration Mgr, click Go, and then click OK.
c In the Job Parameters dialog box, in the Find window, choose Description.
d In the Starting With window, enter Configuration file, click Go, and then click OK.
4 Repeat Step 3 for each of the parameters listed in the following table.
Parameter Value
Batch Number Enter 0, which instructs EIM to use the batch number you specify in the
EIM configuration file.
Process Enter Import Accounts. This is the process name you specified in the RUN
PROCESS parameter in the EIM configuration file. For more information,
see “Adding the EIM Configuration File” on page 170.
CAUTION: If the EIM process is running, then do not stop or pause the task. If you stop an EIM
process that is running, and if you must roll back changes, then some steps might not roll back
correctly.
b Examine the EIM log file for the corresponding task number.
The EIM log file contains status and diagnostic information about the import process. The log
file name uses the following format:
Eim_task#.trc
where:
174 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Setting Up the Test Environment ■ Administering the Test Environment
To determine the status of each row that EIM attempted to import, you can also examine the
IF_ROW_STAT column. For more information, see Siebel Enterprise Integration Manager
Administration Guide.
You must administer the same company structure and set up users in the test environment that
you created in Chapter 3, “Installing Software, Adding Users, and Creating the Company Structure.”
You created these views in the development environment. For more information, see Chapter 6,
“Configuring the House and Opportunity Entities” and “Registering a New View” on page 184.
176 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
13 Common
Tasks
Software Development
This chapter describes tasks you can perform in a typical software development effort. It includes
the following topics:
■ Control
■ Drilldown object
■ List
■ Tree
A parent-child relationship between object definitions implies that the child object definition is in, or
belongs to the parent object definition. It does not imply inheritance between object definitions. The
set of properties of a parent object is not related to the set of properties of a child object.
To view object types listed alphabetically in a nonhierarchical structure, you can click the Flat tab in
the Object Explorer.
Opening a Wizard
Siebel Tools includes wizards that guide you through the task of creating a new object definition. The
wizard prompts you for information that is required to define a particular object, such as an applet
or a view. When you click Finish, the wizard creates the object definition and any related object
definitions according to the choices you make. You can use the Object List Editor to create an object
manually, but if a wizard is available, then it is strongly recommended that you use the wizard.
To open a wizard
1 Choose the File menu, and then the New Object menu item.
2 In the New Object Wizards dialog box, choose an object, and then click OK.
178 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Common Software Development Tasks ■ Using Siebel Tools
■ Applet
■ View
■ Web Template
A user interface object, such as a control or list column, is mapped to a placeholder in a Web
template. At run time, the Siebel Web Engine does the following:
■ To display the applet in the Siebel client, uses the HTML contained in the Web template
■ To enter CRM data that the object displays, retrieves the relevant data from the Siebel database
To modify or create an applet, in Siebel Tools you can use the Object List Editor to define object
properties. You can use the Web Layout editor to map controls to placeholders in Web templates and
to define object properties. To modify other qualities of a user interface element you use an external
cascading style sheet. For example, to change the style of an applet, such as the color scheme. You
typically do not modify Web templates themselves.
2 Choose one of the following tabs, make your adjustments, and then click OK:
■ Language Settings. For more information, see “Setting Language Options” on page 180.
■ Check In/Out. Specifies the development server database and the local client database that
Siebel Tools uses to check in and check out objects.
■ Web Template Editor. Specifies the default Web template editor. To use a default editor to
open a Web template, you can click Edit Template in the Controls/Column window when the
Web Layout Editor is open.
■ Data transferred to and from the Siebel Server during the check-in and check-out process
180 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Common Software Development Tasks ■ Process of Modifying Siebel Objects
Siebel Tools displays the current Language Mode in the status bar located in the lower right corner
of the Siebel Tools interface.
4 (Optional) To edit locale attributes, make sure the Enable and Use Language Override option
contains a check mark.
If the Enable and Use Language Override option contains a check mark, then you can switch
between the following modes:
■ Base. Siebel Tools stores changes you make to locale-specific attributes in the base table.
Siebel Tools applies these changes to every language.
■ Language Override. Siebel Tools stores changes you make to locale-specific attributes in a
child locale table. Siebel Tools overwrites the attribute for the current language.
If the Enable and Use Language Override option does not contain a check mark, then you can
work only in Base model.
To do configuration work in a local database, you first check out projects from the Siebel Server. For
more information, see “About the Local Development Environment” on page 18.
3 Choose the project or projects that contain the object definitions you must check out.
4 Click Options.
5 In the Development Tools Options dialog box, make sure the Server and Client data sources are
specified correctly, and then close the Development Tools Options dialog box.
When you check out a project, the project remains locked in the Siebel database on the Siebel Server
and in your local database. This prevents other developers from checking out the project. During this
time, you can use Siebel Tools to make configuration changes, such as modifying user interface
objects, extending business logic, or extending the database.
You can also lock projects locally without checking them out from a server database. For more
information, see “Managing Projects When You Prototype” on page 187.
Compiling Projects
This task is a step in “Process of Modifying Siebel Objects” on page 181.
After you make your configuration changes, you must compile them to a Siebel repository. Until you
compile, the Siebel Mobile Web Client that reads the repository file does not include configuration
changes you made since the prior compile. You can compile entire projects or you can compile
individual objects. Compiling an individual object is faster, but you must remember to compile each
object you modify.
To compile projects
1 Close any Siebel clients that reference the SRF file you must compile.
So that you can revert to the prior configuration, it is recommended that you create a backup
copy. The SRF file for the Siebel application resides in the objects directory of the Siebel
application client directory. For example, the following directory is a typical location for the SRF
file for a Siebel Mobile Web Client that you install for testing in a development environment:
C:\Siebel\8.1\Client_1\OBJECTS\ENU\siebel.srf
182 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Common Software Development Tasks ■ Process of Modifying Siebel Objects
3 In Siebel Tools, choose the Tools menu, and then the Compile Projects menu item.
4 In the Object Compiler dialog box, in the Projects window, choose the project you must compile.
Choose the NREC Configuration project for work you perform on the NREC example. You can also
compile all locked projects or all projects. Compiling only the locked projects is faster than
compiling all projects. If you work in multiple projects, then compiling locked projects might be
easier than choosing individual projects from the list.
5 Click Browse, and then choose the SRF file you must compile.
NOTE: Do not compile to the objects directory for Siebel Tools. The SRF file in this directory is
locked because Siebel Tools frequently reads from it while it runs. If you attempt to compile to
this SRF file, then Siebel Tools displays an error message and prevents the compile. The following
directory is an example of the objects directory for Siebel Tools:
C:\Siebel\8.1\Tools_1\OBJECTS\ENU\siebel.srf.
6 Click Compile.
After Siebel Tools successfully compiles, the SRF file you specified contains the configuration
changes you made.
2 In the Object List Editor, locate the object definition for the object you must compile.
3 Right-click the object, and then choose the Compile Selected Objects menu item.
4 In the Object Compiler dialog box, choose the SRF file you must compile.
5 Click Compile.
To perform administrative tasks in the Siebel client, you must use the administrator user name and
password that your database administrator assigned you.
For example, click Start, choose Programs, Siebel8 home, Siebel Web Client 8.1, and then choose
the Siebel Partner Manager menu item. In the NREC example, you use the Siebel Partner
Manager application.
2 In the Siebel Partner Manager dialog box, Enter SADMIN in the User ID and Password fields.
Field Value
User ID SADMIN
Password SADMIN
3 Click OK.
Logging in as SADMIN provides access to the screens and views you use to administer a Siebel
application.
If you add a new view to a Siebel application, then you must make it visible in the Siebel application
before you can test it. If you work with a predefined view, then it is not necessary to register the
view. A predefined view is already registered.
You typically do not modify or delete a record for a view that is already registered. You only modify
a view record if you change the view name. To restrict access to a view, it is recommended that you
not assign any responsibilities to the view rather than deleting the view.
a Open the Siebel client, navigate to the Administration - Application screen, and then the Views
view.
You must open the client for a Siebel employee application, such as Siebel Call Center or
Siebel Sales. You cannot register a view in Siebel Partner Portal because Siebel CRM does not
display the administrative views you must use to register a view.
d In The View dialog box, choose the new view, and then click OK.
e Enter a description.
f Make sure the Default Local Access option contains a check mark.
This option makes the view available in the Siebel Mobile Web Client.
184 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Common Software Development Tasks ■ Process of Modifying Siebel Objects
b In the Responsibilities list, locate the responsibility to which you must associate the view.
You cannot add a new view to a responsibility that is part of the seed data that ships with
the product. To associate a new view with a responsibility, you must do one of the following:
❏ Copy a predefined responsibility, such as Siebel Administrator, and then add the new view
to the copy.
d In the Add Views dialog box, choose the new view you must register, and then click OK.
Siebel CRM associates the view with the responsibility. If a user who is assigned the responsibility
logs in to the Siebel application, then Siebel CRM displays the view in the Siebel client. For more
information, see “Creating Responsibilities” on page 38.
After you make new views available, you can log in to the Siebel client to verify the results of your
configuration changes.
For example, if you added a new applet to a view, go to the view to make sure Siebel CRM
displays the applet at the appropriate location.
3 Note any differences between what you find and the expected display or behavior.
After you verify changes, you must check in to the development server any projects that reference
the objects you modify. Use the following guidelines when you check in projects:
■ Because other developers might depend on your configuration, it might be necessary for you to
check in projects before your work is complete.
For more information, see “About the Local Development Environment” on page 18.
For more information, see “Viewing Differences Between Your Local Repository and the Server
Repository” on page 186.
To view differences between your local repository and the server repository
■ When you check in projects in Siebel Tools, in the Check In dialog box, click Diff.
Siebel Tools displays the checked out projects that you modified since the last check-out.
186 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Common Software Development Tasks ■ Process of Modifying Siebel Objects
2 In the Object List Editor, choose the project or other object type you must modify, choose the
Tools menu, and then the Lock Project menu item.
Siebel Tools locks the project in your local repository so you can make changes. It does not lock
the project on the server database. Note that because you cannot check your changes in to the
Siebel Server, you cannot save any changes you make to the server.
2 In the Object List Editor, locate the object you must export.
3 Choose the Tools menu, and then the Add to Archive menu item.
4 In the Export to Archive File dialog box, in the Archive File window, enter the path to the directory
where you must save the archive file.
5 Click Save.
Siebel Tools saves the file with an SIF extension. Siebel Tools overwrites any SIF files that contain
the same name that already exist in the directory. You cannot add objects to an export file.
2 Make sure the target repository is the active repository on your local computer.
A local database or a server database can contain more than one repository. However, Siebel
Tools displays information from only one repository at a time. This is the active repository.
a Choose the File menu, and then the Open Repository menu item.
b In the Open Repository dialog box, choose the repository you must open, and then click Open.
3 Lock the projects that will contain the objects you must import.
4 Choose the Tools menu, and then the Import From Archive menu item.
5 In the Select Archive File to Import dialog box, choose the archive file you must import.
6 Click Open.
8 Click Next.
The Import Wizard checks for differences between the object definitions in the current repository
and the object definitions in the archive file.
If there are no differences, then Siebel Tools imports the object definitions.
If there are differences, then the Import Wizard displays the following:
■ Conflicting Objects. Displays the object types in which differences were found.
■ Object Differences. Displays whether the object exists in the following items:
❏ Current repository
■ Attribute Differences. Displays the object attributes that include different values. If the
action for the object difference is merge, then to update the value in the Resolution column,
you can right-click attribute, and then choose Repository or File.
188 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
14 Guidelines for Testing a
Deployment
This chapter describes guidelines for testing a deployment. It includes the following topics:
For more information, see “Testing You Perform When You Develop a Siebel Application” on page 14.
■ Use a repeatable, measurable, and documented process. For more information, see Figure 25 on
page 190.
■ Verify that each unit functions correctly when you include it in the larger environment.
■ To test the integration points between the Siebel application and other applications or
components, define test cases. For example:
■ Back-office applications
■ Integration middleware
■ Network infrastructure components
■ Security infrastructure
■ Use a repeatable, measurable, and documented process. For more information, see Figure 26 on
page 191.
■ Get approval from the user community to move to the next stage of development.
190 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Guidelines for Testing a Deployment ■
■ Use a repeatable, measurable, and documented process. For more information, see Figure 27 on
page 192.
■ Stress test
■ Reliability test
Each test measures different types of performance. Individuals and groups who possess
ownership of the architecture and infrastructure typically perform and administer these tests.
■ To validate the health of the environment, test each custom script you use.
■ Before you attempt the full user load, obtain a low load baseline. To use this baseline to measure
scalability, compare results between the baseline and the target loads.
■ To prevent excessive resource utilization due to large numbers of users who simultaneously
login, start users at a controlled rate. This rate depends on the total configured capacity of the
deployment. For every one thousand users of configured capacity, add one user every three
seconds. For example, if the product is configured for five thousand users, then add five users
every three seconds.
Excessive login rate can cause the application server tier to consume 100% CPU, and logins begin
to fail.
■ To prevent inaccuracies during load testing due to simulated users who simultaneously perform
transactions, randomize the think time, which is the amount of time the user requires before the
user provides input to the server.
■ Set randomization ranges according to the relative think times of expert and new users when
compared to the average think times in the script.
■ Use a repeatable, measurable, and documented process. For more information, see Figure 28 on
page 193.
■ After the initial deployment, Oracle delivers periodic configuration changes in new releases. You
must test these configuration changes.
■ Identify a suite for your regression test. To identify regression problems that might be
introduced, this suite provides an abbreviated set of test cases that you can run with each
delivery. Streamlining the regression test process helps you to incorporate changes in the Siebel
application at a much lower cost.
■ Review the testing strategy and objectives. A full review of the open and closed problems can
help calibrate the risk assessment you perform earlier in the product development lifecycle.
192 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Guidelines for Testing a Deployment ■
■ Measure the observed risk that specific components cause. For example, identify the component
that introduces the largest number of problems.
■ Perform a final review meeting. This post-mortem meeting allows you to identify future
improvements you can make.
■ Review test plans and test cases. Update test cases to include testing scenarios during testing
that were not previously identified.
It is recommended that you use a test automation tool. You can prepare a test script that exercises
the functionality of a particular module or that performs the tasks in a comprehensive business
process. Then you can share and use this script repeatedly. This technique improves the
configuration of your Siebel application, and it increased user acceptance because it allows you to
perform software testing with little additional cost. Test automation reduces the requirement for
multiple human test passes and reduces the amount of human error in the testing process.
■ Test script recording. Instead of composing a script in a text editor, you can start a recorder
and perform a series of steps. The test tool records the session in a script, which you can replay
later to perform the test.
■ Automated test execution. Instead of manually performing tasks in the test script each time,
you can use a test tool to start the test and then let the script run.
■ Data value parameterization. You can use variables in your test script that pull in data values
from an external table during test execution. This technique avoids the requirement to hard code
data values in a test script.
■ Reusable tests. You can share a test among multiple testers and across multiple cycles of
application testing.
■ Result tracking. The test tool records important statistics for identifying functional errors.
Not all functional test automation tools include all these features, and some tools include more
features. For more information, see the documentation for your testing tool.
Siebel Test Automation does not provide general automation services. It only supports test
automation.
You can use a third-party test automation tool to write, record, and run test scripts on these clients.
If you use a third-party tool, then see the documentation that accompanies the tool for information
about the features and functionality that it provides.
You can use a test automation tool to simulate the load and achieve comprehensive and precise
results without the cost associated with multiple human testers. Load testing automation also
reduces the risk associated with user errors.
194 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Guidelines for Testing a Deployment ■
■ Recording test scripts. For more information, see “Features of Functional Test Tools” on
page 194.
■ Using virtual users. Many virtual users from a single computer can simultaneously run a single
test script.
■ Controlling the execution of the test. Use the test tool to specify parameters that indicate
how to run the load test. For example, how quickly to add users, how many users to add, and
which scripts to run.
■ Tracking results. The test tool records important statistics for tracking KPIs and isolating
bottlenecks. Example statistics include memory usage and response time.
Not all load testing tools include all of these features, and some tools include more features. For more
information, see the documentation for your load testing tool.
How You Can Use the Siebel Correlation Library to Perform Load
Testing
The Siebel Correlation Library allows you to use a third-party tool to automate load testing on a
Siebel application. This is a dynamically linked library (DLL) that provides services to help the testing
tool generate and run test scripts against your Siebel application.
After you install the Correlation Library and set up your test environment, the Correlation Library
helps the test tool translate the recorded test session in a script that you can run to test your Siebel
application. The Correlation Library acts as an interpreter for the test tool. The test tool does the
following work:
■ Records HTTP traffic from the Siebel application. This HTTP traffic equates to a Web page.
The Correlation Library parses the Web page and returns to the test tool the appropriate correlation
information for the Web page. The correlation information allows you to parameterize data values.
For more information, see the chapter about automating load tests in Testing Siebel Business
Applications.
■ Application data entities. Application data entities are associated with the function of the
Siebel application. Examples of application data entities include Row ID, SWE Timestamp, and
SWE Count.
■ Transaction data entities. Transaction data entities contain record data that the user enters
in the Siebel application. Examples of transaction data entities include Contact Name and
Account Name. The Correlation Library does not handle transaction data entities. You must
parameterize them manually.
The ssdtcorr.dll file includes the Correlation Library. It is located in one of the following
directories:
■ siebsrvr\bin on Windows
■ siebsrvr/lib on UNIX
3 Copy the ssdtcorr.dll file to a location that is accessible to the load testing tool.
4 Set up your test tool so that it communicates properly with the Correlation Library.
For more information, see the documentation from your test tool vendor.
196 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
A Code for NREC Business
Services
This appendix includes code for the NREC business services. It includes the following topics:
' Identify setup details of calling VBC and add as Parameter to Service
ParamText = Inputs.GetProperty("Parameters")
VBCName = Inputs.GetProperty("Business Component Name")
End Sub
NoOfValues = 0
' ********************************************************************************
' * Establish the Value Pairs to Be Used for Insert from the Inputs Property set *
' ***********************************************************************************
198 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Code for NREC Business Services ■
' ***********************************************************************
' * Create the Output String for Writing to the File in the right order *
' *************************************************************************
Close #1
' ***************************************************
' * Create the Output String In the DataSource File *
' *****************************************************
Print #1,OutputStr
Close #1
End Sub
' ************************************************************************************
' * A Pre Insert Method is Required before any insert is applied, It *
' * provides Default Values, This service does not provide any defaults, But *
' * must return a property set that includes values, so this references the first field
by default. *
' ************************************************************************************
End Sub
' ***************************************************************************
' * The adding of properties in the me.SetProperty statements in this *
' * code is used To store key information and the relevant data against *
' * parameters identified by the VBC name. This technique is used to create *
' * a persistantstore and negate yhe need for repeat calls to the external *
' * source for the same data. *
' *****************************************************************************
DoQuery = 1
NoOfQs = 0
OutColCount = 0
OutRowCount = 0
' ****************************************************************************
' * Establish the list of Columns Which define the Query Values from the VBC *
' *******************************************************************************
QueryFields(1) = QueryList.GetFirstProperty
QueryValues(1) = QueryList.GetProperty(QueryList.GetFirstProperty)
NoOfQs = NoOfQs + 1
QryData = QueryFields(1) & "=" & QueryValues(1)
For i = 2 to FieldCount
QueryFields(i) = QueryList.GetNextProperty
If QueryFields(i) <> "" Then
QueryValues(i) = QueryList.GetProperty(QueryFields(i))
NoOfQs = NoOfQs + 1
200 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Code for NREC Business Services ■
QryData = QryData & ";" & QueryFields(i) & "=" & QueryValues(i)
End If
Next i
End If
' *********************************************************************************
' * Establish If Query is same as Last Time for this VBC and If So Set Query Flag *
' * to use Persistant Cache
' ***********************************************************************************
' *********************************************************************************
' * Establish Full List of Columns Available and Which ones are needed by the VBC *
' * Where not required, Identify this with Column Value Not Required CVNR *
' ************************************************************************************
If DoQuery = 1 Then
' *********************************************************************************
' * Retreveal of Data from Text File, Including ignoring Columns Not Required and *
' * Ignoring rows which do not match the selection criterion *
' ************************************************************************************
For r = 1 to 999
EndLoop:
Exit For
End If
Next r
Close #1
me.SetProperty VBCName & "RowCnt", CStr(OutRowCount)
me.SetProperty VBCName & "Col", ColList
Else
' ********************************************************************************
' * Re Create Output property set from the Persistant Cache held in the Business *
' * Service Property Set
' **********************************************************************************
202 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Code for NREC Business Services ■
End Sub
'**********************************************************************************
'* SYSTEM DEFINITION SECTION
'*
'* The Calling V.BusComp must include the following parameters
'*
'* Service Name = Pal Mk2 (Unless Renamed)
'* Service Parameters = <Full Path & DataFile Name>;
'* <No Of Columns in File>;
'* <Columns in Calling VBC comma separated>
'*
'* e.g Service Parameters = c:\Siebel\Data.VBC;5;KeyId,FName,LName,Age,DOB
'*
'**********************************************************************************
' Identify the Context the Service is Called from and setup parameters
Pal_PreInsert Outputs
Service_PreInvokeMethod = CancelOperation
ElseIf MethodName = "Insert" Then
Pal_Insert Inputs, Outputs
Service_PreInvokeMethod = CancelOperation
ElseIf MethodName = "Delete" Then
'Pal_Delete Inputs - Not Yet Completed
Service_PreInvokeMethod = CancelOperation
Else
Service_PreInvokeMethod = ContinueOperation
End If
End Function
204 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Index
206 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Index ■ H
208 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Index ■ S
210 Developing and Deploying Siebel Business Applications Version 8.1, Rev A
Index ■ V
212 Developing and Deploying Siebel Business Applications Version 8.1, Rev A