Do you want to Search Something?

Those who opened the gates

Wednesday, July 4, 2012

Fix C028: “Unable to Connect to the Siebel Gateway Name Server”

Symptoms

The Server Configuration wizard has logged the following error message:
C028: Unable to Connect to the Siebel Gateway Name Server

Cause
Database Authentication failed.
Gateway authentication is a new feature in Siebel 8.1.1.  If the Configuration Wizard fails due to authentication it will log the error messages, above.

Solution

Follow these steps to resolve the issue:

1. In the ‘$SIEBEL_ROOT/gtwysrvr/siebenv.sh’ environment sourcing script, check the following environment variables and  set them appropriately before starting the Gateway server.
1a. For all servers: ORACLE_HOME must be declared before any library paths are declared.
Example:
ORACLE_HOME=/export/home/ora10g/10203 ; export ORACLE_HOME
1b. NOTE: For the following library paths, Oracle 32-bit libraries must be referenced before 64-bit libraries. An example is provided for each library path per Unix system, as follows:
For AIX: LIBPATH
LIBPATH=${SIEBEL_ROOT}/lib:${MWHOME}/lib:${SQLANY}/lib:/usr/lib:${LIBPATH}:${ORACLE_HOME}/lib32:${ORACLE_HOME}/lib
For HP-UX:  SHLIB_PATH
SHLIB_PATH=/usr/lib/hpux32:${SIEBEL_ROOT}/lib:${MWHOME}/lib:${SQLANY}/lib:${ORACLE_HOME}/lib32:${ORACLE_HOME}/lib
For Linux and Solaris:  LD_LIBRARY_PATH
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${ORACLE_HOME}/lib32:
${ORACLE_HOME}/lib
2. Open the ‘gateway.cfg’ file, which is located in the ‘$SIEBEL_ROOT/gtwysrvr/bin’ directory.
Check the ‘ServerDataSrc’ section and confirm the parameters are correct, particularly:
ConnectString
TableOwner
GatewayAddress
EntepriseServer
3. Test Siebel database connectivity using the Oracle odbcsql utility for the ‘sadmin’ user.  This is typically located in the ‘$IEBEL_ROOT/siebsrvr/bin’ directory.
For example:
odbcsql /s sia811_DSN /u sadmin /p sadmin
where:
/s = the source ODBC DSN (the Siebel ConnectString parameter) for the database connection.
/u = the user ID.
/p = the password.
If connection is possible, continue with step 4.
4. Restart the Gateway server, and then try configuring the Siebel Server.

Hope that helps !!!! have a nice day

Monday, June 4, 2012

Measuring the performance of Workflows in Siebel

You can get performance tracing of workflows by setting the event WfPerf for the component in which your workflow is running.

Setting the event to level 4 gives timing for the execution of the overall process.

Setting the event to level 5 provides timing for each step as well.

You can set this event level for any Siebel Server component that invokes a workflow process as part of Siebel eAI functionality. For example, to set this event level for the MQ Receiver using srvmgr, enter the following:

change evtloglvl WfPerf=5 for comp MqSeriesSrvRcvr

These events can be useful not just for measuring workflow performance but also for measuring the performance of business services executed within these workflows.

Hope this helps!!!!!

Tuesday, May 15, 2012

How to stop a Workflow Process Instance via eScript

This can be achieved using the  _StopInstance method of Worflow Process Manager BS

An example usage of this technique occurs when you have an interactive workflow which needs to be cancelled but which is suspended in a Wait step. In this scenario, the Process Instance Id is already known.

To stop a workflow process instance from script

Invoke the _StopInstance method on the Workflow Process Manager business service, as in the following example, which uses a hard-coded Process Instance Id:


var bs = TheApplication().GetService("Workflow Process Manager");
var ps_inputs = TheApplication().NewPropertySet();
var ps_outputs = TheApplication().NewPropertySet();
ps_inputs.SetProperty("ProcessInstanceId", "1-IIT");
bs.InvokeMethod("_StopInstance" , ps_inputs, ps_outputs);

Comes in handy while you want to dliberately stop that annoying instance:)

Wednesday, March 14, 2012

Playing with the SOUNDEX function


Hi All

Have you ever tried the SOUNDEX function for finding phonetically similar words such as querying First Name you vaguely remeber.I read about this in Alex's Siebel Essentials and after a bit of trial/POC I am writing this post.

