Siebel Community

Welcome to Siebel Community. In this place you can find all the topics related to Siebel. This place is dedicated to provide information about how to implement Siebel CRM application. Siebel Technical/Functional consultants can get information from basics of Siebel CRM to advanced topics like EAI, EIM, eScripting, Workflows, Assignment Manager, Actuate Reports, Territory Management. This place also included Forums and Blogs to help you further.

Sunday, November 27, 2011

Siebel 8 debug mode problem with Internet Explorer 8 ?

I am working on Siebel 8.1, and had Internet explorer 7 running, which ran without any issues. After an upgrade to IE 8, I found that the Siebel debug mode would no longer open. The IE window would open up and throw a "page not found" error. But the Siebel client would open fine, when started via its own shortcut.


As a workaround, inorder to open Siebel 8.1 debug mode in IE, there should be no other instances of IE running. Just kill all other IE instances, and simulating the workflow should be fine.

Thursday, November 24, 2011

Contact Denormalization

The Following steps need to be done for Contact Denormalization:
Navigate to Site Map -> Assignment Admin -> Assignment Policy ScreenQuery for following Policy Records by Name field and backdate the expiration date for these recordsASGN: ContactContact DenormalizationLogin to Server Managersrvrmgr /g /e /s /u /p Start Batch Task for doing the jobStart task for comp asgnbatch with asgnmode=’Denorm’, AsgnObjName=’Account’, ObjWhereClause=Exit from Server managerexitObserve that all associated contact records have upadted there contact list position data with the associated Account record

Clarify the use of user property SSA DeDuplication Field

1) Does the sequence of SSA DeDuplication Field * in the User Properties of Business Component 'Contact' plays any role in giving stronger emphasis to one field over the other one ?

A: The number itself has no impact on the weight or importance of the fields in calculating the matching score, just need to make sure that the field# is consecutive and there is no gap.

2) If we plan not to include some of the SSA DeDuplication Fields in the matching process,after inactivating them, do we have to remove them from Contact Contact Matching Field * and Contact Contact_INS Personal Address Matching Field * in User Properties of Business Service ' UCM Data Quality Manager' ?

A: Yes, when the dedup fields are inactivated, make sure that the corresponding SSA DeDuplication Fields# for the active fields are modified accordingly to make sure there is no gap.

3) Does the Real Time DeDuplication that detects the possible duplicates at the base table level uses SSA settings at the Business Service level 'DeDuplication' or uses SSA settings at the UI level under Data Quality Settings ?

A: It uses SSA settings from DQ Admin level though most of the properties don’t overlap

4) For matching there are Key Type and Search Type. How does it determine which Match Level (Narrow, Typical or Conservative) to use for matching on the base table records ?

A: Data Quality Mgr business service has the following user prop

SSA Default Universal Setting Key Type
SSA Default Universal Setting Match Level
SSA Default Universal Setting Search Type

Please note for Key Type and Search Type, the settings in DQ Admin overwrites the setting defined at BS user property.
If no key type or search type defined under DQ Admin, the default value defined as BS user property is used.

The SDQ does not enable user to set Match level from DQ Admin. It will use the setting defined as BS user property.

Saturday, November 19, 2011

Siebel Tools Check In-Check Out

One of the most important activity performed by Siebel developer is Check In - Check Out.
This post will explains ins and outs of Siebel Check – In/Check – Out process.


Check In – Check Out process can be divided broadly into 2 phases.
Outside Siebel Tools
Inside Siebel Tools
Outside Siebel Tools: There are two types of data sources
that you need to setup before you can do any check – in or check – out. These are

Local Data Source
Server Data Source

Details on how to create these data sources can be found in the category Siebel Data Sources. These data sources tell Siebel from where to get data and where put it. In Check – Out process Local Data Source points to the destination [which of course is you local dbf file] is destination and Server data source is Source and vice versa in case of Check in. After you have setup your data sources you need to inform Siebel about them. This can be done in two ways.

1. Entry in your tools.cfg file. You need to modify two parameters.
LocalDbODBCDataSource= SSD Local Db default instance
ServerDbODBCDataSource= SSD default instance

These are the default values and should be sufficient in most of the cases but in case if you defined your own data sources you will have to mention it here.

2. Specify them inside Siebel tools.
So, till now what we have come to know is that we have to perform 2 things outside siebel for Check-In/Check-Out
Create Data sources (Optional)
Specify them in Tools.cfg (Optional)
Inside Siebel Tools: You can also specify your data sources to be used for check in and check out in Siebel tools. To specify your data sources go to

View » Option » Check In/Check Out Tab
You should see a Data Sources section here. On Server or Local sections click Change button and provide the following information.
Data Source Name
User Name
Password
Table Owner (Usually Table Owner is Siebel. Contact your Siebel Admin to know the value if different)

Similarly you can specify the same parameters for Local section also.If you specify parameters in Siebel tools they will overwrite the parameters specified in tools.cfg file.

Now after all these setting Inside and Outside Siebel (which I am sure is not very simple ), Check – In and Check – Out should be a pretty simple 5 step process given below.
Login to Siebel Tools with local database
Select an Object that you want to Check Out
Right Click and select Check – Out option (F10 keyboard shortcut)
Make your changes to the object
Select the object and press (CTRL + F10) or Tools » Check In

Wednesday, November 16, 2011

How to do "Generate Triggers" for new WF Policy to work?

"Generate Triggers", this is one of the step that one needs to perform whenever he created a new WF Policy and wants it to work as per the conditions specified for the policy.

Here is the process to do that :
1. Navigate to "Administration - Server Management -> Jobs" view and click on New.
2. Put the Component/Job = "Generate Triggers"
3. Now, in the Job Parameters applet, you need to provide the following four parameters :
a) EXEC : TRUE

