A thesis submitted in partial fulfillment of the requirements for the degree of Master of Computer Science University of Bridgeport 2002 Instructor: Prof. Ausif Mahmood

Presented By : Mohammed Khan S.I.D : 436378

1. Introduction 2. Various Siebel Applications - Várias aplicações de Siebel 3. Key Siebel Features - Características chaves do Siebel 4. Siebel Sales – Siebel Vendas 5. Siebel Marketing 6. Siebel Call Center 8. Field Service - Serviço de campo 7. Siebel Remote 8. Enterprise Integration Manger 10. Work Flow Manager 11. Assignment Manager 12. Siebel Reports 13. Application Environment 14. Siebel Data Model 15. Siebel Tools 16. Siebel Configuration 17. Application Visibility 18. Siebel Application Architecture 19. Creating Siebel Sales Application 20. Deploying Siebel Application on the Web

Siebel Enterprise Applications enable users to share and manage all relevant information about customers, products, competitors, and markets. Siebel is a multi-channel eBusiness solution that enables organizations to manage all customer touch-points via e-mail, telephone, fax, field, or the Web. Customer touch-points are synchronized through one central information repository, one database, one tool set, and one architecture regardless of doing interactions via call center, field services, channel partners or the Web. Siebel eBusiness provides the industry’s most comprehensive family of multi channel eBusiness applications and services. The eBusiness applications operate on all major computing platforms used by organizations, including mobile clients, connected clients, thin clients, and hand help clients. Additionally the Siebel eBusiness Architecture supports the Wireless Application Protocol ( WAP) and voice

recognition so users can access Siebel eBusiness applications even from their mobile phone. The product architecture enables organizations to configure once and deploy everywhere. Once an organization makes customization to the underlying Siebel Object the customization can work across the primary type clients from mobile, handheld, connected or thin clients to even the wireless phones. Siebel eBusiness Applications support multiple organizations allowing companies to define organizational structure for managing data visibility, security, and business processes across centralized and decentralized deployment topologies. Sales professional use Siebel applications to manage accounts and opportunities and review information about products, prices, and competitors. Customer service professionals use Siebel applications to track customer problems, access online knowledge-bases to resolve problems, and automatically assign service requests to agents with the appropriate levels of expertise. Managers use Siebel applications to analyze the sales pipeline, generate forecasts, and see current measurements of customer satisfaction in service organizations. Siebel eBusiness uses a single database and integrates with the back office to ensure consistent customer interactions. It supports a variety of clients, databases, and server platforms. Siebel applications are a comprehensive family of front office products offering best ofclass functionality in sales, marketing, and customer service.

Siebel Sales Enterprise Siebel Call Center Siebel Service Enterprise Siebel Field Service Siebel Marketing Enterprise Siebel Communications Siebel Consumer Goods Siebel Finance Siebel Insurance Siebel Pharma

Siebel Product Configurator

Siebel Account Management 1 Siebel Account Management enables users to manage all aspects of target accounts and customer accounts. Users can schedule and track activities related to accounts. They can establish new opportunities with existing accounts. They can associate accounts with other key information such as contacts, service histories, and product information. Account management gives users a complete picture of each account’s status and value. Siebel Opportunities 1 Siebel Opportunities enables users to manage all aspects of sales opportunities. Users can gather information about target accounts, partners, product interest, pricing, and historical activities, providing up-to-the minute information to sales team members. As the opportunity progresses through the sales cycle, users can track its progress. Siebel Contact Management 1 Siebel Contact Management enables users to create and distribute profiles for each business contact and personal contact. Each contact is associated with an account and can be associated with opportunities, service requests, service agreements, and other Siebel records. Users can track all activities related to each contact. Users can also create categories that help them manage contacts. Siebel Activity Management 1 Siebel Activity Management enables users to manage activities related to accounts, opportunities, and contacts, as well as manage their personal to-do lists. They can

delegate activities to colleagues and track priorities, due dates, and completion dates. When users enter activities with start dates, the activities automatically appear on their Siebel calendars. Siebel Calendar 1 Siebel Calendar enables users to integrate activities with their calendars. Activities can be personal activities or activities associated with accounts, opportunities, or contacts. Users can display their calendars in daily, weekly, or monthly views. The Siebel Calendar can be integrated with other personal information management programs, such as Microsoft Outlook and Novell GroupWise, allowing users to use the tool of their choice. Siebel Campaign Management Siebel Campaign Management enables your organization’s administrator to create complex sales and marketing campaigns that break down into individual events. Users can access the campaigns to view detailed information such as campaign summaries, call scripts, contact lists, call status, quotas, and related literature. Campaign management helps your organization gather information to track and manage campaign costs and monitor success. Siebel Product Management 1 Siebel Product Management give users access to current product information maintained by an administrator. Administrators maintain product information such as product lines, descriptions, key features, price lists, discounts, and featurebyfeature comparisons of similar products. Users also have one-click access to current product white papers, data sheets, and product videos. Having access to current product information keeps users well informed and well prepared to respond to prospects and customers. Siebel Service Request Management 1 Siebel Service Request Management provides users with easy access to customer information such as profiles, operating environments, open issues, and service

agreement information. Users can categorize, prioritize, and track the status of problems. For difficult issues, users can assign service requests to other groups or individuals who have specialized skills. Siebel Solution Management 1 Siebel Solution Management enables users to document how problems are resolved. Solutions describe how to resolve service requests and address product defects. Users can apply past solutions when trying to resolve current problems, enter solutions that address potential problems before issues arise, and associate solutions that address similar topics with each other. Siebel Entitlement Verification 1 Siebel Entitlement Verification allows users to review service agreements to verify the level of service that customers are entitled to receive. Users can verify agreement details such as the dates of coverage, authorized contact list, products, and quotas (measured in user defined units). Siebel Proposals 1 Siebel Proposals allows users to create high-quality sales proposals tailored to customer requirements. By pressing a single button, users can create a Microsoft Word draft proposal based on details of the sales opportunity including the customer’s product interest, competitive landscape, and the customer’s key decision criteria. Siebel Presentations 1 Siebel Presentations allows users to create high-quality sales presentations tailored to customer requirements. By pressing a single button, users can create a Microsoft PowerPoint presentation based on details of the sales opportunity including the customer’s product interest, competitive landscape, and the customer’s key decision criteria. Users can customize the presentation further to meet customer

requirements by using the latest information published in the Siebel Encyclopedia and Presentation Library. Correspondence Siebel Correspondence allows users to create correspondence using predefined templates, attach literature files, and merge contact information from the Siebel database. Users can submit correspondence requests to a fulfillment organization and track the status of their requests. Literature 1 Siebel Literature views allow users to access sales and marketing literature such as product brochures, white papers, and data sheets. Literature is easy for users to access; and because this information is stored online, users can be sure it is the most current information available. Categories 1 Categories allow users to track information about accounts, opportunities, and contacts that is important to their personal selling style. Users can track information such as deals they plan to close in a particular quarter, customer’s hobbies, or names of customer’s children. Users can search for accounts, opportunities, or contacts based on categories. Siebel Expense Reports 1 Siebel Expense Reports allow users to enter expense reports, submit them for approval, and track their progress through the approval cycle. With the click of a button, users can automatically include expansible activities in expense report details. The Hotel feature allows users to easily itemize hotel expenses, and the Spread features allows users to distribute a single amount over several days. Professional Services Projects 1 Professional Services is a set of features that helps your consulting organizations

compete for, win, and manage projects that you are performing for your customers. Often, you are selling services, not physical products. As a result, you need ways to plan and keep track of the time and people working on a project.

Siebel Sales allows teams of sales and marketing professionals to manage sales information throughout the entire sales cycle. This base application includes Opportunity Management, Account Management, Contact Management, Activity Tracking, Message Broadcasting, Siebel Search, Quotas, and Incentives functionality. Siebel Sales measures, manages, and improves sales performance, ensuring a competitive advantage while providing consistency in analysis, interpretation, and information management. Decision makers use the same tools, resulting in parallel thinking across the entire enterprise, bottom line savings, and shorter lead-to-closure sales cycles.

Siebel Marketing allows comprehensive front office analysis of ones company, customers, and prospects, combined with complete campaign design, management, and execution at all customer touch points. All information from other Siebel applications, and external legacy systems, can be brought into the Siebel data mart for a more in-depth understanding of your customers, competitors, and the performance of your company’s marketing, sales, and products. This analysis may then be used to plan sophisticated campaigns that can be executed via the Siebel Call Center, pager, fax, direct mail, Web, and email. How Siebel Marketing Presents Information 1 Siebel Marketing provides a set of views grouped into several screens. (The exact number depends upon your licensed Siebel options.) Each screen represents a key business issue around which the marketing or sales group develops strategies for success. Each tab on the tab bar takes you to a different screen. Each screen contains three or more views that analyze information specific to that tab’s topic.

For example, the Product screen has five views under the Opportunity heading, as shown in Figure below

To effectively compete in today’s marketplaces, organization’s are relying more on the call center as the critical "touch point" for all customer interactions. In the past, call centers have been extremely reactive. These call centers agents handled only a small range of specific questions and back-office operations, often requiring the customer to be transferred from agent to agent to handle a complex customer request. The focus of this customer interaction was cost reduction-complete the customer request as quickly as possible and move on to the next customer in queue. Siebel Call Center is designed for the next generation call center, enabling agents to handle a complete set of services, support, and sales interactions across a broad range of communications channel such as phone, Web, fax, email, Interactive Voice Response(IVR), and electronic data transfer. Siebel CTI (computer telephony integration) integrates your Siebel eBusiness Application software with your telephone switch and CTI middleware. With Siebel

CTI, the telephone system provides notification of telephony events to the Siebel desktop, and your Siebel application software, in turn, controls or interacts with the phone system. CTI can help your call center achieve these goals:

Handle a large number of inbound telephone calls for customer service, sales, technical support, and telemarketing

• • •

Support outbound calling for sales, service, and collections Integrate telesales and telemarketing with customer service Offer faster, more accurate, and more personalized service for customers, while also increasing agent productivity and reducing costs

Provide a common user interface for your Siebel application and your telephony system

Help integrate Web-based applications such as the Siebel .COM applications with the Siebel eBusiness Applications used by your employees

Call-center agents can place, receive, conference, and transfer telephone calls, fully integrated with the Siebel applications they use in their other call-center activities. Your enterprise can use CTI-enabled Siebel applications to meet your business needs and tailor call handling to best serve your employees and customers. CTI is integral to a call center’s ability to manage and monitor calls. Call-center agents will use Siebel CTI features in their regular work, and managers and administrators will use CTI to manage and track their call center’s operations.

Siebel Field Service provides service center agents, warehouse staff, and field service engineers the tools to respond efficiently and effectively to service requests. Siebel Field Service handles a full complement of field service tasks, including the