So I typed in this query and ....


 








got the following results




so here we can see that the soundex value for all the results are same.

The Soundex algorithm is as follows:

1.The soundex return value will always begin with the first letter of string.'P' in our case.
2.The soundex function uses only the first 5 consonants to determine the NUMERIC portion of the return value, except if the first letter of string is a vowel.
3.The soundex function is not case-sensitive. What this means is that both uppercase and lowercase characters will generate the same soundex return value.

Applies to :Oracle 8i, Oracle 9i, Oracle 10g, Oracle 11g

Have a nice day ahead.....



Wednesday, February 29, 2012

Reading Input and Output of Vanilla Business Service and logging them.

Hello Everyone

Have you ever guessed what are the input and output property sets and methods called while a vanilla  business is executing....


well here is the step to log them in a readable and logical way...


for eg lets take the BS: Search External Service

Enter  the following lines of code in the declaration section.....

/*----------------------------This is the Declaration Section --------------------------------------------------*/
var OutPutFileName = 'C:\\SearchExternal_Dump.txt'; //Your fav Location and name:)
var IndentAmount = 2; // Indent child prop sets listing this many spaces // to the right for each level down for readability


Now comes our 2 handy function

1.LogMe ( writes down every input provided to a text file path declared in declaration)


2.DumpPropSets(Dumps the property sets)


Code of both these functions follows

1.LogMe Function

  // Writes what is feeded.

 function LogMe(LogThis)
{
  var MyFile = Clib.fopen(OutPutFileName, 'at');
  var sTime = Clib.ctime(Clib.time());
  sTime = sTime.replace('\n',' '); // Remove trailing Newline.
  Clib.fputs(sTime + ': ' + LogThis + '\n', MyFile);
  Clib.fclose(MyFile);
}


2.DumpPropSet Function

/*------Premjit Vidyadharan:Function to collect property sets and feed to LogMe for printing-*/
/*--------------------Print out the contents of a property set--------------------------------*/
function DumpPropSet(Inputs)
{   
 PSDepth++;
 var InpValue;
 var InpType;
 var InpChildCount;
 var inprop;
 var inpropval;
 var inpropcnt;
 var BlankLine = ' '; 
 /*--------------------------Build a string to indent the Listing------------------*/ 


 var IndentSpaces = ''; // [Number of spaces to indent to]
 for (var SpaceCount = 0; SpaceCount < IndentAmount * PSDepth; SpaceCount++)
 {
  IndentSpaces = IndentSpaces + ' ';
 }
 var IndentLevel = ToString(PSDepth);
 if (PSDepth < 10)
 {
  IndentLevel = '0' + IndentLevel;
 }
 // Indent by a number of indents, then level number as nn, then two spaces
 var Indent = IndentSpaces + IndentLevel + '  ';


 LogMe(BlankLine);
 LogMe(BlankLine);
 LogMe(Indent + '---- Starting a new property set ----');
 LogMe(BlankLine);




 // Now do main value and type


 InpValue = Inputs.GetValue();
 InpType  = Inputs.GetType();


 InpChildCount = Inputs.GetChildCount();
 LogMe(Indent + 'Value is ........ : "' + InpValue + '"');
 LogMe(Indent + 'Type is  ........ : "' + InpType + '"');
 LogMe(Indent + 'Child count ..... : ' + ToString(InpChildCount));


 // Dump the properties of this property set


 var PropCounter = 0;
 inprop = Inputs.GetFirstProperty();
 while (inprop != "")
 {
  PropCounter++;
  inpropval = Inputs.GetProperty(inprop);

  LogMe(BlankLine);
  var PropCountStr = ToString(PropCounter);
  if (PropCounter < 10)
  {
   PropCountStr = '0' + PropCountStr;
  }
  LogMe(Indent + 'Property ' + PropCountStr + '  name : "' + inprop + '"');
  LogMe(Indent + 'Property ' + PropCountStr + ' value : "' + inpropval + '"');
  inprop = Inputs.GetNextProperty();
 }//while (inprop != "") ends
 /*-----------------------------------Dump the children of this PropertySet-----------------------------*/
 if (InpChildCount == 0)
 {
  LogMe(BlankLine);
  LogMe(Indent + '(No children exist below this property set.)');
 }
 else 
 {
  for (var ChildNumber = 0; ChildNumber < InpChildCount; ChildNumber++)
  {
   LogMe(BlankLine);
   LogMe(Indent + 'Child Property Set ' + ToNumber(ChildNumber + 1) + ' of ' + ToNumber(InpChildCount) + ' follows below.');
   LogMe(Indent + 'This child is on level ' + ToNumber(PSDepth));
  
   // Recursive call for children, grandchildren, etc.
   DumpPropSet(Inputs.GetChild(ChildNumber));
  }
 }


 PSDepth--; // We are about to pop up a level
}