b) Remove : FALSE
c) Privileged User : "Database Table Owner Name"
d) Privileged User Password : "Table Owner Password"
4. Click on Start.
5. After few seconds, refresh the view (by clicking on "Execute Query" button), you will see Execution Server will get assigned to the request and Status changes to "Active".
6. After few minutes, again refresh the record and once the trigger gets generated, Status changes to "Success".

Tuesday, November 15, 2011

Major enhancements in Siebel UCM 8.1

Oracle has done some major enhancements in Siebel UCM 8.1.


* These major enhancement in Siebel UCM 8.1 are with reference to Siebel UCM 7.8

1). The Data Quality module has become more refine now. Now we need not call any webservice for invoking Trillium.
We have an OOB business service i.e. UCM Data Quality Manager which provides us with methods Cleanse and Match for performing data quality activity.
2). The second important thing is regarding Privacy. UCM 8.1 provides OOB connector for Integrating Haley Business Rules which was previously called through webservice.
3). The UCM 8.0 onwards has provided Transaction History view which stores the audit trail for Contacts, Accounts, Financial Accounts and Households.
4).In Siebel 8 onwards you can now change component parameters and the parameter change is applied without having to restart the component. You can also set components to "Manual Start" through the click of a button to prevent them starting up automatically when the server starts. Components and Tasks can be paused and resumed.
5). In Siebel Tools, there are new Siebel Operation Steps in workflows including:
a) QueryBiDirectional: Essentially this means you can execute query in forward backward mode
b) NextRecord/PrevRecord: You can now query and scroll through multiple records.

Workflow Invocation

There are a number of ways that a workflow can be invoked using Siebel server script. This article will describe these alternatives and provide an example of each using Siebel eScript.


1. Call synchronous server request
2. Call asynchronous server request
3. Call workflow as a business service

1. Call synchronous server request
This method makes a request to invoke a task for the workflow to be invoked by the Workflow Process Manager Siebel component. When the request is made for the workflow to be executed, the script will wait for the workflow to completed prior to continuing (hence synchronous).
When the synchronous server request is submitted the request is routed to a siebel server which has the Workflow Process Manager component enabled and online. A new job/task is created for the workflow job, this task record will be displayed in the Administration - Server Management > Jobs view.
Using this method, the workflow will be invoked by the SADMIN user. This means that the any records modified by the workflow will show as modified/created by SADMIN.
Using this method, the workflow will be invoked on a server that has the Workflow Process Manager component enabled and online. This is a useful method in the case where the Siebel enterprise has a number of Siebel servers and a single Siebel server is dedicated to execute workflows. This may be handy if the workflow generates external files where it is important that these are always stored on the same server.
Here is an example of making a syncronous server request to call a workflow using Siebel eScript:
var svcServerRequest;
var psWorkflowChildIn;
var psWorkflowIn;
var psWorkflowOut;
try
{
svcServerRequest = TheApplication().GetService( "Synchronous Server Requests");
psWorkflowChildIn = TheApplication().NewPropertySet();
psWorkflowIn = TheApplication().NewPropertySet();
psWorkflowOut = TheApplication().NewPropertySet();
psWorkflowChildIn.SetProperty("ProcessName", "My Workflow Process");
with (psWorkflowIn) {
SetProperty("Component", "WfProcMgr");
AddChild(psWorkflowChildIn); }
svcServerRequest.InvokeMethod("SubmitRequest", psWorkflowIn, psWorkflowOut);
}catch(e){
TheApplication().RaiseErrorText(e.toString());
}finally
{ svcServerRequest = null;}


2. Call asynchronous server request
This method is the same as that for calling a synchronous server request, however after the call is made to execute the asynchronous server request, the script does not wait for the workflow to complete, it continues immediately and does not wait for the workflow.
Here is an example of making an asynchronous server request to call a workflow using Siebel eScript:
var svcServerRequest;
var psWorkflowChildIn;
var psWorkflowIn;
var psWorkflowOut;
try {
svcServerRequest = TheApplication().GetService( "Asynchronous Server Requests");
psWorkflowChildIn = TheApplication().NewPropertySet();
psWorkflowIn = TheApplication().NewPropertySet();
psWorkflowOut = TheApplication().NewPropertySet();
psWorkflowChildIn.SetProperty("ProcessName", "My Workflow Process");
with (psWorkflowIn) {
SetProperty("Component", "WfProcMgr");
AddChild(psWorkflowChildIn);
}
svcServerRequest.InvokeMethod("SubmitRequest", psWorkflowIn, psWorkflowOut);
}catch(e){
TheApplication().RaiseErrorText(e.toString());
}finally { svcServerRequest = null;}


3. Call workflow as a business service
This method executes the workflow in real time within the current application object manager instance. This method executes the workflow as though it was executing a business service.
Using this method, the workflow will always be executed syncronously. The workflow will be executed within the instance of the user session, therefore the workflow will be executed as the user logged in hence inheriting all the security settings of the user logged in.
Here is an example of calling a workflow as a business service within the application object manager instance using Siebel eScript:
var svcWorkflow;
var psWFInputs;
var psWFOutputs;
try {
svcWorkflow = TheApplication().GetService( "Workflow Process Manager");
psWFInputs = TheApplication().NewPropertySet();
psWFOutputs = TheApplication().NewPropertySet();
psWFInputs.SetProperty("ProcessName", "My Workflow Process");
svcWorkflow.InvokeMethod("RunProcess", psWFInputs, psWFOutputs);
}catch(e){
TheApplication().RaiseErrorText(e.toString());}
finally { svcWorkflow = null;}