following: _ Receives service center calls. _ Verifies service agreements and entitlements. _ Enters a service request. _ Searches for solutions. _ Creates activities for a service request. _ Assigns and dispatches field service engineers. _ Provides part inventories for parts depots and trunk stock. _ Provides detailed customer configuration. _ Tracks parts consumption and logistics. _ Manages inventory replenishment. _ Integrates return materials authorizations and service orders. _ Provides field service engineers with complete service details, including the required skills, tools, and parts for all service activities. _ Manages repair of defective parts. _ Sets up and manages preventive maintenance plans. _ Tracks and analyzes service costs. _ Prepares invoices for service, and tracks payments. _ Defines characteristics of assets and records readings from equipment (assets) in the field for preventive maintenance, billing, and service. _ Utilizes a barcode reader to read serial numbers and to label certain field service and inventory documents. The field service process typically consists of a customer reporting a problem to a service center and field engineers being dispatched with spare parts. A field service organization that can rely on a single software application to manage this process can fully observe and control the process. Separate functional groups such as the service center, dispatch, field engineers, and

parts organizations need to share information. Siebel Field Service integrates call center, dispatch, field activities, and service parts information in a comprehensive, enterprise-wide, customer management system.

Siebel Remote enables mobile or remote clients (typically laptop computers) to connect to a Siebel Server and exchange updated data and files, a process known as synchronization. Siebel Remote supports true mobile computing by allowing field personnel to share current information across virtual teams of other mobile and connected users across the enterprise. As mobile users enter and update information in their local databases, Siebel Remote client software tracks the changes as synchronization transactions. Subsequently, when the user connects to the Siebel Remote server (via a modem, LAN, WAN, or Internet connection), these transactions are uploaded from the mobile client to the server. Between synchronization sessions, the Siebel Remote server prepares transactions applied to the database server by other users. Siebel Server components then write these transactions to separate directories for each mobile user. The transactions— combined with updated, published, or requested marketing literature; correspondence templates; and other types of file attachments—are downloaded to the mobile client during the next synchronization session. .16. Enterprise Integration Manager Siebel Enterprise Integration Manager (EIM) manages the exchange of data between Siebel database tables and other corporate databases. Loading data directly into Siebel base tables is not supported. Due to the complexity of table relationships, one must use EIM to import data into Siebel base tables.

EIM is used to perform bulk imports, exports, merges, and deletes. Examples of these functions include: _ When initially implementing a Siebel application, one can load the Siebel database tables with data and file attachments created by external applications. For example, one might import information about product lines and products from an Inventory Control database into the Siebel database. _ As part of maintaining the database, one can update it with information created by external applications. For example, Inventory Control might add a product line using another application, and one might import the information into the Siebel database. _ When initially implementing a non-Siebel application, one can export data from the Siebel database tables for use by that application. For example, you might export employee information to a corporate sales commission application. _ As part of maintaining a non-Siebel database, one can update it with information from the Siebel database. For example, one might add new customers to an accounting database from the Siebel databases. _ In response to such external events as corporate mergers, one can merge two or more database rows into a single row. For example, one might merge the "Frame, Inc." account information into the "Adobe Corp." account. _ As part of maintaining the Siebel database, one can identify rows to be deleted from a table and its associated child and intersection tables. For example, one might delete an obsolete product line and its associated products. _ Import new and revised data into Siebel base tables. _ Export new and revised data from Siebel base tables. _ Delete data from Siebel base tables. _ Merge new and revised data into Siebel base tables.

Figure 1-1. Process Flows Between Siebel Database and Other Databases

In theory, businesses are managed according to policies and procedures that ensure efficiency, quality service, adherence to contractual agreements, and profitability. These policies enforce business processes such as:

Ensuring that response time objectives are met for customer callbacks and open service requests

Specifying review policies for important processes like contracts, quotes, or

product shipments

Monitoring service requests or opportunities over time

In practice, the benefits of the policies often are not realized because the policies are not consistently enforced. This may be due to the large number of processes or to the dynamic nature of the information being monitored to enforce the processes. Siebel Workflow uses as its basic model the processes organizations use in their sales, marketing, and service departments that determine business workflow. You can use Siebel Workflow to ensure consistency and adherence to agreements through the automatic enforcement of business policies and procedures. Siebel Workflow is a customizable business application providing the capability to manage and enforce your business processes. SIEBEL WORKFLOW DEFINATION Siebel Workflow is a powerful interactive software tool automating how organizations handle their workflow processes. Siebel Workflow works with all Siebel eBusiness Applications.

Enforcing Business Rules Using Workflow
• •

Companies typically follow particular business practices, for example: Ensure that response time objectives are met for customer callbacks and open service requests Define policies for reviewing important processes like contracts, quotes, or product shipments Monitor service requests or opportunities over time In practice, the benefits of the policies often are not realized because the policies are not consistently enforced

• •

Siebel Assignment Manager allows sales and service organizations to effectively assign the most qualified people to specific tasks. Assignment Manager accomplishes this function by matching candidates to predefined and user configurable assignment objects. To assign the most qualified candidate to each object, Assignment Manager applies assignment rules that you define. To define assignment rules, you select: _ Objects to which each assignment rule applies _ Criteria to be used for each assignment rule _ Values for each assignment criteria _ Skills to match assignment rules, objects, organizations, employees, and positions _ Expertise to weigh skill scores _ Scores for each assignment rule, criteria, and value _ Candidates to be scored using the assignment rule _ Workload rules to balance work across your organization For example, in a sales organization, you may create an assignment rule that score Positions (candidates) based on territory definitions (criteria) for an opportunity (object). In a service organization, you may create an assignment rule that scores employees (candidates) based on product expertise (criteria) for a service request

(object). Using the sum of scores for each assignment rule, Assignment Manager assigns the best candidates for each object.

How Does Assignment Manager Work?
Define a pool of resources that are available for assignment
• •

Positions - assigned to sales work Employees - assigned to service work

Define rules for assigning positions or employees to new work
• •

Assign Opportunities in California to Sales Positions in California Assign Service Requests to the least utilized Service Rep

Assignment Manager compares the pool of resources and work to the rules and assigns the positions or employees accordingly

Siebel Reports provides robust report generation and report viewing capabilities. With more than 100 prebuilt reports, and the ability to use Query by Example to generate ad hoc reports, Siebel Reports provides complete access to critical customer and product information. Siebel Reports go far beyond traditional tabular lists of information to provide, at a glance, summary dashboards, graphical analysis tools, and all of the rich details necessary to make rapid, informed decisions. This application is required for all customers that use the Siebel Report Designer included with Siebel Tools. To modify these reports or add new reports, we need to use Siebel Tools and Actuate Developer Workbench You create and modify reports in two locations: _ In Siebel Tools, by creating and modifying Report (and other) object definitions and setting properties within them. These object definitions are executed at run time. _ In Actuate Developer Workbench, by creating and modifying .ROD (Report Object Design) files, which are then compiled and executed. Although changes may be made in Siebel Tools or in Actuate Developer Workbench only, frequently report redesign work requires making changes and additions in both places.

• • • •

Siebel Application Environment consists of A relational database (RDBMS) and a file system, which store business data Clients that access the business data Servers that manage the business data and provide batch and interactive services for clients

Siebel Database Server
• •

Stores the data used by Siebel eBusiness Applications Supports a variety of third-party RDBMSs

Siebel File System
• • • •

Stores all physical files for Siebel applications Correspondence, proposal and presentation templates, and file attachments Compresses files and uses a specialized naming convention Access files only through a Siebel client

Siebel Client
• • • • •

Application used to access data in the Siebel database Can be Dedicated client Mobile client Thin client

Dedicated Client
• • • • •

Is physically connected to the server and database Directly accesses Siebel database and file system Can use batch and interactive services on the server Does not store data locally Is usually a desktop PC

Mobile Client

Operates without a real-time connection to the Server and database

Uses a small subset of downloaded Siebel data stored in a local database on the client machine Periodically accesses the server to synchronize data Is usually a laptop

• •

Thin Client
• • • • • • • • •

May run inside a web browser on the client Connects through the intranet/Internet to the server Uses the server for access to the database and file system Does not store data locally Is deployed as Thin Client for Windows Java Thin Client HTML Thin Client WML (Wireless) Thin Client

Thin Client for Windows

Displays Siebel applications in a standard web browser using an ActiveX control or Netscape plug-in Uses same interface as dedicated client

Siebel Java Thin Client
• •

Displays the Siebel application as a stand-alone Java applet Uses same interface as dedicated client

Siebel HTML Thin Client
• • •

Uses HTML to display the user interface in a standard browser Requires a Web server to generate HTML pages Typically implements the look and feel of the corporate Web site

WML (Wireless) Thin Client

Enables read and write functions to the Siebel database through a wireless connection between a Wireless Application Protocol (WAP) device (such as a mobile phone) and a WAP server

Users can access opportunity, account, service request, contact, order, activity, and calendar data

All Clients
Siebel architecture is designed to be scaleable to support all clients

Component-Based Applications

Siebel applications separate data that specify an application (the application configuration) from the code that executes (the execution engine) The application configuration consists of a set of object definitions that specify the Presentation of the data Business logic Data organization and storage The execution engine runs all Siebel Applications Instantiates the objects that make up the application Provides the User Interface (UI) Generates SQL and interacts with the RDBMS

• • • • • • •

Siebel Repository (.srf) File
• • • •

Is a separate file that contains the application configuration UI objects specify the data presentation Business objects specify the business logic Data objects specify the data organization and storage

Applications Easily Configured
• •

To change an application: change the data, not the executable The Siebel executable builds a Siebel application at run-time according to the object definitions in the repository file (.srf) A single configuration environment, Siebel Tools, is used The .srf is compiled from data in the Siebel development database Developers cannot modify the executable code

• • •

• •

Developers do not write SQL statements, stored procedures, or triggers The executable generates at run-time all required SQL code based on the business and data objects in the repository

Multi-layer Architecture
• • •

Siebel applications are based on a multi-layered architecture Distinct functions are separated in the application Individual layers can be distributed on different machines

User Interface
• • •

Renders the Siebel user interface Manages the user’s interactions Operates on object definitions in the SRF that capture the specific user interface for the application

Object Manager
• •

Provides for consistent object behavior for all Siebel business objects Operates on object definitions in the SRF that capture the specific business logic for the enterprise

Data Manager
• •

Maintains a view of the data independent of the actual target RDBMS Allows the Object Manager to function independently of the specific target RDBMS Generates in real-time the SQL to access the business data Operates on object definitions in the SRF that define the database schema Uses the Data Exchange Layer to communicate with a specific data source

• • •

Data Exchange Layer
• • • •

Handles the interaction with a specific target database Understands the details of how the data is physically stored Delivers data to the upper layers in a consistent efficient manner Uses the most efficient API for the target database

