Monday, November 3, 2014

Siebel Open UI Code Template Generator

Sometimes I am overwhelmed by feeling totally privileged of working with so many brilliant people. Last week, fellow book author and Oraclean Duncan Ford published the Siebel Open UI Code Template Generator.


I am sure the Siebel Open UI community will be more than grateful for this JSFiddle project as it allows you to quickly pull a template for any type of Presentation Model or Physical Renderer. This way you can get started quickly and without the hassle of keeping static files.

The generator is easy to use, let's have a quick walk-through.

  • First, you select the type of template (PM or PR) and the type of object (for example for a desktop form applet).
  • Next, enter a name for your new class and decide whether you want comments and/or basic logging.
  • Now simply copy the code and paste it into a new file in an editor of your choice.
  • Save the file, using the same name as of the class (suffixed with 'PM' or 'PR'), to the siebel/custom folder in your developer web client.
You might already know where we go from here: Register the file in the Manifest Files view:


For demo purposes, we choose a UI object, let's say the Service Request Detail Applet. So for this demo, we have to register the new file as a physical renderer for this applet in the Manifest Administration view.


After logging off and on again, we can navigate to a view that contains the test applet and verify that the JavaScript console displays the log messages.


Voil?, a fully functional custom physical renderer in a few minutes. Now you can start implementing your custom code, which will probably take a bit longer ;-)

Thanks again to Duncan for this great contribution to the Siebel Open UI community.

Here is the link again: Siebel Open UI Code Template Generator

have a nice day

@lex

Friday, October 31, 2014

Interview with Yassine Kabbaj of Siebel Private Cloud

Here at Siebel Essentials, we are always on the watch for interesting developments around Siebel CRM. A few weeks ago, a new company - Siebel Private Cloud - appeared on the internet. They offer Siebel CRM in the cloud, ranging from sandboxes to full production scale deployments without the hassle of installing, maintaining and securing a Siebel server environment.

An offering like this brings up a lot of questions, so we contacted Yassine Kabbaj, founder and CEO of Siebel Private Cloud and he was so kind to agree to the following email interview.

***

Siebel Essentials: What were the reasons why you founded Siebel Private Cloud?
Yassine Kabbaj: After 15 years of Siebel Consulting, I've decided to launch this project for the following reasons:
  • I believe Open UI will give a new breath to this market as it is heading up the right way and opening so many doors.
  • Too many resources are spent setting up and maintaining Siebel environments and my ambition is to provide time and cost effective reliable solutions to start with.
  • Consulting was a great way getting into and understanding IT business, but after a while, I felt I wasn't learning much anymore. It was time to look for new challenges.
SE: What are the offerings of Siebel Private Cloud?
YK: The following services are currently available:

Siebel Sandbox: Appropriate for evaluation, demo or training.
  • One dedicated virtual server for the database instance (Oracle Database 11g Express Edition)
  • One dedicated virtual server for Siebel (Gateway, Siebel Server, Siebel Web Server)
Siebel Development: Appropriate for development and testing
  • Dedicated root server for complete Siebel development environment
  • One dedicated virtual server for the database instance (Oracle Database 11g Express Edition)
    • Four pre-installed Siebel schemas (Development, Test, Acceptance, Training) 
  • Four dedicated virtual servers for Siebel (Development, Test, Acceptance, and Training)
  • Online secured VPN access
  • Daily backup
Siebel Production: Appropriate for Siebel production environments
  • Two dedicated root servers for complete Siebel production environment 
  • One dedicated virtual server for the database instance per dedicated root server (Oracle Database 11g Release 2)
  • One dedicated virtual server for Siebel per dedicated root server 
    • Pre-installed Siebel native load balancing over the 2 dedicated root servers 
  • Online secured VPN Access
  • Daily backup
Siebel Toolbox Server (coming soon):
  • SVN server for Siebel Tools source code integration. 
  • Mantis bug tracker.
  • Jenkins continuous integration system to manage, monitor and execute repeated Siebel jobs (compile, deployments, integration, testing etc ...). 
  • Big Data and Analytics integration