Now Call this functon at the evnt of your choice


eg given below


function Service_PreInvokeMethod (MethodName, Inputs, Outputs)
{
    LogMe('---- Method Called PreInvoke ----'+ MethodName);
    LogMe('---- Method Called PreInvoke-----INPUTS ----'+ MethodName);
    LogMe(Inputs);
    LogMe('---- Method Called PreInvoke----- OUTPUTS ---'+ MethodName);   
    LogMe(Outputs);
    LogMe('---- PreInvoke Ends Here---------------------'+ MethodName);   
 return (ContinueOperation);
}

Below is the result which we get....A long story to read for the debuggers ot there

Wed Feb 22 05:12:57 2012 : ---- Method Called PreInvoke ----GetParams
Wed Feb 22 05:12:57 2012 : ---- Method Called PreInvoke-----INPUTS ----GetParams
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- Method Called PreInvoke----- OUTPUTS ---GetParams
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- PreInvoke Ends Here---------------------GetParams
Wed Feb 22 05:12:57 2012 : ---- Method Called Invoke ----GetParams
Wed Feb 22 05:12:57 2012 : ---- Method Called Invoke INPUTS ----------------------GetParams
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- Method Called Invoke OUTPUTS ---------------------GetParams
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- Invoke Ends Here----------------------------------GetParams
Wed Feb 22 05:12:57 2012 : ---- Method Called PreInvoke ----SetSamePage
Wed Feb 22 05:12:57 2012 : ---- Method Called PreInvoke-----INPUTS ----SetSamePage
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- Method Called PreInvoke----- OUTPUTS ---SetSamePage
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- PreInvoke Ends Here---------------------SetSamePage
Wed Feb 22 05:12:57 2012 : ---- Method Called Invoke ----SetSamePage
Wed Feb 22 05:12:57 2012 : ---- Method Called Invoke INPUTS ----------------------SetSamePage
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- Method Called Invoke OUTPUTS ---------------------SetSamePage
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- Invoke Ends Here----------------------------------SetSamePage
Wed Feb 22 05:12:57 2012 : ---- Method Called PreInvoke ----FindOnly
Wed Feb 22 05:12:57 2012 : ---- Method Called PreInvoke-----INPUTS ----FindOnly
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- Method Called PreInvoke----- OUTPUTS ---FindOnly
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- PreInvoke Ends Here---------------------FindOnly
Wed Feb 22 05:12:57 2012 : ---- Method Called Invoke ----FindOnly
Wed Feb 22 05:12:57 2012 : ---- Method Called Invoke INPUTS ----------------------FindOnly
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- Method Called Invoke OUTPUTS ---------------------FindOnly
Wed Feb 22 05:12:57 2012 : PropertySet [ ]
Wed Feb 22 05:12:57 2012 : ---- Invoke Ends Here----------------------------------FindOnly


Be sure to remove the code when u are done with the debugging.........


Enjoy!!!!!!!!!!!!!!!!

Wednesday, February 22, 2012

A faster way to Open Support Web :)

Friends

This might be known to many but still I would recommend to use

https://supporthtml.oracle.com/

This has got a cool loading time w.r.t the flash based one https://support.oracle.com/CSP/ui/flash.html

specially if you are on Android Cupcake v 1.5....errr sorry did i mention a very outdated OS...whel i am a victim.

Happy debugging!!!!!

Friday, February 17, 2012

Allow Object Locking for Projects in Siebel.


For each project you can specify whether or not developers are allowed to check out and check in individual objects within the project. To allow developers to check out and check in objects, you set the project's Allow Object Locking property to TRUE. To modify the Allow Object Locking property, you must use the SADMIN user ID to log in, and you must be logged into a server data source. You cannot set the Allow Object Locking property in your local repository.