• •

Tunes general SQL statements for the target database Typically implemented as a separate DLL for each target database

Deployment Options
• •

Multi-layer architecture allows managers to reside on different machines User Interface, Object, and Data Managers all reside on the dedicated and mobile clients Object and Data Managers reside on the server for thin clients

User Interface also resides on the server for HTML thin clients

A single Siebel application can be deployed in multiple client configurations

Configure Once, Deploy Everywhere

Because of the separation of the application configuration, a single SRF file can be used with different clients

Standards-Based Interfaces
• • • •

Enables interoperability at each tier Client-side interfaces for simple UI integration Server-side interfaces for real time business object integration Data manager-side interfaces for efficient bi-directional bulk data transfer based on record set operations

Siebel File System
• • •

Shared directory that stores compressed files used by Siebel applications Supports direct read/write access by dedicated and mobile clients Supports access through Siebel Servers for thin clients

Siebel Repository (.srf) File

Compressed object definitions that define the application look, behavior, and data Interpreted by the Siebel application engine at run time

Configuration (.cfg) File
• • •

Contains initialization settings for the application engine such as: Gateway Server Enterprise Server

• • •

Application or server component Repository (.srf) file Database Server (DataSource)


Encompasses the tables and indexes used to store data for Siebel eBusiness applications Defines the physical database schema Siebel database stores data only All business logic is captured in object definitions in the business objects layer Data model must be robust enough to support varying forms of the business logic Supports adding new fields and tables

• • •

Supports modification of the form of a relationship Understanding the Physical Data Model
• • • • • • • • • •

In order to develop and install a Siebel application, you need to understand What data is stored in the Siebel database The pieces that make up the Siebel database The rules and policies for using those pieces The consequences of those rules and policies The pieces to be understood Tables Columns Indexes User Keys

Tables in a Relational Database
• •

Consist of multiple columns that can each store at most a single value No repeating groups are permitted

Primary Key

• •

Is a column that uniquely identifies each row in a table Is named, by convention, ROW_ID for every Siebel database table


Contains a Siebel-generated identifier that is unique across all tables and mobile users Is the basis for Siebel applications maintaining referential integrity Database referential integrity constraints not used Is managed by Siebel applications and must not be modified by users

• • •

• •

Over 1000 tables in the database Three major types: Data, Interface, and Repository

Data Tables
• • • • • • • •

Store the user data Business data Administrative data Seed data Transaction data for mobile users Are populated and updated By the users through the Siebel eBusiness applications By server processes such as

Enterprise Integration Manager for bulk importing and exporting of data Assignment Manager for automatic assignment of newly created records


• •

Have names prefixed with S_ Are documented in the Siebel Data Model Reference

Prominent Data Tables

Main tables storing data for the major business entities

Tables For Visibility

Tables for storing employee, position, responsibility, and organization data

Interface Tables
• • • •

Are a staging area for importing and exporting data Are used only by the Enterprise Integration Manager server component Are named with prefix EIM_ Are documented in the Interface Tables Reference

Repository Tables
• •

Contain the object definitions that specify one or more Siebel applications Client application configuration

UI, business, and object definitions

• • •

Mappings used for importing and exporting data Rules for transferring data to mobile clients Are edited using Siebel Tools

User Key
• •

Specifies one or more columns that must contain a unique set of values Prevents users from entering duplicate records based on the user key


Are a separate data structure that stores a data value for a column and a pointer to the corresponding row Are used to retrieve and sort data rapidly May include multiple columns

• •

Can be created by configurators (custom indexes)

The Configuration Process for Siebel is done by using Siebel Tools. Siebel Tools is a Siebel software configuration toolset used by qualified developers to perform declarative software development; that is, the creation and modification of object definitions and their properties. It enables developers to reconfigure and extend Siebel Applications.

Tailoring the User Interface

Developers tailor the standard Siebel screens, views, and applets to better support users’ business needs

Siebel Business Entities

Siebel standard applications are built upon a set Siebel business components that implement a defined business logic

Tailoring the Business Logic

Developers also tailor the application by modifying the definitions of the business components to implement the business logic appropriate to the users’ organization

Extending the Data Layer
• •

Siebel applications are delivered with a defined set of database tables Developers may tailor the application by extending the set of database tables in a limited and controlled manner

Configuring a Siebel Application

Configuring is the process of modifying a standard Siebel application using Siebel Tools to meet business needs Object definitions are edited and created Developers don’t modify code in siebel.exe Developers don’t write SQL directly Use existing object definitions in the standard repository whenever possible Ensures that a new configuration can be upgraded with minimal effort Modify definitions as required rather than creating new ones Creating new object definitions can lead to a vast amount of redundant configuration Do not delete unused object definitions Other object definitions may reference them

• • • • • • •

• •

Modifying the Application UI

To make changes to the look and feel of an application, modify the appropriate UI layer definitions Do not modify the underlying business object layer definitions

Modifying the Business Logic

To make changes to the business logic of an application, proceed in a bottom up fashion Edit the data layer definitions (if necessary) Edit the business object layer definitions as required Then edit or create the UI layer definitions to expose the changes

• • •

Develop on the Local Repository
• • •

Always make changes to the object definitions in the local repository Cannot undo or back out changes when made directly on the server Changes made directly on the server are immediately available to other developers

Incomplete changes on the server will cause problems

Use Siebel supplied mechanisms to copy definitions between server and local databases

Set Up a Developer
• • • • • • • • •

To set up a developer as a configurator: Install appropriate server and client software (as in a previous module) Install Tools client Create the developer Create a database user login Generate the local database template Extract the local database Initialize the local database Populate the local database

When we start a Siebel application
o o

The .cfg file is read from the …\bin directory Given the info in the .cfg file, the appropriate .srf file is read


A connection is established to the database specified The .srf file is compiled to the …\objects directory

Two activities occur when we first start a Siebel Application
o o

Siebel reads a configuration file Siebel reads the repository file identified in the configuration file

.srf file

A single file that contains object definitions in a compressed, binary format Read at runtime and provides faster access to the object data than would be achieved if reading the definitions from the database The Siebel application reads the info stored in the .srf file on demand as different parts of the application are executed. Once the definition is read from the .srf file, it is kept in memory.



.cfg file

Is provided for EACH Application. One single repository file is SHARED by

all Vanilla Siebel Enterprise Applications.

Definition of Siebel Tools Allows customizing of underlying data configuration as well as data presentation configuration. Data configuration determines what SQL is sent to the database. Siebel generates the SQL and it cannot be directly modified. The Siebel executable is not modified (in creating a custom Siebel application), only the files it reads are changed (.cfg, .srf, etc.) The kinds of information contained in the .cfg file are
o o o o o

Siebel application to run Data sources available to application Repository file to use Application title to display in splash screen Application title to display in application window

Repository file

The repository file is a compiled file which contains the data configuration and the data presentation configuration constructed by the developer. Layers to the Siebel Architecture are 1. User Interface Objects 2) Business Objects 3) Data Objects 1) The Data Objects layer

Provides a layer of abstraction over the RDBMS, insulating the application and developer from database administration and restructuring. Contains Data Object Definitions such as ‘Table’, ‘Column’, and ‘Index’, which directly map to the corresponding RDBMS structure. Properties of these object definitions are somewhat different than those in the underlying RDBMS but do not vary across different RDBMS’.



Difference between configuring and extending You will configure your application by creating and modifying object definitions in the Business Objects and User Interface Objects layer. You will extend your application if you have a requirement to make changes in the Data Objects layer. Intersection table An intersection table represents a many-to-many relationship as two one-to-many relationships (which the underlying RDBMS is designed to handle). There is no RDBMS construct that implements many-tomany relationships directly. 2) Business Objects layer

Consists of Business Object Definitions built on Data Object Definitions and/or other Business Object Definitions (no direct reference to RDBMS structures). Provides the interface to retrieve and manipulate data from the underlying SQL tables. Major object types in this layer: Business Component and Business Object



Business Component


Associates columns from one or more tables in the Data Object layer into a single logical entity. Maps to a main table which provides the most important columns for use in the business component. Is comprised of Fields most of which map to a Column in a Table. Enables relationships with other BCs to be established based on primary-foreign key relationships built-in to the Data Model.


o o

Business Object
o o o

Defines a major area of business functionality Is a collection of business components which are logically related One BC in the collection serves as the master (or driving) BC (by convention, the master BC has the same name as the BO itself) The same BC can be used in different sets of relationships by including it in multiple Bos


3) User Interface Objects layer
o o o

Is the visual representation of the underlying BOs and BCs Provides means to customize the screen display Defines the application, screens, views, applets and reports (including UI layout and navigation, all UI controls)

Siebel UI organization
o o

Each applet maps to one BC. Each view maps to one BO and presents a subset of its data; is a collection of one or more applets. Each screen is a collection of views pertaining to a functional area of the application; contains views which map to the same BO. Each application is a collection of screens.




Provides viewing, entry, modification, and navigation capabilities for data in one BC. Usually implemented as a scrolling list table or data entry form.



A View is a collection of Applets, a maximum of 8.

o o

A display panel consisting of a particular arrangement of applets. The Siebel application window displays one view at any one time. You can

change the currently active view by selecting a different view from the view bar or from a submenu of the Screens menu.

o o

A screen is a collection or group of related views. Screens are accessed via the Screens menu or the Tabs in the Tab bar. One or both may exist for a given screen. Screen definitions specify the default view that appears when a tab is clicked. Screens have a single child object type: Screen View



The 3 primary view styles
o o o

List view (comprised of List applet/Entry applet) Detail view (comprised of Form applet/List applet) Explorer view (comprised of Tree applet/List applet)

Sequences for creating object definitions
o o o o o o

BC BO Applet View Screen Application

Steps for creating a BO and BC are

Create a project and/or checkout

o o o o

Create a BC and add to project Add fields to BC Create BO and add to project Associate BC to BO You can create BO definitions before the BC definitions.

Steps for creating view, screen, and application definitions are
o o o o o o

Create a view Create a screen Add view(s) to the screen Create an application (or use an existing one) Associate screens to page tabs Associate screens to screen menu items

Layout the Siebel view sectors 1. 4 2. 5 3. 6 4. 7

JOIN A Join allows data from more than one table to be displayed on one applet. The join declares the destination table (where the data resides). The join specification defines how to get from the source to the destination. The destination column is the name of the destination table’s column the join will be performed on. This is required if the join occurs on a column other than ROW_ID. The source field is the name of the field in the BC that the destination table will be joined on. Steps for creating a join for an existing BC are
o o

Add field (FK) to BC required to construct join – BC: SV field Create a join for the selected BC – BC: join

o o o

Specify the join relationship (FK to PK) – BC: join: join specification Add fields to BC coming from joined table – BC: SV field Modify applets as required (to display joined data) – Applet: edit layout