SE: Do your offerings include Oracle product licenses?
YK: Oracle Siebel and Oracle Database license keys are not included. Customers need to obtain license keys through the appropriate channel from Oracle.

Sitemap of the Siebel Sales demo application provided by Siebel Private Cloud.
Click to enlarge.
SE: Can you share some technical details for our readers on the hosting?
YK: Our data-center is located in Germany. It is fitted with redundant network, high-speed access to all internet uplinks, 24/7 monitoring, Juniper routing technology and 620 Gbit bandwidth. The minimum availability of the network is 99%. The servers come with high-performance Intel� Core i7-4770 Quadcore processor and the Haswell architecture.

We use the following software and technologies: 
  • Ubuntu 14.04 Server for Siebel DB 
  • Oracle Linux 5 Server for Siebel Servers 
  • Virtualbox for virtualization 
  • Hadoop and MapReduce for Big Data 
  • Pentaho for analytics
SE: Which Siebel applications are you offering?
YK: We offer all available Siebel applications.

SE: What about highly integrated applications like Siebel Marketing, Universal Customer Master, or Public Sector? How can customers manage the integration with Oracle BI, OEDQ or OPA?
YK: Our Siebel environments are connected via VPN. So basically integration with other applications is more a matter of the quality of the SOA architecture and integration best practices than the Siebel environment itself. In other words, if the pre-existing SOA architecture has been implemented in a loosely coupled manner, than the integration with the Siebel environment should go smoothly.

SE: How will you support customization?
YK: Our service packages are based on Siebel environment templates. Unless it is absolutely necessary, we highly discourage our customers to customize their environments in order to avoid complexity and the resulting maintainability issues. Although it is impossible for our templates to cover all the situations, we constantly try to provide a complete solution able to answer all the potential Siebel business needs in a reliable efficient and cost effective way. We provide full support for Siebel configuration development integration and migration which his is discussed on a case to case basis with our customers according to their specific needs.

SE: Do customers have full Siebel Administrator responsibility to manage their applications and servers? 
YK: Indeed, customers have full Siebel administrator responsibilities to manage their applications and servers. It is their own responsibility to set their own limitations according to their resources' skills.

SE: With the announcement of Oracle to bring Siebel Tools to the web in a future version, will you support it when it arrives or is it too early to tell?
YK: Unless we hit a real blocking issue (which a priori should not happen), we will definitely support Siebel Tools to the web when it arrives.

SE: Could customers use the Siebel Open UI API to create custom themes and JavaScript files (and upload them to the web server)?
YK: Yes, the Siebel web server is co-located with the Siebel application server and the developers have access to the appropriate folders and resources.

SE: What kind of backup plans do you offer for your customers?
YK: Siebel servers are virtual machines which allow daily snapshots (or more frequently if needed). Virtual machine snapshots are used for recovery and implementation rollback. Siebel databases are backed up daily but as virtual machines they can also benefit from the snapshot recovery and rollback feature. More generally, we try our best to help and support our customers and to adapt environments to their specific needs.

SE: Will you offer upgrades to future Siebel versions?
YK: The upgrading to future Siebel versions is indeed a service that we offer.

SE: What message do you have for the Siebel community?
YK: Siebel has not had its last word!

***

Many thanks to Yassine for this interview and good luck with Siebel Private Cloud.

have a nice day

@lex


Thursday, October 30, 2014

PacktLib Plus: 5 Free eBooks or Videos

As you might know, Packt Publishing offers PacktLib, an easy-to-use subscription for ebooks and videos. With this offer you get one free download per month.

When you subscribe to PacktLib until November 4th, you can get even more for your money: PacktLib Plus


With PacktLib Plus you get additional five eBooks or videos (worth up to $150) for free in the first month.

Don't miss this offer. Click here to find out more.

have a nice day

@lex

Monday, October 27, 2014

Siebel High Interactivity Clients and IE 11 Enterprise Mode

With a bow to the good people at ec4u expert consulting, I am pleased to present in this article a white paper they put together on a feature of Internet Explorer 11 which is known as Enterprise Mode.