To set the Allow Object Locking property
In the Object Explorer, choose Project.

In the Projects window, choose the desired Project object, then right-click and choose Toggle Allow Object Locking.

NOTE: You can only change the Allow Object Locking flag on the Server database using the SADMIN login ID.

Important:If a project has the Allow Object Locking configuration file parameter set to TRUE, and the user is logged in to the server using the SADMIN user ID, the Toggle Allow Object Locking menu option is enabled. When the SADMIN user chooses this option for a project that is already set to allow object locking, a check is performed to determine whether any objects are locked on the server within the project. If there are objects locked within the project, the system administrator receives an error message. If the project is locked on the server by someone else, the menu option for Toggle Allow Object Locking does not appear.

Tuesday, February 14, 2012

Setting The JVM Classpath and JVM DLL Name in Siebel


Parameter
Value
JVM Classpath
<SIEBSRVR_ROOT>/classes/Siebel.jar;<SIEBSRVR_ROOT>/classes/SiebelXMLP.jar;<SIEBSRVR_ROOT>/classes/wlfullclient.jar
where:
SIEBSRVR_ROOT is the actual path where the Siebel Server is installed.
NOTE:  For UNIX, replace <SIEBSRVR_ROOT> with ${SIEBEL_HOME}.

Alternatively, you can set the CLASSPATH using the Siebel Server Manager (srvrmgr program). For information about using the srvrmgr program to set the CLASSPATH, see Troubleshooting the CLASSPATH Settings Using Siebel Server Manager.

CAUTION:  An error might occur if the value of the CLASSPATH parameter is too long (must be less than 1024 characters). To avoid this, copy the CLASSPATH folder to the root directory, and then point CLASSPATH to this path.
JVM DLL Name
For AIX, Linux, and Oracle Solaris:
<path to libjvm.so_file>
For HP-UX:
<path to libjvm.sl_file>
For Windows:
<path to jvm.dll >
For example, c:\Program Files\Java\jdk1.6.0_xx\jre\client\bin\jvm.dll
NOTE:  For Windows, the path to the JVM DLL file is automatically read from the Windows registry setting of the JRE installed on the Siebel Server.
For more information on setting the values of the JVM DLL Name and JVM Options parameters, see Transports and Interfaces: Siebel Enterprise Application Integration.

Tuesday, February 7, 2012

Siebel CRM version 8.2.2

Siebel CRM version 8.2.2 Industry Target Guidance

Siebel CRM version 8.2.2 (SIA 8.2.2) delivers enhanced functionality in the areas of Public Sector; Loyalty for Travel, Transportation, Retail and Coalitions; and Financial Services for integration to Oracle FLEXCUBE Universal Banking.

SIA 8.2.2 is intended specifically for Public Sector; Loyalty for Travel, Transportation, Retail and Coalitions; and Financial Services for FLEXCUBE Universal Banking customers who want to integrate with Siebel.
Siebel CRM version 8.1.x (currently SIA 8.1.1.6) remains the primary code line for all other Siebel products. Innovations, enhancements and patches will be delivered on a priority basis to the base code line for the affected products. Customers should work with their account team to review any questions on appropriate code lines for their implementation.

The software packages released with Siebel CRM version 8.2.2 are the following:

  • Siebel Business Applications for Public Sector Media Pack for Microsoft Windows x64 (64-bit) - Oracle Software Delivery cloud part number B65190-01, software translations available as B65244-01.
  • Siebel Business Applications for Travel, Transportation, Retail and Coalitions Media Pack for Microsoft Windows x64 (64-bit) - Oracle Software Delivery cloud part number B65192-01, software translations available as B65247-01.
  • Siebel Business Applications for Financial Services Integration with FLEXCUBE Media Pack for Microsoft Windows x64 (64-bit) - Oracle Software Delivery cloud part number B65194-01, software translations available as B65241-01.

These software packages are only applicable to the specified industry groups. All other Siebel products will continue primary development on the SIA 8.1.x code line.

The Siebel code line was split to deliver significant enhancements to specific industries without disrupting other product areas. In the near future, the Siebel code lines will be merged allowing both 8.1.x and 8.2.x customers to continue with their implementations without significant migration costs.