Why join to a table rather than a BC? A join to a table insures that the joined in data is coming from one other table and one other table only. If Siebel were to join to another BC, there would be no way to insure that the resulting SQL would be a simple join to one other table. This is because the BC fields could be join fields themselves and multi-value fields. LINK
o o o o o

Specifies the relationship between BCs Provides for the display of master-detail or parent-child information Controls what child records are displayed for a parent record Used for 1:M or M:M relationships Allows data from the child BC (foreign table) to return many records associated with the parent (driving or main table)

Steps involved in creating a link are
o o o

Add/identify fields on BCs or intersection table to construct the link Create the link between the BCs – Link: Add BC(s) to BO and specify the link on the child – BO: BO components Create applet(s) and view for display – Applet: and View:


What is the purpose of the link? The link defines which fields in the parent and child BCs relate the two BCs. M:M relationships M:M relationships require an intersection table which stores the foreign keys.


The two types of view drilldown that Siebel supports are 1) Static: Navigation is to a particular view. Configured with Drilldown Object object type (child object of applet). 2) Dynamic: Navigation is to one of several candidate views. Configured with Drilldown Object and Dynamic Drilldown Destination (DDD) object types(DDD is child object type of Drilldown Object). The Hyperlink Field property of the Drilldown Object Definition is BC field underlying list column on which the drill-down occurs. Determines which column is list applet appears blue and underlined. The View property is the name of the view that is brought up when the user drills down (target view). DYNAMIC DRILLDOWN Enables hyperlink navigation to multiple views from the same hyperlink field, depending on the value of a field in the applet’s current record. Siebel will check the value for this field in the current record and navigate to the correct view based on the found value. THREAD BAR & HISTORY LIST The History List is same as the Microsift Internet Explorer History list, to visit previous Views. The thread bar is refreshed when another screen is selected from the tab bar or Screens menu.An entry in the History drop-down list appears indented when a user navigates to a view in a different BO context, and then navigates from that view to another. PICKLIST

Provides for the popup display of a list of valid values for a user to select from Can be bounded (must pick a single value from the list) or not bounded (can type in a single value not in the list) Valid values are entered into the S_LST_OF_VAL table (which can be entered interactively through administration screens)




Visibility provides different users access to different data based on job function and organization

Record Visibility
• • • • • •

Determines the records displayed to a user who has access to a view Depends upon The organization visibility of a business component Whether business component is team-based Whether the business component can be owned The view type

Organizational Visibility

Can restrict record access to users in a single organization or subset of organizations Is determined by the Organization Visibility properties in the business component

Team-Based Visibility

Restricts access to members of a team for those business components with teams Includes Opportunity, Contact, Account

Ownership Visibility
• •

Restricts access to the owner of a record Includes Service Request, Quotes, Contacts

Summary of View Types

20.Siebel Application Architecture
The siebel architecture enables customization through creating or manipulating object definitions . Data Managed in most siebel applications Accounts An organization represented by the buyer associated with an opportunity ( address , type , status,

Industry , …) Opportunity Potential revenue generating event ( revenue , source , lead quality …) Contacts Person associated with an opportunity or account (name , title , address…) Activities Task performed for an account , opportunity , or contact Products Real time accurate product information (description , product line , vendor…)

Account entity and related entities

Accounts have many products and a product can be associated with many accounts (many to many )

• • •

Accounts have many contacts ( one to many ) Accounts have many opportunities ( one to many ) Accounts have many activities ( one to many )

Contact entity and related entities

Contacts can have many products and a product can be associated with many contacts ( many to many )

• •

contacts are associated with single account ( many to one ) contacts have many opportunities and opportunities can be associated with multiple contacts

( many to many )

contacts have many activities ( one to many )

Opportunity entity and related entities

Opportunities have many products and a product can be associated with many opportunities ( many to many )

opportunities have many contacts and contacts can be associated with many opportunities (many to many )

• •

opportunities are associated with single account ( many to one) opportunities have many activities ( one to many )

Creating Object Definitions In The Business Object Layer Goals : Practice mapping object definitions in the business objects layer to the data objects layer in siebel 2000 tools development environment by : - Creating an opportunity business component containing various fields . - Creating an opportunity business object containing the business component. Scenario: one of the functional areas being tracked in the application is opportunities .after identifying the data requirements associated with opportunites ,identify the S_OPTY Table and few of its columns for storing the data in the database. Detailed Instructions :

Start Siebel tools from the Siebel tools 6.0 program group. Log in as SADMIN with SADMIN as the password . Select Connect to Sample Database .

2. create a new project to group the opportunity object definitions in the application.

a. Select Project in the object explorer (OE) b. Add a new record ( Press Ctrl+N) in the Object List Editor (OBLE). c. Properties to set : Name : ABC Opportunity Locked : True 3. Create a Business Component that will be the master business component in the ABC Opportunity Business Object a. Select the Business Component object type in the OE. b. Add a new business component (Press Ctrl+N) in the OBLE. c. Properties to set : Name :ABC Opportunity Project : ABC Opportunity Class : CSSBusComp Table : S_OPTY

4. Add single value fields to the business component , which map to the underlying columns in the S_OPTY SQL Table. a. With the new business component highlighted in the OBLE , Expand the Business Component object type by clicking the + icon in the OE b. Select the Single Value Field object type in the OE.

Enter new records for each field in the Single Value Fields OBLE that appears under the business components OBLE. Parent and child information is displayed between these two OBLEs

d. Select the Single Value Fields OBLE by clicking in the applet. 5. Create new records for each single value fields. The single value fields and their properties are listed below a. (Field 1) Name : Name Column : NAME Required : TRUE Text Length : 100 Type : DTYPE_TEXT b. (Field 2) Name : Description Column : DESC_TEXT Required : TRUE Text Length : 100 Type : DTYPE_TEXT c. (Field 3) Name : Budget Column : BDGT_AMT Required : TRUE Type : DTYPE_CURRENCY

6. Create a Business Object a. Select Business Object in the OE. b. Add a new record C in the OBLE . c. Properties to set: Name : ABC Opportunity Project :ABC Opportunity Query List Business Component : Query List 7. Associate the ABC Opportunity business Component to the ABC Opportunity business object. a. Expand the Business Object object type in the OE. Select the ABC Opportunity Business object in the OBLE. b. Select the Business Object Component object type in the OE to display the Business Object Components OBLE for the selected business object. c. In the Business Object Components OBLE , Add a new record.

1. click the business component field drop down list button. A pick list appears of the available business components. 2. Choose the ABC Opportunity business component then click Pick

CREATING THE USER INTERFACE OBJECT DEFINITIONS TO PRESENT DATA FROM THE ABC OPPORTUNITY BUSINESS OBJECT DEFINITIONS Goal : using the ABC Opportunity business object and business component created in the previous section

Create a List applet,View,Screen and Application to expose information we have defined in the object manager layer. Compile the application Add the View to the responsibility that users are assigned to. Test and debug the Application.

o o o

Creating a Applet : 1. Start Siebel Tools , Logging in as SADMIN

2. Create an Applet . Applets are the visual representations of the underlying business component definitions. a.Select the Applet object type from the OE. b.Add a new record (Press Ctrl+N) c.Set the following properties : Name : ABC Opportunity List Applet Project : ABC Opportunity Business Component : ABC Opportunity Class : CSSFrameList Height : 4 Title : ABC Opportunities Type : Standard Width : 2 3. Create Controls for the Applet a. Expand the Applet object type in the OE to display its child object types.with the ABC Opportunity List Applet highlighted in the OBLE. select the Control object type in the OBLE to display the Controls OBLE . b. A list applet will have atleast an Applet Title and List control is used for displaying the columns containing data .the title contains the Applet title c. The most effective way of creating new controls in a new applet is to copy and paste controls from another similar applet . an appropriate applet to copy and paste , for example ,is the Account Activity List Applet.Select this applet from the applets OBLE. a. Right Click on the selected applet in the applets OBLE to display a popup menu. Select Edit Layout from the popup to invoke the Applet Designer. b. Select Edit – Select All from the menu c. Copy the selected controls to the clipboard by selecting Edit-Copy. d. Close the applet designer by selecting File- Close from the menu.

e. Select the ABC Opportunity List Applet in the applets OBLE bring up the applet designer then paste the controls from the clipboard into the applet by selecting Edit-Paste from the menu. f. Save the applet then close the applet designer.the controls should be listed in the controls OBLE. 5. Add List columns for the List control. The list columns are the individual columns that will be displayed in the list. The list columns will reference the single value fields entered for the ABC Opportunity business component. a.expand the list child object type for the selected applet in the OE the lists OBLE . insert a new record .set the Alphatabsearchfield property of the new record to Name. the List Column object type in the OE to display the List Columns OBLE. d.add the following list columns in the list columns OBLE. e. (List Column 1) Field : Name (Select from the pick list) Display Name : Opportunity Sequence : 1 Text Alignment : Left Type : TextBox Width : 25 f. (List Column 2) Field : Description (Select from the pick list) Display Name : Description Sequence : 2 Text Alignment : Left Type : TextBox Width : 25 g. (List Column 3) Field : Created (Select from the pick list) Display Name : Create Date Sequence : 3

Text Alignment : Left Type : TextBox Width : 25 And so on for the rest of the fields

CREATING A VIEW To create a view that will contain the applet just defined . a. Select the View Object type in the OE. Add a new record in the Views OBLE. b. Set the following properties : Name : ABC Opportunity List View Project : ABC Opportunity Business Object : Opportunity Drop Sectors : 2 and 6 Screen Menu : True Sector 0-7 : ABC Opportunity List Applet ( have to define in each sector ) Title : My Opportunities CREATING A SCREEN To create a screen that will group the opportunity views for the ABC Sales Application. a. Select the Screen object type in the OE. Add a new record in the OBLE. b. Set the following properties : Name : ABC Opportunities Screen Project : ABC Opportunity Viewbar Text : Opportunities Add existing views to the screen. a. Expand the screen object type in the OE. With the newly entered screen highlighted in the OBLE.Select the screen view object type in the OE to display the screen views OBLE. b. Select the screen views OBLE and Add a new record.


Associate the view created above to the screen. Set the following properties:

View : ABC Opportunity List View Menu Text : &My Opportunities Viewbar Text : My Opportunities Sequence : 1

Specify the default view for the screen. a. Select the Screens OBLE b. Set the following property for the ABC Opportunities Screen : View : ABC All Opportunity List View Menu Text : A&ll Opportunities Viewbar Text : All Opportunities Sequence : 10

CREATING A APPLICATION: a. First create a project in the Projects OBLE that will contain the Application object definition.