In times where IE 8 is the last version that is officially supported by Oracle, customers who have - for whatever reasons - decided not to migrate to Siebel Open UI in the near future and stick with the ActiveX based High Interactivity client, IE 11 Enterprise Mode is the 'silver lining' and allows them to provide end users with modern versions of both Microsoft's operating system and browser.

Please note that this article is a replication of the ec4u white paper and makes no statement whatsoever about Oracle's support policies. Please always contact Oracle Support if you have doubts or questions regarding supported platforms for your Siebel deployment.

Having stated the above, here is the article provided by ec4u:

***

1. Functionality

Enterprise Mode for Internet Explorer 11 solves compatibility issues that occur with older Web apps.
For example:
  • Enterprise Mode replicates the Internet Explorer 8 user agent string, to express applications which use browser detection.
  • For ActiveX controls, that query the browser version, Enterprise Mode imitates Internet Explorer 8 responses.
  • Some older Web apps use CSS expressions to position buttons or other items. Because these and other features were removed in Internet Explorer 11, Enterprise Mode brings them back.
2. Manually Activate Enterprise Mode

To activate and deactivate Enterprise Mode manually for websites it needs to be activated in the Group Policy Editor:
  1. To open the Group Policy Editor press the Windows-Key + R, enter �gpedit.msc� to the dialog and confirm with enter.
  2. In the Editor Window navigate to User-Configuration > Administrative Templates > Windows Components > Internet Explorer.
  3. Scroll down to �Let users turn on and use Enterprise Mode from the Tools menu option�, open the entry with double-click and activate it.
  4. Additionally enter an URL, where reports about the usage of the Enterprise Mode will be saved.


To use Enterprise Mode, Internet Explorer must be restarted. In a new Internet Explorer Windows navigate to Menu > Tools > Enterprise Mode.

3.1 Turn on Enterprise Mode and Use a Site List

Before you can use a site list with Enterprise Mode, you need to turn the functionality on and set up the system for centralized control. By allowing centralized control, you can create one global list of websites that render using Enterprise Mode.

Enterprise Mode works on Internet Explorer 11 running on Windows 8.1 Update, Windows Server 2012 R2, Windows 7 SP1, or Windows Server 2008 R2 with SP1.

3.1 Activate using Group Policy
  1. Open the Group Policy Editor.
  2. Navigate to  Computer-Configuration > Administrative Templates > Windows Components > Internet Explorer.
  3. Activate �Use the Enterprise Mode IE website list� and type the location of your Enterprise Mode IE website list.

