November 14, 2013

Siebel EAI Interview Questions - EAI Siebel Adapter

Question: Explain the methods of EAI Siebel Adapter


Answer: EAI Siebel Adapter is pre-build business service which interacts with Siebel Object manager to perform CRUD operations on Siebel Database. Following methods are available on the service:

Query

  1. Query method is used to query data from Siebel, output of this method is Integration Object instance.
  2. Query can be executed using :
    1. Row id of the primary BusComp
    2. Search spec consisting of parent and child buscomp fields.
    3. Integration object instance - which is also known as Query By Example
  3. Only required input argument of this method is Output Integration Object Name which is the name of integration object which is queried by the service.

November 07, 2013

Whats wrong with EAI Java Business Service?

What is wrong with EAI Java Business Service?? This was my reaction after struggling with EAI Java Business Service and trying to execute small Java code from Siebel. Actually there is nothing wrong with the service, it is our lack of knowledge and less experience with Java development which makes it difficult to configure.

I am going to list down steps required to get the Sample bookshelf code working with Siebel web client.



1. Siebel is not compatible with Java 1.7.
If you compile from Java 1.7 or above you will get the following error while calling service from Siebel

Class name incorrect or does not extend SiebelBusinessService : AddBusinessService -- JVM Exception:java.lang.UnsupportedClassVersionError: AddBusinessService : Unsupported major.minor version 51.0(SBL-EAI-05010)
For workaround Siebel Tools comes with a older version of jdk which can help you to compile and get rid of the above error.

November 01, 2013

JSON and Siebel


JSON(JavaScript Object Notation) is a new lightweight integration message format which is replacing XML in thin client integrations. There are no meta tags and data description in JSON as in XML, it is just a string representation of JavaScript Object, it is designed to help javascript code to convert data to string and string to data without considerable overhead.


JSON vs XML


Many companies have started replacing XML with JSON in APIs. All the APIs of Google (Maps,Mail,Calendar, plus etc are now serving JSON), Twitter API,  Facebook apps and interfaces are built using JSON.
Read more on JSON on : http://www.json.org/

Siebel lacks in support of JSON on server side. Oracle support recommends use of workarounds such as using custom scripting to parse JSON response received by Siebel.

So how to interpret json in Siebel? Answer lies in the escript engine of Siebel. Siebel eScript as we know is actually ECMA script which was basis of Javascript. That is why the syntax of Javascript and eScript closely matches each other.
ECMA adopted JSON before it became standard in javascript. Thus our well known Siebel eScript also have some support.

October 19, 2013

How to Pre-populate CC or BCC in Siebel F9 Functionality?

Siebel F9 Email Client no doubt is one of best out of the box functionality of Siebel. It has lot of its logic built into the classes thus presents some limitations. In our previous post we saw how we can bring data from child business component data into email body.

In this posts lets see how we can pre-default CC or BCC recipients using some scripting. Out of the box
when ever Send Email method is invoked from on any Siebel Applet, Send Communication Applet is opened, and "To" email field is populated with the value of the field specified in Recipient Email Address Field  user property on the BC.

However there is no way we can pre-default CC and BCC fields out of the box. With the help of small script on  Send Communication Applet can set the value of To Email, CC, BCC and Email Body as well. This can be useful little customization that can help to pre-populate data which can not be achieved using email templates and recipient groups.

function WebApplet_Load ()
{
    var oBC = this.BusComp();
    oBC.SetFieldValue("Email BCC Line","a@a.com");
    oBC.WriteRecord();
}

Siebel Email Client - Siebel 7.8
Hope it helps

-Jim

October 18, 2013

Property Set Value is marked as binary data - SBL-EXL-00109

Error: PropertySet GetValue call failed. PropertySet Value is marked as binary data, starting with: 'PropertySet GetValue call failed. PropertySet Value is marked as binary data, starting with: '(SBL-EXL-00109)

This error occurs when Siebel script tries to manipulate the data from external interface which is not UTF-16, as GetValue or GetProperty Methods are build to return on UTF-16 data. I was getting this error when I was trying to GET some data using EAI HTTP Transport Service.

There are two solutions which can be used to resolve this issue.
First: Use Transcode Service, Convert Method, and using EncodingToString and SourceEncoding as CP1252. Read more on: http://learnfrommike.blogspot.com.au/2012/08/read-response-from-invoking-siebel-crm.html

Second: EAI HTTP Service provides conversion directly from the service. We can provide
CharSetConversion input property to convert the output to required encoding. I was successful using following code:

function Service_PreInvokeMethod (MethodName, Inputs, Outputs)
{
var bs = TheApplication().GetService("EAI HTTP Transport");
var inp = TheApplication().NewPropertySet();
var op = TheApplication().NewPropertySet();
inp.SetProperty("HTTPRequestMethod","GET");
inp.SetProperty("CharSetConversion","UTF-8");inp.SetProperty("HTTPRequestURLTemplate","");
bs.InvokeMethod("SendReceive",inp,Outputs);
return (CancelOperation);
}

Hope it helps.

Part4: Patching Siebel 8.1.1.10 Client