Name the project ABC Sales then lock it by clicking in the locked property. b. select the Application OE , Add a new record in the OBLE. c. Set the following properties : Name : ABC Sales Project : ABC Sales ADDING TOOLBARS TO THE APPLICATION : a. Expand the Application object type in the OE. With the new application above highlighted select the Application Toolbar object type in the OE b. Add a new record in the Application Toolbars OBLE, then set the following properties to add the main toolbar to the application : Name : Main Sequence : 1 c. Add a second record Name : History Sequence : 2 d. Add a third record Name : CTI Sequence : 3

CREATING A REPOSITORY FILE (SRF) : a. Select Repository –compile objects from the menu to display the Object Compiler . b. Specify the following values Project : choose all the projects Siebel repository file: <compile_directory_for_srf>\abc.srf Language : Leave No translation c. click the compile button.


a. Start Siebel Sales Enterprise from the Siebel Enterprise Applications 6.0 program. Select Screens – Application Administration – Views from the menu. b. The Views Administration view will appear .choose Add new record from the Edit menu. Set the following properties View Name : ABC Opportunity List View Description : ABC Company View c. With the view added , you need to give the ABC Field Sales Rep access to the view. d. Select Screens-Application Administration-Responsibilities from the menu e. Select ABC Field Sales Rep in the Responsibilities applet to display the views associated with this responsibility. now add the employees you want to give access to this screen for example BSTEVENS Etc. f. click on the views applet to make it active g. choose Add new record .

double click the ABC Opportunity List View in the association list. This adds the view for the ABC Field Sales Rep.

In the same procedure create other screens for Accounts ,Contacts ,Products , Activities & Quotes And the associate them with the ABC Sales Application by doing this we will have 6 different screens in the ABC Sales Application. CREATING A CUSTOM APPLICATION’S .cfg FILE CALLED abc.cfg a. Using Explorer move to the ..|bin directory of Siebel 2000 installation. b. Make a copy of Siebel.cfg in this directory. Name the new file abc.cfg. c. Open the abc.cfg file into a editor d. Change the Repositoryfile parameter into "abc.srf" and make the following changes RepositoryFile = "abc.srf" ApplicationName = "ABC Sales Enterprise" ApplicationTitle = "ABC Sales" ApplicationSplashText = "ABC Sales"

CREATING A PROGRAM ITEM FOR ABC Sales Enterprise application in the Siebel Enterprise Application 6.0 Group. a. Copy and Paste , the Siebel Sales Enterprise Program item. b. Name the new program as " ABC Sales Enterprise" c. Modify the properties of the new program item. Select the program item then choose File - Properties from the menu to display the properties dialog. d. select the shortcut tab e. In the target field include the name of the abc.cfg file using the /c option. For example siebel.exe/c acb.cfg

CREATING A JOIN TO DISPLAY DETAIL INFORMATION: Goal : -To create a join and join specification object to retrive detail account information into a business component.

-Expose the specified account table columns in the two business components . -Update the appropriate contact and opportunity applets to display the account data in the GUI Detailed Instructions : a. Start Siebel Tools. b. Using the Types tab,SELECT AND EXPAND THE table object type in the object editor (OE) c. Select S_CONTACT table in the Tables OBLE. d. Select the Column child object type in the OE to display all columns for S_CONTACT. e. Find the foreign key column in the S_CONTACT table that refers to the S_ORG_EXT table. Use the Foreign Key Table Property to search the columns. f. Expand the Business Component object type in the OE then select the ABC Contact business Component in the Business Components OBLE. g. Select the Join child object type in the OE to display the Joins OBLE for the selected business Component. h. Insert a new record in the Joins OBLE. Set the following properties: Table : S_ORG_EXT Outer join flag : True i. select the Single Value Field object type in the OE.Enter the new field that will be required to perform the join and the fields that are returned from the joined table. To perform a join ,we need to add a field to the business component ,which maps to the foreign key column (PR_DEPT_OU_ID) in the table (S_CONTACT). This field is used to construct the join specification .you also need to define the fields from the child table(S_ORG_EXT) we wish to retrieve into the business component .which will eventually display these columns in the appropriate applet. Enter a field for the foreign key column in S_CONTACT,set the following properties:

Name : Account Id Column : PR_DEPT_OU_ID Type : DTYPE_ID J. Enter a new field for the account name.enter the properties of this field in the order below. Be sure to specify the join property before specifying the column property. Name : Account Name Join : S_ORG_EXT Column : Name Text Length : 100 Type : DTYPE_TEXT New field Name : Account Location Join : S_ORG_EXT Column : LOC Text Length : 50 Type : DTYPE_TE XT a. Create the join specificationfor the join relationship between the ABC Contact business component and the S_ORG_EXT table. Expand the join object type in the OE with the newly created join selected in the OBLE. Select the join specification child object type in the OE then insert a new record. This new record is used to define how the join is created between the S_CONTACT table and s_org_ext table. Set the following properties : Name : Account Id Destination Column : ROW_ID Source Field : Account Id b. Add the above columns to the ABC Contact List Applet. c. Save the Applet that will be created . d. Select repository – compile ABC Contact project for ABC Sales Application.

e. Test the Application .Accounts info should be displayed in the Contacts View. Info from Accounts in Contacts Screen.

Deploying Siebel Application on the Web
Siebel Thin Client Siebel Thin Client is a deployment option for customers who want to deploy their existing Siebel eBusiness Applications over the Internet or on their corporate intranet. Thin Client is a deployment option because customers do not have to perform additional configuration using Siebel Tools. The application configurations that were completed for dedicated clients can also be deployed through Thin Client. Deployment Steps 11 Deploying Siebel Thin Client is a straightforward process. You must

install the dedicated client for server administration and for debugging purposes, customize your Siebel application, install and configure Siebel Thin Client , and then test your Siebel application. To Deploy Thin Client 1. Install and customize a Siebel eBusiness Application, such as Siebel Sales. a. Use Siebel Tools to customize the applets and views within the selected Siebel eBusiness Application. b.Install the dedicated client. 2. Install Siebel Thin Client. 3. Configure Siebel Thin Client. NOTE: The tclient.htm and start-up files are automatically configured during the Siebel Server installation. Neither administrator nor users should need to configure the tclient.htm or files. _ If thin client users will run the Siebel application using a Netscape browser, and you need to edit start-up parameters, edit _ If thin client users will run the Siebel application using the Internet Explorer browser, and you need to edit start-up parameters, edit tclient.htm. 4 Test your Siebel application by viewing it with Siebel Thin Client for Windows. 5 If necessary, you can run the application using the dedicated client if you need to debug the customizations in your Siebel application.

Developing Siebel .COM Applications

Siebel .COM Applications and HTML Thin Client 1 The Siebel .COM applications are built upon a technology called HTML Thin Client, which allows you to develop and deploy Web applications based on Siebel object definitions. Users of HTML Thin Client technology can:

_ View dynamically generated Web pages that include data from a Siebel database. _ Add data to a Siebel database. _ Perform queries, sorts, and other operations that users may have performed using the standard Siebel dedicated client. Because of the interaction between the Web application and these various serverside components, HTML Thin Client is part of a larger system that also includes Application Object Manager, a database server, and a Web server. Figure 1-1. Architecture of Web Applications and HTML Thin Client

Key Components of the System 1 The key components of this system are: _ Siebel tags. A Siebel-developed library of tags, each of which can be embedded within normal HTML files. Tags are placeholders for Siebel-specific content. You use tags as placeholders to insert controls or other user interface objects, such as views, applets, or screenbars, into Siebel templates. Tags can also be used to control layout algorithmically, as in the case of iterator tags.

_ Siebel templates. HTML pages that contain both standard HTML tags and Siebel tags. Templates provide layout and formatting for objects created in Siebel Tools. _ Siebel Web Server Extension. A library that runs inside a Web server to direct user requests to the appropriate Application Object Manager service. _ Siebel Web Engine. The interpreter of Siebel templates, this service inside Siebel Server dynamically generates the HTML pages that make up the application’s user interface. _ Application Object Manager. The component that passes Siebel object definitions and data between the database and the Siebel Web Engine. These object definitions provide the application logic and enable the user to interact with the database. Understanding Siebel Templates 1 A Siebel template is a special kind of HTML file that defines the layout and formatting of elements of the user interface (such as views, applets, and controls). Dedicated client applications do not require this definition because the layout and formatting is defined by the client application on the user's desktop. Web browsers, on the other hand, require HTML to define the layout and formatting of a page. Siebel Web Templates provide this HTML layout information to the Siebel Web Engine when rendering Siebel objects in the repository definition of the application. While templates define the layout and formatting of HTML applications, the application definition is done in Siebel Tools.. For example, to add an applet to an existing view in a .COM application, you would use Siebel tools to create the applet, and then map this new applet to an Siebel Applet tag in the template associated with the existing view. File Naming Convention 1 By convention, the filenames of Siebel templates take the .SWT extension, for

example, CCPageContainer.SWT, CCHomePageView.SWT, and so on. This Siebelsuggested convention is an abbreviation for Siebel Web Template. Types of Templates 1 The templates you’ll modify for your .COM applications fall into one of several groups, depending on the purpose of the template or what the template contains. _ View template. Used for displaying a view; specifies where to layout applets and other page-level controls on the view, and what the formatting of the view should be. _ Applet template. Specifies where to layout fields and controls for an applet. Also specifies the formatting for elements within the applet. Applets can have more than one mode. The types of modes are: _ Base: Read-only mode for displaying but not editing data. Views appear by default in Base mode. _ Edit: Mode for editing an existing record. _ New: Mode for creating a new record. _ Query: Mode that allows you to perform a query-by-example (QBE). Each mode has a corresponding template. Some templates, such as edit-mode templates, can be shared by many applets. _ Web Page template. For pages that are not in an applet or view context, for example, login and error pages. _ Page Container template. Used as container pages for view templates. The overall purpose of the pagecontainer is to provide a structure for the overall application. There is one pagecontainer per application, but web page templates can be flagged to not use it (for example, the login page cannot use the page container). _ Formatting templates. Templates that allow you to create custom HTML types, such as specialized controls. list items, and page items. These templates have the extension .SWF (Siebel Web Format).

Your application can contain other pages, of course, that don’t contain any Siebel tags. For example, you may have an About This Application help page. However, this page, by definition, is not a template. Configuring the .COM Application 1 Using Siebel Tools and a text editor or HTML authoring tool, the Web application developer does the following: 1. Using Siebel Tools, configures the business objects, applets, views, and all of the other normal elements of a Siebel application. Normally, you will be altering the definitions of objects in an existing application. Compiles into an .SRF, and tests the application using the dedicated client. 2. Associates the views, applets with .SWT files. 3. Modifies or create new .SWT files as necessary to integrate the appropriate corporate layout and formatting. 4. In Siebel Tools, maps the applets, fields and controls to the placeholders in the appropriate template. 5. Compiles the repository changes into an .SRF file. 6. Tests the application. 7. Deploys the application. Deploying the .COM Application 1 The site administrator does the following: 1. Copies the template files to the webtempl directory in the Siebel Server installation. 2. Copies all new HTML and images to the public directory on the Web server machine. 3. Adds a link from the existing Internet or intranet site to the application. Running the .COM Application 1 When a user interacts with a .COM application (by clicking a button or hyperlink in a browser window), the Siebel Web Engine does the following:

1. Reads the repository definition of the application. 2. Retrieves relevant data from the database through the Application Object Manager. 3. Retrieves the repository object definition of the view and applet to display the data within it. 4. Reads the .SWT file and maps the retrieved data and applet and view information to the corresponding placeholders in the .SWT file. 5. Delivers the HTML page (including the standard HTML and the retrieved data) through the Web Server, back to the user’s browser for display as a Web page. How Siebel Web Engine Generates the Web Application 1 Users of a .COM application interact with the application through their Web browsers. The interface they see is a set of Web pages dynamically generated by Siebel Web Engine by matching the repository definition of the application with the templates customized by the Web application developer. The following picture provides a graphical depiction of the relationships between the various objects in a .COM application. These user interface elements are the same as in the traditional client; however, in the .COM application, you are not limited to eight sectors on a screen for the layout.

What Happens When a User Enters a URL 14

The figure illustrates what happens when a user enters the application’s URL, either by typing the URL and pressing ENTER or, more usually, by clicking a link. The following steps describe the process illustrated in Figure.

1. A user with a browser sends the URL of your application to your Web server. The user can do this by typing in the URL or clicking a link on your main site. An example of this URL is: start.swe?SWEView=ISS+Service+Request+View 2. The suffix of this URL (.swe) tells your Web server to direct the request to the Siebel Web Server Extension. For instance: start.swe?SWEView=ISS+Service+Request+View 3. The Siebel Web Engine matches the virtual directory specified in the URL. 4. The Siebel Web Engine reads the eapps.cfg file to find out: _ Which Gateway Server to direct the request to, and at which port _ The name of the Application Object Manager server (in case Resonate Central Dispatch is not being used) 5. The Web server directs the request through the Gateway Server to an available Siebel Web Engine and Application Object Manager server.

6. Application Object Manager determines the configuration file corresponding to the particular service (as set in the Configuration File component parameter for this Object Manager service). For example, the Configuration File parameter might be set to esales.cfg. 7. Application Object Manager reads the configuration file (located in the Siebel Server’s \bin directory) to find out the application name and the name of the .srf file. For example, one of the parameters in the configuration file may identify the application name as Siebel eSales—Thin and the .srf file as siebel.srf. 8. The ApplicationName parameter tells Application Object Manager which application definition (from the .srf file in the \objects directory) to use for retrieving data. 9. The Siebel Web Engine retrieves data from the database and the repository definition of the views and applets through the Application Object Manager. 10. From the request, the Siebel Web Engine determines which .swt file to use. It will then parse the .swt file for the Siebel tags. 11. The Siebel Web Engine generates the HTML file based on the .swt file, the Siebel data, and the repository definition of the views and applets, and sends it back to the Web server. 12. The Web server receives the generated HTML file from the Siebel Web Engine and passes it back to the browser. How Siebel Web Engine Generates the Web Application The following figure shows what one page from a sample Web application looks like in the user’s browser. This particular page consists of several applets. The following section takes a closer look at the template used to generate the My Orders applet.

Figure Sample Web Page

Enterprise Application Services
Siebel CRM
With over 250 consultants the Siebel group, part of the Oracle universe, has expertise in delivering services on Siebel Call center, Siebel sales force automation, Siebel e-finance, Siebel e-communication, Siebel einsurance for Financial services, telecom, Hi-tech, and life sciences customers. Highlights

• • • •

In-depth expertise in providing Siebel services for financial services and Hi-tech industry Proven implementation methodology, Siebel upgrade methodology based on an on-demand model 7500 man-months of project experience, implementations and global rollouts, upgrades and offshore maintenance Extension of core capabilities into Siebel testing through partnership with Mercury Interactive & Silknet and EAI through partnership with Vitria, TIBCO, webMethods, IBM MQ Series and SeeBeyond.


¿Qué tiene de especial Siebel Analytics 7?

En este artículo, un fan de Siebel nos dice las principales diferencias de Siebel Analytics frente a otras herramientas como Business Objects o Cognos: 1- No es una herramienta, sino una aplicación. Es decir que viene ya con una funcionalidad importante preconstruida, lo que acortaría los proyectos. 2- No se limita a analizar el pasado, si no que también se ocupa del futuro

3- Incluye conocimiento sectorial, de los siguietnes sectores: automoción, comunicaciones, consumo, clínico, energía, financiero, seguros, médico, farma, retail o medios. Estos son un par de pantallazos:

Client for Siebel Systems Installation, Configuration, and Problem Determination Guide

Index ACEHILPRSTVW A architecture (91) C call center configuration (121) call context (94) call variables (93) CallPath Enterprise command parameters (109) commands (108) configuration parameters (101) event data fields (116) events (112) CallPath Enterprise call data (132) CallPath Enterprise Client for Siebel Systems architecture (90) configuration client (99) server (100) customization (104) installation (89) introduction (81) overview (82) product information (83) CallPath product family (84) command parameters (110) configuration parameters (102) configuring a call center (120) CTI commands (106) CTI parameters (107) customization (98) E event data fields (117) event fields (115) events (113), (114) H hardware requirements (85) I installation CallPath Enterprise Client for Siebel Systems (95) checklist (97) verifying (118) L limitations, switch (124) P parameters command (111) configuration (103)


requirements hardware (87) software (88) screenpop (92), (105) software requirements (86) switch limitations Alcatel OmniPCX (125) Aspect CallCenter (126) Avaya Communications DEFINITY G3 (127) Avaya Communications INDeX (128) Ericsson MD110 (129) Nortel DMS-100 (130) Nortel Meridian 1 (131) troubleshooting (123) verification test (122) verifying installation (119)



workstation setup (96)


The CallPath Enterprise Client for Siebel Systems runs in the Siebel application space. It is responsible for:
• • Sending telephony events received from CallPath Enterprise Client for Siebel Systems to the Siebel eBusiness application. Responding to commands sent from the Siebel application, as indicated in Figure 2.

Figure 2. CallPath Enterprise Client for Siebel Systems interfaces: Siebel applications and CallPath Enterprise Client

The Siebel application is primed with the IBM-provided definition and configuration files. CallPath Connection for Siebel Systems/CallPath Enterprise Client for Siebel Systems implements these driver-level commands described in Table 4. Command names are defined by CallPath Enterprise Client for Siebel Systems. When CallPath Enterprise Client for Siebel Systems is installed, a sample definition file is used to import the new commands into Siebel. Siebel defines two layers of command definitions, one specific to the Siebel application and another which maps the Siebel business logic to driver commands.
Note: CallPath Enterprise Client for Siebel Systems provides a preliminary definition file. You will need to customize it to suit your business needs. See CallPath Enterprise Client for Siebel Systems customization for more information.

Screenpop and call variables

When a call is passed to the Siebel application, all of the call variables available with a call are passed to the Siebel application as a set of key/value pairs. These variables are used by the Siebel application to execute the proper screenpop. For example, the key/value pairs will appear to the Siebel application in this format:
ANI=value DNIS=value ... Call context

When an agent using the Siebel application receives a call or when a call is transferred, CallPath Enterprise Client for Siebel Systems saves and restores, or transfers, the current call context. Call data is passed from agent to agent using CallPath Enterprise call data. See Appendix B, CallPath Enterprise call data for format and restrictions.
Note: Whether the call is transferred locally or to a remote site, the call context data remains with the call. Configuring a call center for verifying the installation Note: In the following instructions the assumption is made that you are using drive C:. If you are not using drive C:, substitute the name of the drive that you are using.

Attention: You must first perform the installation described in Chapter 2, Installation. To properly configure the Siebel Call Center, do the following:
1. Start the Siebel Call Center. 2. Logon as an Administrator, using the following settings: 3. Userid: sadmin 4. Password: sadmin 5. Connect to: Sample 6. 7. In the window that appears, select Screens-->Application Administration-->List of Values-->List of Values Explorer. In the left window panel, List of Value - Types, scroll to find the CTI_MIDDLEWARE entry. Expand the CTI_MIDDLEWARE entry to reveal the Values sub-item. Select the Values sub-item. In the List of Values window panel, right-click and select New Record to add a new entry. Enter IBM CallPath in both the Code and Display fields.

8. 9.

10. Repeat Steps 4 and 5 for the entry CTI_ACD_QUEUES. Enter a single ACD queue applicable to your local call center in both the Code and Display value fields. 11. If necessary, repeat Steps 4 and 5 for the entry CTI_SWITCHES and enter the new telephone switch name (for example, Nortel DMS-100 CO) in both the Code and Display Value fields.

12. Select Screens-->Call Center Administration-->CTI-->All Configurations. 13. From this window, right-click and select New Record to add a new entry. 14. Specify the following values for the new configuration entry: 15. Name: <any appropriate name> 16. Switch Name: <Select an appropriate switch from the drop down list> 17. Middleware Name: IBM CallPath 18. Middleware Host: <hostname of CallPath Enterprise Server> 19. Middleware Port: <port of CallPath Enterprise Server> 20. With the new entry still selected, click the Import button.

The Import CTI Configuration Data dialog box is displayed.
21. Select the Import CTI Configuration Parameters check box, and click Browse. 22. Find the csemsmpl.def and csemsmpl.ini files located in the c:\cseb\conf directory. 23. Double-click on the csemsmpl.ini file name. 24. Select the Import CTI Configuration Commands and Events check box, and click Browse. 25. Double-click on the csemsmpl.def file name. 26. Click OK. 27. Before importing the definitions contained in csemsmpl.def and csemsmpl.ini, the message "The current CTI commands or configurations will be deleted before importing. Do you want to proceed?" is displayed. Click Yes. 28. Once the import is complete, with the new configuration still selected, click on the Configuration Parameters and Telesets view on the left side of the screen. 29. In the Configuration Parameters window, edit the Driver:ServerName parameter value to specify the appropriate CallPath Enterprise Server for your call center environment. 30. Select All Telesets view. 31. In the Telesets, Agents, and Extensions windows, add entries for a single agent and teleset appropriate for your call center environment. Refer to the Siebel CTI Guide for specific details. This agent and teleset is used to test the installation. Note: When using the current sample Siebel database, do the following: 1. Select the appropriate CTI configuration in the Telesets window. 2. In the agents section, right-click the mouse button, and select New Record.

3. Select an employee name. Hint

Aldo Lera, Pat Darcy, and Susan Smith are names that are known to work for testing purposes.
4. Tab over to the Agent Login field and enter the login number. 5. Tab over to the Password field and enter the password.