Example Scenarios:

I am a Loyalty customer from Telco or Financial Services looking for the 'latest' Siebel Loyalty release, what should I do?
You should target Siebel Loyalty version SIA 8.1.x.

I am a Siebel Financial Services customer not implementing the Oracle FLEXCUBE Universal Banking integration, wanting to migrate to the latest Siebel CRM products, what should I do?
You should target Siebel Financial Services version SIA 8.1.x.

I am a Siebel 7.8x / 8.0x Public Sector customer looking for the 'latest' Siebel Public Sector release, what should I do?
You should target Siebel Public Sector version SIA 8.2.2.

All industries not specifically listed above can continue on the SIA 8.1.x code line with no need for upgrade to obtain innovations. More information is available in the 'Readme' files in the above listed SIA 8.2.2 media packages on the Oracle Software Delivery cloud and from your account representative.

Tuesday, January 31, 2012

SRBroker and SRProc in a gist

Server Request Broker (SRBroker)

1.Used to start synchronous Siebel Server tasks
2.Server Request Broker & Server Manager are the only components which directly start tasks.
3.Introduced in in Siebel 7
4.Background component
5.Multi-threaded component
6.Need to set MaxTasks as per the needs.

Server Request Processor (SRProc)

1.Used to start asynchronous Siebel Server tasks
2.Manages queued requests
3.Calls SRBroker to manage task execution
4.Background component

This is a high level explanation which would be very helpful when you sit next time to debug logs;cheers

Wednesday, January 11, 2012

How to enable Customize Button

Enabling the Customize Button


The user can select a configurable product and click the Customize button to customize the product. However, the Customize button is only enabled when the user's responsibilities include one of the appropriate views that allows users to customize products. The following views of the Quotes screen are examples of views that enable the customize button:
  • Complex Product Runtime Instance View
  • Complex Product Runtime Instance View - Order
  • Complex Product Runtime Instance View - Shopping Cart
Within these views, the Customize button is enabled only when the type of the product is Customizable.
To find a complete list of the views that enable the Customize button
  1. Open Oracle's Siebel Tools.
  2. In the Views tab, search for views that match the following:
    Complex Product Runtime Instance View*

Monday, January 9, 2012

Did you Know these personalities in Siebel:)

Demo Users for Siebel Call Center
Username / Password
Name / Title
Application
Primary Responsibility
Role
CCHENG
Casey Cheng / Universal Agent
Siebel Call Center
Universal Agent
Cheng handles service requests of all types: emails, inbound calls, and Web collaboration session requests. In addition, he executes outbound call campaigns.
TARNOLD
Ted Arnold / Telesales Representative
Siebel Call Center
Telesales Representative
Arnold primarily executes inbound and outbound telemarketing and telesales calls.
VTAYLOR
Vic Taylor / VP Call Center
Siebel Call Center
Call Center Manager
Taylor's responsibilities for the day-to-day operations of a Call Center make him a regular user of Siebel Call Center Administration functions. He uses the Siebel Analytics function to evaluate performance and ROI and to make strategic decisions based on the analyses.
EMODI
Emily Modi /Engagement Manager
Siebel Call Center
Consulting Manager
Modi is responsible for managing a consulting practice business, including opportunity management, client relationships, contracts and agreements, and financial reporting and management.
GABBO
Glen Abboline / Information Technologist
Siebel Professional Services
Consultant
Abboline is responsible for day-to-day project management, including staffing requests.
GCLARK
Gary Clark / Consultant
Siebel Professional Services
Consulting Manager
Clark is responsible for managing a consulting practice business.

Thursday, January 5, 2012

How Siebel Workflow Interacts with Siebel Server Components..

Siebel Server Components

The Workflow Engine interacts with other server components through the Server Request Broker. Working as a business service, the Workflow Engine calls server components. To call a server component that is exposed as a specialized service, the Workflow Engine calls the signature for the service. For example, to send an email, the Workflow Engine calls the Communications Server as the Outbound Communications Manager business service. To assign an object to a user, it calls the Assignment Manager component as the Synchronous Assignment Manager Requests business service.
To call a server component that is not exposed as a specialized service, the Workflow Engine uses the predefined Server Requests Business Service. This business service sends a generic request to the Server Request Broker.