This step is the  last and simplest step of the Siebel installation.The only two point to make sure in this step are:
Select the right oracle home for patching, by default it create another oracle home and might not complete as installation file does not contain all the data.
Second verify Summary which is shown just before installation,  it should read as below.


See the complete list of steps : Installing Siebel 8.1.1.10 on Windows 8

Part 3:Installing Siebel 8.1.1 Client on Windows 8

After downloading the jar files and creating Siebel Install Image, task that remains is to install Siebel 8.1.1 Tools and client and patching  with 8.1.1.10. There are only few hiccups with this installation.

Pre-Installation steps:
1. Create Siebel folder, and share this folder with every user with full access. - although it is not required but it helps to avoid file write errors.
2. Change oui.exe comapatibility setting to run it in Windows XP(Service Pack 3) mode.

Installation steps:
1. Run oui.exe and select Run as administrator option, select the folder created for installation.
2. Installer might report some warnings as part of Pre-requisite checks, check the flags to skip them.
3. Select Developer web client in next prompt.
4. After this step, installer asks for parameters for server configuration, which is used for server management screens of the application. These parameters are not required to populate now, one can safely skip to next steps keeping the “CHANGE_ME” value.
5. In final step installer displays all your inputs to confirm your responses, and provide option to install.
6. To install Active X, installer opens up the internet explorer, if installation of Active X fails, installation can get corrupted and you can get the following error, to avoid this error click allow button on ie for installation of active x and close the browser when requested.

Errors you might face:
---------------------------
siebel
---------------------------
SSACommonDllInit failed for enu(SBL-GEN-02505)
---------------------------
OK  
---------------------------
Click play to view screencast for the installation


Steps to download Siebel Tools 8.1.1.0




October 13, 2013

Part 2: Creating Siebel Install Image

This article is Second in series of How to Install Siebel 8.1.1.10 on Windows 8.

It explain how to create Siebel Install Images on Windows 8 using files downloaded in Part 2: Download Siebel Jar files from Oracle
Before proceeding with installation make sure you are logged in using administrator user, and latest JRE is installed if not please use: Java.com
Download Java

After installing JRE,  follow these steps in sequence.
Point to be noted:
  1. Full install image need to be created for Siebel 8.1.1  
  2. Patch Image need to be created for Siebel 8.1.1.10
  3. Siebel Image creator will need to be run in console mode for 8.1.1 (only 8.1.1.10 image creation is shown below).

Part 1: Download Siebel Jar files from Oracle

This article is First in series of steps to Install Siebel 8.1.1.10 on Windows 8.

It explain which files to download from Oracle Software Delivery Cloud for installation of Siebel 8.1.1.10
As explained earlier to install Siebel 8.1.1.10 we need to download binaries for version 8.1.1 also.

Siebel 8.1.1 installation downloads required:

Siebel Business Applications Version 8.1.1.0 Siebel Client(Part 1 of 2)
Siebel Business Applications Version 8.1.1.0 Siebel Client(Part 2 of 2)
Siebel Business Applications Version 8.1.1.0 Siebel Client Part 2 (Part 1 of 2)
Siebel Business Applications Version 8.1.1.0 Siebel Client Part 2 (Part 2 of 2)
Siebel Business Applications Version 8.1.1.0 Siebel Tools
Siebel Business Applications Version 8.1.1.0 ImageCreator Files



Siebel 8.1.1.10 installation downloads required:

Siebel Industry Applications Version 8.1.1.10 Siebel Client
Siebel Industry Applications Version 8.1.1.10 Siebel Tools
Siebel Business Applications Version 8.1.1.10 Sample Database Files
Siebel Business Applications Version 8.1.1.10 ImageCreator Files

These files in total are around 10 GB, luckily Oracle software delivery cloud allows opening multiple connections for downloading files. I was able to download @ 2Mbps using Free download manager, otherwise download speed drops soon after reaching 20%.
I highly recommend to use Free Download Manager to manage Siebel downloads.

October 12, 2013

Installing Siebel 8.1.1.10 on Windows 8

Installing Siebel Tools and Web Client can be very daunting sometimes, especially when you trying to install  a new Version of Siebel on a new operating system. I spent many weeks to get my Siebel 8.1.1.10 (technically ver 8.1.1.10.0) self learning environment on Windows 8 and as expected process was difficult.

Every step in installing there was some sort of issue, I have created list of issues I found and the work around. I have divided steps into posts:

Downloading Siebel Jar file from Oracle
Creating Siebel Install Image
Installing Siebel 8.1.1
Patching Siebel 8.1.1.10

Before proceeding with the steps please be informed about following: 
  1. Siebel 8.1.1.10 Tools and Client can not be installed at directly, you will have to install Siebel 8.1.1 first and then create patch-set to install Siebel 8.1.1.10. However it is possible to create single Siebel 8.1.1.10 Server installation image.
  2. You should have administrator privileges and have the latest version of JRE from java.com
  3. You would need oracle accoun to access and download all the files from  Oracle Software Delivery Cloud  required for Siebel 8.1.1 and Siebel 8.1.1.10

Disclaimer: Windows 8 is not supported/recommended platform for Siebel, please use solutions provided at your own discretion.