This information is available from your CallPath administrator.
6. 7. Click Pick. In the Extensions window, right-click the mouse button and select New Record.

8. Enter the extension number, any applicable agent position ID, and the ACD queue pilot number. 9. Close the Siebel window.

CallPath Connection for Siebel Systems CTI commands and parameters Table 4 Table 5

lists the CallPath-Siebel CTI commands.

defines the parameters associated with these commands. A Yes in the Any K/V column indicates that the command allows you to attach any user defined key/value pair to the call. An asterisk (*) before a parameter name indicates that the parameter is optional for this command.
Table 4. CallPath Connection for Siebel Systems CTI commands Command AgentBusy Any K/V Parameter Description This specifies that an agent has completed a call and requires wrap up time before taking another ACD call. The agents are not available to take ACD calls until they choose to be available for more ACD calls. On the Avaya Communications DEFINITY G3 switch, this corresponds to After-Call-Work. This specifies, typically, that an agent is not engaged in call center work. The agents are not available to take ACD calls until they choose to be available for more ACD calls. On the Avaya Communications DEFINITY G3 switch, this corresponds to Aux-Work. The optional parameter ReasonCode specifies the reason why the agent is not available to take ACD calls.

AgentId AgentPin ACDQueue


AgentId AgentPin ACDQueue *ReasonCode


AgentId AgentPin ACDQueue

This corresponds to either AgentReadyImplicit or AgentReadyExplicit, depending on configurations on the CallPath Enterprise Server and the telephone switch. Refer to CallPath Enterprise Planning, Installation, and Problem Determination Guide for more information on the configuration of Agent Ready Behavior on the CallPath Enterprise Server.


AgentId AgentPin

This specifies that, after an agent completes an ACD call, the agent is not available to take another ACD call and must explicitly choose to be


available for more ACD calls. On the Avaya Communications DEFINITY G3 switch, this corresponds to Manual-In. This specifies that, after an agent completes an ACD call, the agent is available to take another ACD call. On the Avaya Communications DEFINITY G3 switch, this corresponds to Auto-In. Answer the incoming call. Associate user data to the current telephone call. Please note that this data is retrievable by any agent participating in the same telephone call. Cancel call forwarding.


AgentId AgentPin ACDQueue

AnswerCall AssociateCollectedInfo


CancelForward ChangeWorkState

AgentId AgentPin ACDQueue *ReasonCode

Toggle agent state between being available and not available to receive calls from the ACD queue. If the telephone switch is configured to require a reason code when an agent changes to a not ready state for ACD calls, the ReasonCode parameter must be specified. Complete the conference. The caller, the agent, and the conferenced party can now talk to each other at the same time.



Complete the consultative transfer. The current agent is disconnected and the caller is connected to the party to whom the call was transferred.


*Queue *Queue1

Specifies that the sending of ACDUpdateEvent for the queues specified as parameters to the command

... *QueueN

should be discontinued. Any number of queues can be specified per call to the command as long as the parameter is prefixed with the key word Queue.
Disconnect (release) the current call.

DisconnectCall EnableACDUpdates *Queue

*Queue1 ... *QueueN

Specifies that ACDUpdateEvent should be sent with information for the queues specified as parameters to the command.

The ACDUpdateEvent can be used in Siebel to pass any relevant queue information on to the agents by updating the "Message Broadcast Bar" located at the bottom of the Siebel client screen. Creating such a broadcast message may require the use of Siebel Visual Basic in order to write records to the appropriate Siebel business object. Any number of queues can be specified per call to the command as long as the parameter is prefixed with the keyword Queue.



Forward calls to the destination specified by PhoneNumber. Only Unconditional Forwarding is supported.
Put the current call on hold.

HoldCall InitConference Yes

*SaveContextData PhoneNumber *CallNotifyText

Begin conference call. The caller is put on hold and the current agent dials the number specified by PhoneNumber.

The CallNotifyText parameter conveys status information to the second agent.
InitTransfer Yes

PhoneNumber *CallNotifyText

Begin consultative transfer. The caller is put on hold and the current agent dials the number specified by PhoneNumber. The CallNotifyText parameter conveys status information to the second agent.


AgentId AgentPin ACDQueue *DefaultStateWithoutChange *StateToChangeTo

Log the agent on to the ACD queue.


AgentId AgentPin ACDQueue

Log the agent out of the ACD queue.



PhoneNumber *CallNotifyText

Place the outbound call to the destination specified by PhoneNumber. The CallNotifyText parameter conveys status information to the second agent.



PhoneNumber *CallNotifyText

Initiate a mute (blind) transfer of the caller to the destination specified by PhoneNumber. The CallNotifyText parameter conveys status information to the second agent.


Retrieve the original call initiated using the InitTransfer or InitConference.



Ask for the data that has been previously associated with the current telephone call. The data comes back through the CollectedInfoEvent (with the same RequestId). Allows the agent to "flip" between existing calls on a particular phone line. This feature can be used on telephone switches that support multiple calls on the same DN. For example, on the Avaya Communications DEFINITY G3 switch, the agent can receive different calls, from different callers, on the same DN.


... SelectCall5

When a call is selected, the Siebel CTI toolbar, menu, or both reflects the state of that call. Switching to a different call changes the toolbar, menu, or both to reflect the state of the new call. Switching between calls (and thus the appearance of the corresponding CTI toolbar or menu items) normally involves HoldCall and UnHoldCall operation. To provide the agent an automatic way of retrieving the screen context for a selected call, Siebel Context Data can be stored and restored when the HoldCall and UnHoldCall commands, respectively, are used (assuming SaveContextData parameter is set to TRUE).

... SelectDN5

Allows the agent to "flip" between the lines defined for the agent's teleset.

When a line is selected, the Siebel CTI toolbar, menu, or both reflects the state of that line. Switching to a different line changes the toolbar, menu, or both to reflect the

state of the new line. Switching between lines (and thus the appearance of the corresponding CTI toolbar or menu items) normally involves HoldCall and UnHoldCall operation. To provide the agent an automatic way of retrieving the screen context for a selected call, Siebel Context Data can be stored and restored when the HoldCall and UnHoldCall commands, respectively, are used (assuming SaveContextData parameter is set to TRUE).

OriginalCID ApplName *Double1 ... *Double5 *Long1 ... *Long10 *Short1 ... *Short5 *FixedString1 ... *FixedString10 *VarString1 ... *VarString28

Provides access to raw TadsStoreApplStats API functionality for users who wish to access this CallPath Enterprise feature. This allows Siebel client to send application-specific statistics associated with a telephone call to CallPath Enterprise server. With an appropriate reporting engine, those statistics can be written to a database. Parameters supported by this device command match very closely with those of the CallPath Enterprise Option API TadsStoreApplStats. Refer to CallPath Enterprise Programmer's Guide and Reference for more information.


Remove the current call from the hold state.

Table 5. CallPath Connection for Siebel Systems CTI command parameters Command Parameters ACDQueue Command Parameter Description

ACD queue name. The same data can be retrieved from the Siebel database using the special field @QueueId. Refer to Siebel CTI Guide for more information. Note that if the call center agent logs on as a CallPath Enterprise Skills-Based Routing agent to receive enqueued calls with certain skills-expressions, this parameter must be set to SBR (a special ACD queue). Refer to the CallPath Enterprise Planning, Installation, and Problem Determination Guide and CallPath Enterprise Programmer's Guide and Reference for more information on this feature.


Agents ACD login ID (as known by the telephone switch). The same data can be retrieved from the Siebel database using the special field @AgentId. Refer to Siebel CTI Guide for more information. Note that if the call center agent logs onto the phone as a CallPath Enterprise Skills-Based Routing agent to receive enqueued calls with certain skillsexpressions, this paramter must be set to the SKBR user ID as defined on the CallPath Enterprise CTI server. Refer to the CallPath Enterprise Planning, Installation, and Problem Determination Guide and CallPath Enterprise Programmer's Guide and Reference for more information on this feature.


The password (Personal Identification Number) for the agents ACD login (as

known by the telephone switch). The same data can be retrieved from the Siebel database using the special field @AgentPin. Refer to Siebel CTI Guide for more information.

Name of the database table used for storing the application specific data. Text that is displayed in the status line for the second agent, indicating the incoming call. User data that is to be associated with the current telephone call. Immediately after ACD log in, the agent is assumed to be in this ACD state if no value for StateToChangeTo parameter is specified. The default value is switch dependent.




Double1 ... Double5

Eight-byte double variables that can be stored in columns of the user database. Strings up to 10 characters. Long variables that can be stored in columns of the user database. Phone number (dialing pattern). Dialing:FilterRuleN configuration parameters can be defined to filter full telephone numbers from a database. Refer to the CallPath Enterprise Planning, Installation, and Problem Determination Guide for more information about configuring Inter-Switch Intelligent Call Transfer (IS-ICT).

FixedString1 ... FixedString10 Long1 ... Long10


Queue, Queue1, ... QueueN ReasonCode

ACD queue The reason code that is required by the telephone switch when an agent changes to a not ready state for ACD calls.


The identifier used to match the asynchronous event with the corresponding request that was previously invoked. For example, CollectedInfoEvent is sent with the same RequestId as the one provided by the previous call to RetrieveCollectedInfo. Set to TRUE if storing and restoring of Siebel Context Data is desired when HoldCall and UnholdCall commands, respectively, are used. Immediately after ACD log in, the agent is changed to the ACD state specified by this parameter. If this parameter is not specified, the DefaultStateWithoutChange parameter is enabled.



Short1 ... Short5

Short variables that can be stored in columns of the user database. Strings up to 2047 characters.

VarString1 ... VarString28

CallPath Enterprise Client for Siebel Systems configuration

The following sections provides information about configuring CallPath Enterprise Client for Siebel Systems.
Client configuration

Once the CallPath Enterprise Client for Siebel Systems Setup program is run, the c:\siebel\bin\uagent.cfg file is configured automatically. If you have any problems, refer to Chapter 5, Troubleshooting for problem determination information.
Note: The uagent.cfg configuration file is assumed to be used with the Siebel Client. If you use a different configuration file instead, edit the appropriate file to turn on the CTI option as required.

Server configuration

The initialization file csemsmpl.ini controls how the Siebel client initializes the CTI component. After installing the CallPath Enterprise Client for Siebel Systems, this file can be found in the following directory: c:\cseb\conf\csemsmpl.ini Note that csemsmpl.ini, as provided, is only a sample file. It will not work until the appropriate modifications have been made. For detailed information about the supported parameters and their usage, see Table 3.
Table 3. CallPath Enterprise configuration parameters Parameter Dialing:FilterRuleN Type String Explanation Specifies a set of phone number translation rules that are invoked when the Lookup keyword is specified in macro-expanded text in a CTI command definition. These rules may also be invoked by using the PhoneTypeLookup keyword.