Server Request Broker
The Workflow Engine sends a request to the Server Request Broker, synchronously or asynchronously, and the Server Request Broker brokers the request to the appropriate component. The following work is performed:

1.Sending asynchronous messages from an interactive server component to the Workflow Engine

2.Communicating, synchronously and asynchronously, between the Workflow Engine and batch components

3.Scheduling repeated server tasks that are executed periodically in the Workflow Engine
The Server Request Broker also performs load balancing. If the Server Request Broker receives a request, then it routes the request to the server component in the current server. For a workflow process, if the component is not available in the current server, then the Server Request Broker sends it to other servers on a round robin basis where the Workflow Process Manager component is activated.
A workflow process also uses Server Request Broker to resume a waiting workflow process. The Server Request Broker queries a database table on a regular basis in order to identify server tasks that must be resumed.

Personalization Engine

The Personalization engine handles run-time events, such as application events, applet events, and business component events. A workflow process handles run-time events through integration with the Personalization engine. A workflow started or resumed by a run-time event registers itself with the Personalization engine when the process is activated. If a run-time event occurs in a user session, then the Personalization engine calls Siebel Workflow in the local object manager.

 

Wednesday, December 28, 2011

Components for Email Response in Siebel

Siebel Email Response Server Components

Siebel Email Response uses Communications Server components to enable contact center agents to read and respond to inbound email messages.

Key Server Components

Siebel Email Response is supported in the Siebel Server environment primarily by the following server components:
  • Communications Inbound Receiver (CommInboundRcvr). This server component receives inbound work items and queues them for processing by Communications Inbound Processor. Work items may include email messages (for Siebel Email Response).
    • For nonreal-time work items, such as email messages for most deployments of Siebel Email Response, Communications Inbound Receiver queues work items it has received for further processing by Communications Inbound Processor.
    • For real-time work items, such as email messages for some deployments of Siebel Email Response, Communications Inbound Receiver processes work items it has received. Communications Inbound Processor is not used.
  • Communications Inbound Processor (CommInboundProcessor). This server component processes inbound work items that were queued by Communications Inbound Receiver.
  • Communications Outbound Manager (CommOutboundMgr). This server component sends outbound email.
  • Siebel File System Manager. This server component writes to and reads from the Siebel File System. It stores inbound messages prior to processing and stores attachments to inbound and outbound email messages.

An Overview about Server Clustering

About Server Clustering

A server cluster is a group of two or more servers that are configured so that if one server fails, another server can take over application processing. The servers in a cluster are called nodes. Typically, these servers store data on a common disk or disk array.
Clustering software monitors the active nodes in a server cluster. When a node fails, the clustering software manages the transition of the failed server's workload to the secondary node.
When a clustered Siebel Server fails, all the applications and services on the server stop. Application users must reconnect and log in to the server that takes over. For example, if the Siebel Server that failed was hosting Siebel Communications Server, the communications toolbar is disabled, and users must reconnect and log in to the new server.
Cluster vendors can validate their third-party server cluster products to provide server clustering for deployments of Siebel Business Applications. For validation assistance, contact your Oracle sales representative for Oracle Advanced Customer Services to request assistance from Oracle's Application Expert Services. For recommendations and help on the use of cluster products with Siebel Business Applications, customers should contact the cluster vendor of their choice.

Active-Passive Configuration

An active-passive server cluster contains a minimum of two servers. One server actively runs applications and services. The other is idle. If the active server fails, its workload is switched to the idle server, which then takes over application processing.
Because the standby server is idle, active-passive server clusters require additional hardware without providing additional active capacity. The benefit of active-passive clusters is that, after a failover, the same level of hardware resources is available for each application, thereby eliminating any performance impact on users. This benefit is particularly important for performance-critical areas such as the database. The most common use of active-passive clusters is for database servers.

Active-Active Configuration

