Social Icons

Pages

Subscribe:

Monday, 25 August 2008

Toggling with the Search Specification in Applet


Working with Siebel, I have come across many challenging requirements. Keeping in mind the Siebel Best Practices, the challenge gets tougher. In this post, I will share such a requirement. 

The requirement was to put search specification in a Toggle Applet. Sounds very practical and easy but trust me it was not. About the toggle applet, Siebel Tools Help says:If two applets are defined with the same business component and both have a search specification, then the search specification for the applet in lowest sector is used.

Do not specify different search specifications where several applets in one view are based on the same business component. All of these applets should have the same or an empty search specification.

Going by the above mentioned documentation, I thought of two immediate approaches:
1. Copy the BC and Map one applet which is having the search spec.
I had already made a copy of the BC and creating a third copy, to map to the two given applets, was not an intelligent approach.
2. As per the Siebel Help content we can give the search specification in a form applet.
The Applets we were dealing with were List applets and not Form applets. So the second approach was not applicable either.
Hence the best alternative was to write a script which is as follows:
Set profile attrib in two applets when the user is going to toggle or executed query or SortAscending or SortDescending.
APPLET 1:
if (MethodName == “ExecuteQuery” ||  MethodName == “SortAscending” ||  MethodName == “SortDescending”)
{
TheApplication ().SetProfileAttr (“UserDoingQuery”, “Y”);
}
if (MethodName == “ToggleTo”)
{
TheApplication().SetProfileAttr(“Uni Tgt Team ToggledBackToAdmin”, “2″);
}
APPLET 2:
Use the same code as above and,
Set Profile Attribute as “Uni Tgt Team ToggledBackToAdmin” = 1.
In Event method of Business Component (BusComp_PreQuery   event)
Get the profile Attrib and give the search spec as per your requirement and clear the profile Attribute.
if ((TheApplication().GetProfileAttr(“Uni Tgt Team ToggledBackToAdmin”) == “2″) || (TheApplication().SetProfileAttr(“UserDoingQuery”) == “Y”))
{
this.SetSearchSpec (“Name”, “XYZ”);
TheApplication().SetProfileAttr (“Uni Tgt Team ToggledBackToAdmin”,”");
}
if ((TheApplication().GetProfileAttr(“Uni Tgt Team ToggledBackToAdmin”) == “2″) || (TheApplication().SetProfileAttr(“UserDoingQuery”) == “Y”))
{
this.SetSearchSpec (“Name”, “ABC”);
TheApplication ().SetProfileAttr (“Uni Tgt Team ToggledBackToAdmin”,”");
}
This script helped in enabling the search specification in a toggle applet. Hence, another challenging requirement was successfully met.
To know more about Toggle Applet

Thursday, 31 July 2008

Auditing Best Practices on a button Click – EScript doc


Prevention is better than precaution” An audit (ES Review) was conducted for the previous project and the report stated that most of the Siebel best practices were not implemented which led to poor performance of the application. Sometimes we used to perform the hectic job of copying each and every script manually to a word document for script documentation.

After the project was over, a thought came into my mind, why not to prepare a tool that would scan the script, check for the Siebel best practices implementations and would generate a word document regarding the same, in addition to this if this tool would also copy the script into word document then it would be like a “red cherry on the cake.” So I prepared a tool named escript doc aud
  • eScript Auditor is an audit tool developed in VB .Net 2005 which checks whether the script has followed Siebel Best practices and documents the entire code in a word document
Escript
Features:
The major feature of the escript doc aud is that it documents and audits every script written at the following level:
  • Application
  • Business Service
  • Business Component
  • Applet
Working:
Search for the required object script for which you need to mention the object name in search textbox shown above with selecting appropriate script type and click “Go” button
Respectively a script will be displayed under script area also with all the non followed best practices (highlighted in red shown in above picture)
If required hit “Create Script Area Doc” button to generate a word document for that particular script along with its non followed best practices.
Advantages:
  • Can copy thousands of lines of code (LOC) in couple of minutes.
  • Reduces the manual effort required.
  • In fraction of second audits the entire script.
Script Doc Aud gives the customer friendly GUI to see each script and perform best practice violation check up.
To know more about EScript doc

Hexalyzer- An analyzer tool to view Siebel repository


The ever changing needs and requirement of Business Process makes it imperative for the clients to upgrade from their previous Siebel versions to the latest one.Besides providing better usability and customer satisfaction, upgradation also provides access to new functionality and software applications.

Upgradation facilitates compliance at a lower cost of maintenance and ongoing operations. By providing “out-of-the-box” solution to requirements upgradation helps to increase the efficiency of the applications and businessWhile we were upgrading from Siebel 7.8 to Siebel 8.0, we faced various challenges during the upgrade such as:-
Analyze Repository and generate detail report of the customized Siebel objects

In order to find the information about customized objects every time users are required to fire a query which slows the response time and increases the load on database.
Unfortunately due to time constraint and unavailability of Hexalyzer tool forced us to perform various lengthy but important tasks manually. This was the time when we realized to come up with a tool which would help the upgrade process to take place faster thereby saving lots of time.
The thought process results in Hexalyzer, to generate the report of all the customized objects based on Inactive objects

Count-list of new and modified objects
Hexalyzer has the major advantage of reducing the overload of bulk operations performed on the database.
Hexalyzer
Hexalyzer automates many such steps and helps the customer to get a broader view of the entire repository. For example by clicking the “New Applet” button the tool will generate an excel sheet with the information of all the new applets created during Upgrade process. Similarly, if one clicks “Modified Views” the information exported to the excel sheet contains the entire modified Views name during the Upgrade process.
This tool is now the part of Post Upgrade task for me and my team. Hexalyzer identifies and reports all the customized objects from the start baseline date for the repository.

Solutions / questions / comments are always welcome.

Thanks for reading this blog.To know more about Hexalyzer

Wednesday, 30 July 2008

Siebel Business Solution Tool – Adding value for our customers


As a Siebel Consulting firm, our sales team hunts for prospective clients. Once the client is acquired, cost estimation and resource allocation are vital processes before kick starting the project. After lots of hard work and hurdles (difficulties / issues) the development team comes up with the product.

Do the developers ponder on the modules they developed and its viability for client ? Do they go back and see how end users are using it? What value the Client is deriving, out of the application/product’s usage?
One day the above unanswered questions resurfaced on my head. By gathering some techno-functional expertise, I attempted to answer the above questions. I shared these views with my seniors, and eventually got the nod to work on Development of a Business Solution Tool. Some of the salient features of this Business solution tool are as follows:
  • Automated Siebel CRM Tool that captures the usage details of the application.
  • It keeps track of every user’s login details to the application and the number of views that are traversed by the user.
The above requirement was a challenge and I was looking forward to develop something which would give add-on value for our Clients.
Few of these challenges were:
  • Calculating cost effectiveness – capturing the time spent by the end user on a particular view of the application.
  • Keeping Track of time spent by each user in the application.
  • Statistics w.r.t the heavy and sparing use of the views in the application.
After overcoming the obstacles faced, the development of the Business Tool was done in 2 weeks time. After testing, re-tesing and ensuring the product was bug-free, the Tool was served on the platter of our client. Couple of features of the Tool was cited as below followed by the screenshot:
  • Keeps track of Login details of the users. “Login name” and “Application In-Out time.
  • Keeps track of Time spent by each user in a particular view. “View In-Out time”.
Siebel Business Solution Tool
This Tool will be helpful for the Client to find out the usage of application by their customers. Sometimes navigation becomes difficult to understand for the end users in Siebel. For e.g. The user is unable to some views due to the lack of knowledge of navigation. This tool fulfills that requirement too.
After the development of an Application, the most important benefit our Client derive out of this tool is as follows:
  • Calculate Cost Effectiveness of Siebel System with respect to Time and Efficiency.
Solutions / questions / comments are welcome.
Thanks for reading this blog. To know more about Siebel Business Solution Tool

Tuesday, 29 July 2008

AUTO SAD-Siebel Administration Automation Tool


Auto Sad is a production support tool that automates and provides a faster mechanism to perform Siebel Administrative Tasks on clicks of some buttons on multiple servers.

Siebel Architecture involves the following Servers
  • Siebel Server
  • Siebel Gateway Name Server
  • Siebel Web Server
These servers may or may not be on the same machine.
As a system administrator, one often has to do repetitive tasks such as
  • Bouncing of Services(Starting or stopping services)
  • Migrating SRF from one location to another
  • Compilation of Siebel Repository File(SRF)
  • Generate Browser Scripts.
To perform these tasks the Siebel Administrator needs to login into each server remotely and then execute them. If there are only a handful of servers, this task may not be very intimidating, but there are many times when there are many servers installed on separate machines. This is where Auto Sad comes into the picture which automates the whole process. Using Auto Sad, a Siebel Administrator can perform all the basic tasks by entering required values in their profile and then by click on buttons those tasks can be performed.
AUTO SAD tool involves various steps such as:
  1. Login through sadmin credentials
  2. Create/Edit Environment Profile
  3. Generate batch Files for individual tasks
  4. Execute Batch Files for the required tasks
  5. Launch Siebel Thin Client
AUTO SAD Siebel Administration Tool
From the above screenshot, it is clear that the various administrative tasks can be performed easily by simply click of buttons thereby facilitating the Siebel administrator to work efficiently.Any organization implementing Siebel can make use of this tool to achieve faster and convenient way to perform Siebel Administrative Tasks thereby saving 30% of the time for deployment process.

Read More about AUTO SAD

Computer and Telephone going hand in hand


Computer Telephony Integration (CTI) as the name suggests, is a technology that allows the interactions between a computer and a telephone to be integrated or synchronized.
CTI systems can take several types of inputs including a voice input from Interactive Voice Response systems (IVR) or email, fax and web etc.
Where is CTI used?
Depending on the business type and real time interactivity, we need to decide whether we can go with this approach.
For e.g. In an Online, Help/Solution providing firm, Tele-marketing centers or a Call Center the telephone usage would be high. This means if the business is telephone intensive then we might use this approach so that it would be easy to trace the calls and the caller information.
How to implement CTI in Siebel?
Depending on the business requirements either of the following approaches can be used to implement CTI setup for Siebel Call Center Application
It’s a faster approach as compared to the second one. It uses the vendor specific library which has the configuration parameters required for the setup.
This includes the development of certain customized web services and usage of the ASI s.
Computer Telephony Integration
Example: Scenario where IVR triggers CTI
In our scenario, various methods of customized Business service for IVR trigger the middleware and the middleware further invokes the CTI module.
These methods need to be exposed as web services to publish them on the web at the host address. This host address is specified by the path which is same as the one where we need to get the CTI toolbar and CTI services enabled.
In all, the Business service methods act as the traversing points through which the CSR can navigate to the specified view, taking the output arguments from the function as the input CED (Caller Entered Digit) data for the CTI system.
CTI Applications:
Computer Telephony Integration

What CTI can do and why is it preferred?
  • Displays the complete call information
  • Authenticates the caller
  • Agent state information can also be displayed
  • Can receive fax messages and route it to respective recipients
Greater efficiency
Dialing out automatically with a single mouse click from a computer saves time and is more accurate.
Staff can handle more calls in a given period of time.
Logging calls, allows monitoring the effectiveness of :
  • Operating procedures
  • Individual staff members.
  • Improved Customer Service
  • Receiving customer details on screen at the same moment you receive the incoming call.
  • Automatically seeing key details about that customer.
  • Automatic call distribution (ACD) automatically answers calls with a voice menu, and uses caller responses to route incoming calls.
Challenges in setting up a CTI Systems:
If IVR is used for triggering purposes, then the Web service response time can be a hurdle in case of screen pops configured in the CTI system.
There could be some cases, where the vanilla views can’t be used for displaying the complete info, so lot more customizations are to be done.
Navigating between various screens could be time consuming.Screen transfer between agents could be difficult to implement.As the implementation (Middleware used) is Vendor dependent, the functionalities and services provided also differ. Hence, there is a difficulty in choosing among the various vendors.
As the CTI services are server dependent, there is always a difficulty in maintaining those IC servers
Network congestion could also hamper the CTI response time.