3.2 Turn on Enterprise Mode Using the Registry
  1. Open the registry editor, e.g. regedit.exe.
  2. Navigate to registry key HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Main\EnterpriseMode (Use Enterprise Mode for current user) or registry key HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Internet Explorer\Main\EnterpriseMode (Enterprise Mode for all users on the PC).
  3. Edit the site list registry key to point to where you want to keep your Enterprise Mode site list file (e.g. �SiteList� = http://localhost:8080/sitelist.xml).


3.3 Create a site list

A site list can be created with any text editor. But the Enterprise Mode site list manager is the most comfortable way to do this. Microsoft offers the site list manager for free on http://www.microsoft.com/en-us/download/details.aspx?id=42501.


Add a Website to the Compatibility List
  1. Start the Enterprise Mode Site List Manager
  2. Click on �Add� to append new websites to the list. Pick Enterprise Mode if the site should use the new, modified browser configuration or pick Default IE if it should use the latest version of Internet Explorer. �Save� the current website to the list.
  3. Via File > Save to XML the site list is generated and can be saved.
Add multiple websites
  1. Start the Enterprise Mode Site List Manager 
  2. Via the menu got to File > Bulk add from file and choose a TXT- or .XML-File, that contains websites, you want to add to the site list. 
  3. Example TXT-File (You must separate each site using commas or carriage returns.):

The Enterprise Mode Site List Manager creates a XML-File as shown above. The version number is generated automatically and should not be changed manually. To update the site list, import it to the Enterpriser Mode Site List Manager. There you can make your changes and provide them by saving the list to XML.

To provide the Enterprise Mode site list for the users, store it on their local computers or to a network share. It is important, that the location of the site list is stored in the registry key.

***
Thanks again to ec4u for providing this information.

have a nice day

@lex

Wednesday, October 22, 2014

Bye bye INFA, Hello ODI

We have come a long way from Siebel Analytic Applications, the grandfather of OBI Apps to Oracle BI Apps 11g. The former became Oracle BI Apps 7.9.x and - as most of my readers will be aware - uses Informatica products for ETL.

Since Oracle launched the 11g version of OBI Applications which use Oracle's very own (ex Sunopsis) Data Integrator (ODI), rumors about the demise of the 7.9.x branch could never be fully squelched.

At OpenWorld 2014, Oracle finally sent the message of focusing solely on OBI Apps 11g, leaving customers using the 7.9.x versions with the option of staying within support but not receiving any updates or migrating to 11g and ODI.



On the Business Analytics - Proactive Support blog, we are informed that Oracle has published a Statement of Direction on My Oracle Support which is indeed worth reading when you are involved with Oracle BI Applications.

Let me quote from this document:

"Oracle will continue to support the 7.9.6.x product series according to the Oracle Lifetime Support policy located at http://www.oracle.com/us/support/library/lifetime-support-middleware-069163.pdf including certifications of databases, operating systems, and enabling 3rd party technologies. However, Oracle will no longer develop new content for this series, nor extend the 7.9.6.x support or any series based on an ETL architecture with Informatica.

Oracle and its Systems Integration partners will provide engagements and limited migration tools to enable customers that wish to migrate forward to the 11g series to do so. As these tools become available, they will be provided on the Oracle Technology Network."

So with moist eyes we witness the end of an era and the rise of a new star: Oracle Data Integrator. If you find yourself in need of training, Oracle University has a new course out already.

have a nice day

@lex



Monday, October 20, 2014

Unsung Siebel Command Line Heroes: dataexp

When it comes to getting data out of and into a Siebel database, usually the first tools that come to mind are Siebel EAI business services like EAI Siebel Adapter or Enterprise Integration Manager (EIM). While EIM and EAI provide the richest functionality and are popular for good reason, sometimes we just need to transport some records in a table from one Siebel database to the other.

Such scenarios are often found when it comes to working with non-production environments, such as test instances where we quickly want to establish test records and the like.

In this small series, I would like to discuss two command line utilities that have been around ever since (probably since the very early Siebel versions), namely dataexp and dataimp. In this article, we introduce dataexp and in the next we take care about dataimp.

The seasoned Siebel veteran might have seen dataimp being used heavily during Siebel seed data import, while installing or upgrading a Siebel database.

Siebel bookshelf doesn't mention these utilities very often but for 'backup' scenarios (such as for LOVs here). It is important to note that dataexp and dataimp are low-level flat-file tools that are used internally in Siebel CRM and the general recommendation is NOT to use them for purposes other than simple flat-file data backups. So for example if you want to move your account or contact data from production to test, you better use EIM or EAI.

Some years ago, this humble writer was tasked with migrating data from the Siebel sample database to a server environment (aka 'Sybase to Oracle') and I found solace in using dataexp to extract the data from the sample DB and dataimp to import it into the server database.

Exporting data from a Siebel database using dataexp

You can find the dataexp (and dataimp) command line utilities in the BIN folders of Siebel Tools or the Siebel Server. First let's fire up dataexp without any arguments to get a list of mandatory and optional input arguments.


Obviously /U (Username) and /P (Password) are required as per the argument list, and I think it wouldn't work without specifying /C (ODBC Data Source) and /D (Siebel Table Owner).

Furthermore, you'll need /F to define the path of the export file (if you don't accept the default).

So a first test command looks like the following.

dataexp /U SADMIN /P SADMIN /C ouisandbox /D SIEBEL

In the above example, the ODBC data source name is 'ouisandbox' which should be replaced by an existing ODBC data source for your target database.

If not specified, the dataexp utility will prompt you to enter the path to the export file (default is dataexp.dat) and then will prompt you to specify the name of a table to export. After entering a table name, the data will be exported to the .dat file and the utility prompts for the next table. If you stop providing table names, the utility will exit.