An active-active server cluster contains a minimum of two servers. Both actively run applications and services. Each may host different applications or may host instances of the same application. If one server fails, its processing load is transferred to the other.
Active-active configuration is the most common server clustering strategy for servers other than the database server.
NOTE:  Configuring the Siebel Database (database server) and a Siebel Server to failover to each other is supported, but not recommended.
Potential Port Conflicts
Some Siebel Server components, such as Siebel Connection Broker (SCBroker), Siebel Gateway Name Server, Synchronization Manager (Siebel Remote), and Siebel Handheld synchronization listen on a configurable static port. When these components run in an active-active cluster, you must plan your port usage so there is no port conflict after failover.
For example, an active-active server cluster contains two platforms, each running a Siebel Server. If one platform fails, the other will host two Siebel Servers. Siebel Servers include several services, such as Siebel Connection Broker, that use a dedicated port. If this port number was the same on both platforms, there will be a port conflict after failover.
Capacity Planning
Active-active clusters use all the server platforms continuously. Consequently, they take better advantage of computing resources than active-passive clusters. When doing capacity planning, make sure that clustered servers have sufficient capacity to handle a failover. Because failovers are usually infrequent and normally last only a short time, some performance degradation is often acceptable.

Thursday, December 15, 2011

How to enable a Component Group on Siebel Server


To enable a component group on a Siebel Server
Navigate to Administration-Server Configuration screen, Enterprises, and then the Component Groups view.
In the Component Groups list, select the Siebel Server component group of interest.
In the Component Groups Assignment list, select the Siebel Server of interest.
Click the Enable button.
The Enabled on Server? field of the Siebel Server record becomes checked.
For the change to take effect, stop and restart the Siebel Server System Service.

Tuesday, December 13, 2011

Implementing ACRs In Siebel

ACRs are enhanced functionalities provided as a part of patch installation.
A list of various ACRs will be available in the Siebel Maintainance Release Guide which are updated and various revisions are available in support web.
ACRs are usually found as a Zip file in the local installation of Tools in a folder called REPPATCH.eg:
C:/Siebel/Tools/REPPATCH.
These zip files usually contain archive files of seed objects like Applet,Views,Table,Webtemplate files etc.
ef ACR 374 to configure IMAP protocol

Wednesday, November 9, 2011

For a change lets know what are RSS feeds:)

What is RSS?
RSS stands for "Really Simple Syndication"(Origin - RDF Site Summary). It is a way to easily distribute a list of headlines, update notices, and sometimes content to a wide number of people. It is used by computer programs that organize those headlines and notices for easy reading.
Why do we need RSS?
Most people are interested in many websites whose content changes on an unpredictable schedule. Examples of such websites are news sites, community and religious organization information pages, product information pages, medical websites, and weblogs. Repeatedly checking each website to see if there is any new content can be very tedious.
Email notification of changes was an early solution to this problem. Unfortunately, when you receive email notifications from multiple websites they are usually disorganized and can get overwhelming, and are often mistaken for spam.
RSS is a better way to be notified of new and changed content. Notifications of changes to multiple websites are handled easily, and the results are presented to you well organized and distinct from email.
The Working Principle?
RSS works by having the website author maintain a list of notifications on their website in a standard way. This list of notifications is called an "RSS Feed". People who are interested in finding out the latest headlines or changes can check this list. Special computer programs called "RSS aggregators" have been developed that automatically access the RSS feeds of websites you care about on your behalf and organize the results for you. (RSS feeds and aggregators are also sometimes called "RSS Channels" and "RSS Readers".)
Producing an RSS feed is very simple and hundreds of thousands of websites now provide this feature, including major news organizations like the New York Times, the BBC, and Reuters, as well as many weblogs.
What information does RSS provide?
RSS provides very basic information to do its notification. It is made up of a list of items presented in order from newest to oldest. Each item usually consists of a simple title describing the item along with a more complete description and a link to a web page with the actual information being described. Sometimes this description is the full information you want to read (such as the content of a weblog post) and sometimes it is just a summary.

Eg:Of RSS XML

<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
        <title>RSS Title</title>
        <description>This is an example of an RSS feed</description>
        <link>http://www.someexamplerssdomain.com/main.html</link>
        <lastBuildDate>Mon, 06 Sep 2010 00:01:00 +0000 </lastBuildDate>
        <pubDate>Mon, 06 Sep 2009 16:45:00 +0000 </pubDate>
        <ttl>1800</ttl>

        <item>
                <title>Example entry</title>
                <description>Here is some text containing an interesting description.</description>
                <link>http://www.wikipedia.org/</link>
                <guid>unique string per item</guid>
                <pubDate>Mon, 06 Sep 2009 16:45:00 +0000 </pubDate>
        </item>