Please note that the translated phone number is subject to further resolution in Inter-Switch Intelligent Call Transfer (ISICT) scenarios. Refer to CallPath Enterprise Planning, Installation, and Problem Determination Guide for more information on IS-ICT configuration. The Dialing:FilterRuleN parameters must be defined in conjunction with IS-ICT configuration. The first set of numbers are those that are searched for. If there is a match, the numbers after the -> symbols are what the searched numbers are translated to. For example:
• Filter.Rule1 = 650295-> This filter rule

takes a ten-digit telephone number from the Siebel database and translates it into a four-digit number for an internal call to another extension. You can use such a rule for internal calls, call transfers, or call conferences, where the area code 650 and prefix 295 apply to the call center. Or, use such a rule for calls, transfers, or conferences to another call center, where this area code and prefix apply to the destination call center. • Filter.Rule2 = 650->9 This rule takes a ten-digit phone number from the Siebel database and translates it into a sevendigit number for an outside call. You can use such a rule for external calls within the same area code. Filter.Rule3 = ->91 This rule takes a tendigit phone number from the Siebel database and translates it into a ten-digit number for an outside call. You can use such a rule for external calls to another area code.

Filter rules are checked for matches in numerical sequence. For the preceding examples:
• • If a telephone number matches 650295****, then Rule1 will be applied. If it does not match this pattern, but matches 650*******, then Rule2 will be applied. If it does not match this pattern either, then Rule3 will be applied.

The last rule in the sequence should always be defined to match any number, as shown. For more information about the Lookup and PhoneTypeLookup keywords and about phone number formatting, see Siebel CTI Guide. For more information about international telephone numbers, refer to Siebel Applications Administration Guide.
Driver:AlwaysEnableACDCmds TRUE or FALSE If this parameter is set to TRUE, the ACD device commands, except for LogIn and LogOut, are enabled even when the agent is on a call.

The default value is FALSE.
Driver:BusyRightAfterCall TRUE or FALSE If this parameter is set to TRUE, the driver attempts to make the agent not ready (for more ACD calls) at the end of an ACD call to give the agent time to do wrap up. Once the agents have finished the wrap up, they can explicitly change state to be ready for more ACD calls.

This parameter can be used on the Nortel Meridian 1 switch only. The default value is FALSE.
Driver:LogFileName String If a file name is specified using this parameter, each Siebel client will write detailed information about all activity for the active call object into a log file. Data for Siebel CTI and CallPath Enterprise activity is logged, including device events, commands, and command/event data fields. This data can be useful for debugging. • For the Siebel dedicated client, the log file is located by default in the bin subdirectory of the Siebel installation directory if the full path for the log file is not specified. For Siebel Thin Client for Windows, the log file is located by default in the Startup directory of the Web browser being used.

A complete path can be specified along with the file name, in order to write the file to a non-default location. For Siebel Thin Client for Windows, you should specify a location on the users' local machines (for example, c:\Temp\cpe.log). For debugging purposes, the Siebel CTI log file can be compared with the log file for the CallPath Enterprise middleware. In each log file, log records referring to the same call would contain the same value for the OriginalCID event data field. The default value is cpe.log.
Driver:MaxLogKB Number The maximum size of the log file, in kilobytes (KB).

When the log file is full, it is emptied completely, and then logging begins again.

The default value is 128 KB.
Driver:MixConfTransfer TRUE or FALSE Allows the agent to issue either the CompleteConference or CompleteTransfer command regardless of whether the call was extended using the InitConference or InitTransfer device command. The parameter must be set to TRUE for this to be in effect.

The default value is FALSE.
Driver:PhoneIDChanges TRUE or FALSE Specifies whether or not the identity of the telephone changes after the agent logs on to an ACD queue using the phone.

On Alcatel OmniPCX 4400 switch, a phone set assumes the base number as its DN but after an agent logs on to this phone, the agent number becomes the phone's DN. In this case, the parameter must be set to TRUE. The default value is FALSE.
Driver:ServerName String Specifies the name of CallPath Enterprise Server. Refer to CallPath Enterprise Planning, Installation, and Problem Determination Guide for information on configuring the CallPath Enterprise Server.

Default value is 7600@localhost.
Setting:AutoLogin TRUE or FALSE Specifies whether or not auto-login is the global default setting for all users in the CTI configuration: • If Setting:AutoLogin is set to FALSE (the default setting in the sample configurations), then auto-login is disabled for all users who have not previously selected or deselected the Auto-login feature in the Options dialog box. If the parameter is set to TRUE, then autologin is in effect for all users who have not previously selected or deselected the Autologin feature.

For more information, see Siebel CTI Guide.
Setting:UpdatePhoneStatusTable TRUE or FALSE When an agent's phone state is changed, for example, by the agent answering a call, the state is logged to the phone status table, which is used for administrative purposes. Status information is displayed in the Telephone Status Administration view. For more information about this view, see Siebel CTI Guide.

In a large call center, performance problems may result if this parameter is set to TRUE. By default, this parameter is set to TRUE.

Cresce o mercado para profissionais de BI
João Sidemar Serain (e-mail) tem sólida experiência em Business Intelligence, é pós-graduado em Engenharia da Informação – FASP (Faculdades Associadas SP)e graduado em Administração de Empresas – UNIABC (Universidade do Grande ABC). Atualmente trabalha na empresa 7Comm.

Já faz algum tempo que BI (Business Intelligence) vem ganhando força no mercado e, mais do que nunca, as empresas voltam sua atenção não apenas para as informações operacionais, mas também para a questão estratégica, permitindo tomadas de decisões com maior precisão e menor risco possível.

Como a maioria das organizações dependem da análise de informações estratégicas para se adequar ao mercado, fidelizar e conquistar novos clientes, monitorar concorrentes, ou adequar produtos ao seu mercado alvo, têm a necessidade de um profissional que tenha facilidade em absorver rapidamente as regras de negócio da empresa, transformando a preciosa fonte de informação que são os dados, em forma de relatórios, indicadores ou gráficos, que auxiliem os gestores a tomarem decisões rápidas e seguras, com base nas respostas obtidas pelo BI.

Seguindo esta tendência de mercado e atendendo às demandas empresariais, a pesquisa "Tendências de Investimento em Business Intelligence & Business Performance Management", realizada pelo IDC (International Data Corporation), indica que 38 das 148 empresas analisadas (todas com faturamento acima de 300 milhões de reais) já têm ou estão instalando o sistema e 29 já têm projetos planejados. A grande vantagem em torno destes sistemas é que eles não custam para as empresas o quanto custaram os sistemas de gestão empresarial (ERPS), nos quais chegou-se a gastar algumas centenas de milhares de dólares.

Estima-se que o mercado de BI deva crescer cerca de 6 anualmente até 2008, segundo a pesquisa. De olho neste mercado estão não só empresas que possuem ferramentas específicas de BI ou BPM (Business Processes Management), e fornecedores de banco de dados, sistemas CRM ou ERP (como Oracle, SAP, Sybase ou Siebel), como também profissionais atentos a esse mercado e que pretendem se especializar nas soluções de BI disponíveis no mercado.

O perfil dos profissionais que buscam qualificação em BI, são pessoas que atuam na àrea de dados e tem a necessidade de formalizar seus conhecimentos. São na sua maioria, analistas e executivos envolvidos no desenvolvimento de aplicações para tomada de decisão e datawarehouses, àreas de informação, marketing, vendas, administrativa, financeira ou operacional.

Alguns tem a visão distorcida e limitada sobre BI, achando que engloba apenas os conceitos de criação de datawarehouses. Por outro lado, existem profissionais que buscam atuar em outras áreas e vêem no tratamento da informação executiva uma possibilidade de desenvolvimento profissional.

Sem aprofundar muito neste aspecto, está claro que o profissional de BI deve aliar os recursos do banco de dados ao conhecimento do negócio, fazendo com que cada vez mais os produtos de BI deixem de ser uma caixa preta, e se tornem um aliado dos gestores da empresa.

Isso faz com que todos os profissionais envolvidos no processo assumam riscos e responsabilidades. No BI tradicional havia a preocupação em levar informações ao usuário final, no atual, tem-se a preocupação de criar a inteligência nos processos do negócio.

O processo básico que está por trás de um BI, é identificar padrões nos dados armazenados, e com base nestes padrões é possível propor análises que possam prever o comportamento de um determinado perfil, seja cliente, produto, período, etc. Com isso é possível extrair informações importantes para a área financeira, marketing, segurança, dentre outras.

Além disso, espera-se que estes profissionais entendam como inferir resultados e comportamentos destes dados, utilizando modelagem estatística, inteligência competitiva, gestão do conhecimento, gestão de projetos, modelos de negócios, EAI (enterprise application integration), além das ferramentas e conceitos usuais de ETL, DW e OLAP. Nem sempre o mercado de trabalho usa formalmente o termo "analista de BI", mas busca profissionais que tenham capacitação para trabalhar com informação executiva.

Mas esses profissionais ainda têm um caminho cheio de desafios a percorrer. Eles devem ter uma carga de conhecimentos significativa, inclusive para saber como contratar empresas especializadas. Há ainda muitas dificuldades na implantação e integração de sistemas de BI, sendo que a maior dificuldade encontrada, é a questão da integração de dados, as aplicações e a qualidade dos dados.

Muitas bases de dados tiveram origem em organizações diferentes (devido ao grande número de fusões e cisões de empresas) ou foram criadas a partir de migrações de dados de sistemas antigos. Trabalhar dados com problemas na origem pode ser o Beijo da Morte em BI.

Para quem ainda não tem um sistema de BI na empresa, mas pretende implantar, é preciso ter em mente que este sistema não pode ser comprado em qualquer loja de informática. Um BI é construído com base nas características de cada organização. Sua evolução dentro da empresa, depende de sua utilização e aceitação por parte dos usuários, e o principal objetivo é descobrir maneiras diferentes de atuar no mercado e quais as mudanças internas devem ocorrer para atender as novas realidades.

Um sistema de BI, ao contrário dos sistemas transacionais, estão em constante manutenção, pois ao longo do tempo, muitas regras de negócio da empresa podem mudar para atender às expectativas do mercado, e conseqüentemente as regras do BI também precisam ser ajustadas.

Conhecer mais sobre essa tecnologia permitirá à estes profissionais ampliar sua visão sobre o negócio da empresa, propor soluções simples, inteligentes e mais confiáveis. Isto permitirá aos administradores de um sistema BI, maior tranqüilidade e segurança para definirem as metas e adotarem diferentes estratégias para a organização, conseguindo assim visualizarem antes de seus concorrentes novos mercados e oportunidades, atuando de maneiras diferentes conforme o perfil de seus consumidores.

Abraço a todos!