In the example in the screenshot we exported the S_OPTY and S_OPTY_X tables to a file named test.dat.

If you dare to open the .dat file, you will see a veritable mess of readable and binary data. The utility exports all columns of the table by default in binary format (see below). Not for the faint of heart, and certainly not anything you would want to edit.


So let's explore some of dataexp's specialized options or arguments:

File Output Format

The /T argument allows us to specify the output format (see above for the default (b)inary output). Other options are (c)ompressed or (t)ext.

So this command line will result in a text output file which is much more readable (and editable, at your own risk of course).

dataexp /U SADMIN /P SADMIN /C ouisandbox /D SIEBEL /F d:\test.dat /T text

The (c)ompressed option will render a file that is in fact compressed and much smaller in size.

Where Clause

The /W argument - when set to Y - will instruct the dataexp utility to prompt for a where clause which you can use to apply a filter to your source data, so you don't export all rows.

At the prompt, provide a WHERE clause including the 'WHERE' such as the following example.

WHERE ROW_ID LIKE '1%'

We Like Table Names

The /K argument - when set to Y - allows you to use the % wildcard while specifying the table name. So for example you can enter S_OPTY%X to define all extension tables for S_OPTY as the source.

Using an Input File

If you want to automate the export process, the /I argument comes handy. A valid input file for dataexp is a text file which contains a list of table names (one table per line). For each table you can specify a WHERE clause. Inspecting the seed_locale.inp file which you find in your Siebel folders yields a good example what an input file can look like.


Logging

The default log file is dataexp.log but you can change the path using the /L parameter. The /Q parameter allows to set the logging interval (default is -1, which probably means only log at the end of the process and if you use a value of 1 it turns out to write to the log file every second, slowing down the process considerably).

Reset System Columns

When we set the /S argument to Y, then the following columns will have default values in the export file (not in the source database of course).

CREATED="1980-01-01 00:00:00"
CREATED_BY="0-1"
LAST_UPD="1980-01-01 00:00:00"
LAST_UPD_BY="0-1"

As you probably know, '0-1' is SADMIN's ROW_ID.

Multiple Files

Using the /M parameter - set to Y - we can split the output in multiple files. This one goes together with the /N argument which defines the maximum file size in bytes. If you specify /N, the minimum number of bytes is 2000000.

As a result, you will find multiple output files if the minimum file size is exceeded. They will have a suffix with the file number such as in export.dat.001 and so forth.

Undocumented Arguments

For the following arguments there is not much information available, so let's consider them for internal use.

/R Read consistency (Default: N): Probably dealing with dirty reads.
/G Use Repository definition (Default: N): Probably used with /Y to read repository metadata
/Y Repository Name (Default: Siebel Repository)

Summary

The dataexp command line utility can be put to good use for simple flat-data backups from single tables. Again, please heed the warning that this is NOT fully documented and should NOT replace your usual toys for integrating Siebel with other applications. Rather, see it as a Siebel-to-Siebel tool which is mostly used internally.

have a nice day

@lex

Thursday, October 16, 2014

Five Timeless Rules for Successful Siebel Projects

While the near and not-so-near future for Siebel CRM is truly exciting, with so many new things coming up to learn and write about, it is worthwhile to sit back and browse the archives.

Five years ago, after OpenWorld 2009 (!), I cross-posted an article from the Oracle Customer Experience blog (formerly known as CRM Product Marketing blog).

This is what I wrote back then:

Stating the obvious...

After all these years, thousands of Siebel CRM implementation projects and so much experience of thousands of experts in the field, I can't believe that there are still many Siebel CRM projects which ignore one or all of these five simple rules for a successful Siebel CRM implementation (Credits to Divya from the CRM Product Marketing Blog):
  • Standardize on tools and languages
  • Keep customization to a minimum (yes a MINIMUM)
  • Involve end users
  • Communicate with others who have done it before
  • Implement regional or online training for end users
Remember: These are recommendations from companies who successfully implemented Siebel CRM.


What can I say, some advice is timeless. So if you are just in the process of reviving your Siebel CRM project with Open UI, better stick to these rules.

have a nice day

@lex