</channel>
</rss>
Atom(Feeds) is the next generation web feed mechnism or an aternative to RSS.

Tuesday, November 1, 2011

Playing with ToolTip in eCalendar Applets

Displaying Field ToolTip Text

When you move the mouse over a display field in a calendar record.The ToolTip content is configurable through the applet user property Display Field Name.Tooltip Fields, where Display Field Name is the name of the display field.
The user property value is a list of comma delimited business component fields. The values of these business component fields display as the ToolTip in the display field. By default, the name of the business component field is used as the label in the ToolTip text.
Make the label for a ToolTip field translatable by creating a control in the applet with the name Tooltip Field Label:Field Name. The caption of the control is used as the label for the ToolTip field. For example, for the business component Quote, field Name, the ToolTip label for the field is defined as a control of name ToolTip Field Label:Quote.Name, and the caption of the control will be the label for this field.

Wednesday, October 19, 2011

Configuring Visibility of Pop -Up and Pick Applets

About Configuring Visibility of Pop-Up and Pick Applets


Pop-up visibility determines what data will be shown when a pop-up pick applet is displayed, for example, when a user associates a contact with an account, or adds a sales representative to the sales team.
Pop-up visibility is usually set using the Popup Visibility Type property of the business component object in Siebel Tools. When pop-up visibility is set in this way, any pop-up based on that business component shows the same data for all users.
There are often circumstances where you require greater flexibility when determining what data is shown in pop-up pick applets. For example:
  • Most employees of your company only need to see positions for your organizations when they are assigning a sales representative to the sales team.
  • Partner Managers need to see positions for your organization, as well as the partner organizations that they manage.
There are also many scenarios where your partners require more restrictive visibility than your employees.
In order to meet this business requirement, Siebel Business Applications have three capabilities that allow the developer to override the visibility set in the Business Component Popup Visibility Type property at the business component level in favor of another setting. The developer can:
  • Set visibility of the Pick List object definition
  • Use the visibility Auto All property
  • Use the Special Frame Class and User Properties  

Setting Visibility of the Pick List Object Definition

Developers can override the visibility set at the business component level by setting a different visibility type on the Pick List object definition, in the Visibility Type property.

Using the Visibility Auto All Property

For both Pick List Visibility Type and Business Component Pop-up Visibility Type, you can use the Visibility Auto All property to override the visibility type property.
This property will check the current user's responsibility to see if it includes the All Across Organizations view based on the same business component. If the view is found, this visibility type will be overridden and the user will get All visibility on the object in question. Otherwise, the visibility type will not be overridden.
This property makes visibility consistent across views and pop-up pick applets.

About Using the Special Frame Class and User Properties

The developer can use a special frame class and user properties to set visibility for a pick applet on the applet object depending on which application is being used.
For example, if users are running Siebel Sales, the Pick Positions applet for the sales team shows positions only for the user's organization. If users are running Siebel Partner Manager, the applet shows the positions for the user's own organization and for the suborganizations (or child organizations) of that organization. This allows users to select positions for the partners they manage.
In order to override the pop-up visibility set at the business component level, the developer must make the following changes:
  • If the applet whose visibility is to be overridden is an association applet, change the frame class of the applet to CSSSWEFrameListVisibilityAssoc.
  • If the applet whose visibility is to be overridden is a pick applet, change the frame class of the applet to CSSSWEFrameListVisibilityPick.
  • If the applet whose visibility is to be overridden is an MVG applet, change the frame class of the applet to CSSSWEFrameListVisibilityMvg.
  • Add an applet user property called Override Visibility, with the following values:
    • Name: Override Visibility: [Application Name]
    • Value: [Visibility Type] where the developer can choose from the standard visibility types
  • Set the business component user property Popup Visibility Auto All to FALSE.
The developer can also set visibility on an applet based on whether the user has access to a view or not. The developer must change the frame class of the applet to CSSSWEFrameListVisibilityPick and add the following user property to the applet:
  • Name: Override Visibility View: [View Name]
  • Value: [Visibility Type] where the developer can choose from the standard visibility types
For example, to override Campaign Pick Applet popup visibility to All if the user has access to the Campaign Administration List view, add the user property with the following values:
  • Name: Override Visibility View: Campaign Administration List
  • Value: All