Oracle Discoverer to Oracle BI Enterprise Edition

Tuesday I went to a session regarding migrating Oracle Discoverer to OBIEE which was a very interesting resume on do’s and don’ts when migrating.

First of all only metadata is migrated, not the reports itself. When you think about that is a logical approach as well because you don’t want all your front-end reports and logic to be delivered in OBI. OBI has a lot of more features which you wouldn’t be using when migrating as well metadata as reports.

Tip: Use different rpd-files when you have loads of data to resolve performance issues because BI Server reads through the whole rpd-file when starting up.

How to start migrating:

  • Export ‘End User Layer’ in discoverer to a .eex file
  • The migrate tool itseld is a windows based tool which you can use command-line to migrate the .eex file to an .rpd file. You can change the properties of the migration tool in the MigrationConfig.properties file.
  • Copy the .rpd-file to your BI Server/Repository folder
  • Define which .rpd-file to start-up with in the NQSConfig.INI file
  • Update the .rpd-file online
  • Login to your OBI-environment and open up the Answers-tab to look through the Subject Area and data that has been created using the .rpd file. From now on you start creating your own reports as a business user.

What isn’t migrated when opening the rpd-file in OBI EE:

  • You have to reestablish the connection to your database
  • You have to define a password for your Administrator user otherwise your BI Server won’t come up on your linux environment. This is a very important tip: because it takes a while to find out which error occured when you’ve migrated your discoverer metadata to an .rpd file and your BI Server crashes.

Oracle Service Bus : Agility in Action

Yesterday I followed a session regarding OSB given by Jeff Davis, it was an interesting session with a lot of demo’s regarding using business services and proxy services.

Topics that we’re interesting to me during the session and I would like to share with the community:

  • Coherence ships with OSB/Weblogic which gives you the possiblity to cache service results to speed up performance. As Jeff mentioned a case could be that your users need to get the latest financial results each day which is a long running business process. This process can be launched asynchronously when the user is logged on in the background. The result of the process is then put in the service cache so when the user needs the information it’s shown to him without delay. The Service Result Caching functionality is integrated within OSB 11G, Release 1.
  • OSB 11g, Release 1 is also fully integrated with Enterprise Repository which gives you the possiblity to index all your existing services using your metadata such as XML, XSD, WSDL, … Using Enterprise Repository the impact of changes made to individual services is clear which makes your release management process a lot easier! Make sure to check out the features and functionality delivered by the Enterprise Repository to be able to govern your services throughout the enterprise.
  • OSB12C (C stands for Cloud) is the next upcoming release of OSB which holds a lot of new interesting functionality such as templating/prototyping services, development is integrated within Jdeveloper, … The fact that the development will be integrated within Jdeveloper gives your development team the possibility to use one and only one IDE to have E2E development from database to business components, to services such as bpel, osb, external services, business rules untill the end-user interface

During the demo Jeff showed how you can expose functionality of an EJB 3.0/2.1 module as a service using business services and proxy services. You can transform from an EJB 3.0 business service to an EJB 2.1 Proxy Service using XQuery and the JEJB protocol.

OOW 2010: Moving forms to ADF

When working with Oracle Forms these days and you’re not satisfied with the application anymore, there are some possibilities you can do:

  • upgrade
  • modernize
  • integrate
  • migrate

On our OOW session tomorrow(Oracle Forms in the Middle of Middleware, 1pm, Marriott Marquis Room: Salon 9), we will talk about the first three possibilities, upgrade, modernize and integrate.

But today I went to the session of Grant Ronald: Moving from Oracle Forms to Java and Oracle Application Development Framework
A session about migrating Oracle Forms to ADF.
The strategy of oracle is NOT desupporting Oracle Forms, on the contrary, they’re working on new features for 11g R2.

But when you consider migrating, do it for the right reasons.
Three kinds of reasons: the good, the bad and the ugly

Reasons to choose for migration can be

  • forms doesn’t meet the requirements anymore
  • there’s need for re-development
  • adopt leading edge, modern technologies

Reasons NOT to choose for migration:

  • there’s a heavy forms investment you don’t want to throw away
  • happy with data entry (and to my opinion forms is one of the best choices for data entry applications)

Wrong reasons:

  • forms will be desupported -> A clear answer of Grant Ronald: THIS IS NOT THE CASE!
  • upgrading your forms application will result in big problems
  • rewriting the application will save $$$

So migration is an option for your forms application, but Grant stated it several times in his session: DO IT FOR THE RIGHT REASON.

About migrating forms to ADF…
The technologies look similar…
Grant made a comparison between a dish washer and a washing machine.
Both have the same measurements, do similar things(wash something and dry it), etc.
But who puts his clothing in a dish washer?  Or cups and glasses in a washing machine?
So thechnologies look similar, but are different:

  • Java applet <> HTML/javascript
  • PL/SQL <> Java
  • Stateful <> stateless
  • No separation of UI and data elements <> seperate UI and data elements

Do not ignore those differences when looking at migration!

ADF is a framework and does a lot of things for you(like log on to the database, you don’t have to write the code) which is pretty nice.
But hey, Forms does also things for you, it’s also a framework.

You can build applications in ADF that look like forms application and have the same behaviour, but is that the reason to migrate, to work the same way?

When migrating there are some more challenges, eg reusability of table/views, procedures/functions, PLL, triggers.  What about forms built-in functions?

So, of course migration is an option for your Oracle Forms application, but ask yourself a question: Why migrate?
Take a look at all the options, before going to migrate.  It’s not an easy path to walk…

Check also the paper Grant wrote about migrating: Migrating Oracle Forms to Fusion: myth or magic bullet

PL/SQL Developer, Quiz thyself

This morning I went to a session of Steven Feuerstein: PL/SQl Developer, quiz thyself. A very interactive and fun presentation where the attendees had to answer questions regarding SQL and PL/SQL.

First we played a game of mastermind in which you can sharpen your deductive skills as Steven mentioned. Playing mastermind improves your skills to debug your code and eliminate factors out.

You can find all the material of his presentations and the quizes in the demo.zip file which is on his website (have a look at training, seminars).

Some items I’ve noted during the session:

How to continue past exceptions

  • Use format_error_stack to display you errors instead of SQLERR using the DBMS_UTILITY package
  • Use DBMS_ERRLOG.create_error_log to create an error log table based on your table on which your performing the DML on
  • Surpress exceptions at row level => only possible way is when using log_errors()
  • Exception raising is expensive in PL/SQL it’s better to trap exceptions

Performing bulk processing:

  • Use forall to perform bulk processing instead of looping over cursors and performing DML within the loop

Ask for improvements for 12G release: Use the website ‘I love PL/SQL and …’ to add your suggestions regarding functionality to add in 12g release.

  • plitblm holds all functions you can use when working with associative arrays
  • format_error_backtrace gives you the possibility to get the line number where the error was raised. Have a look at Quest Error Manager to get the error-log framework

The entire session was very interesting, especially because it was a fun and practical game where you can teach thyself.

Oracle Open World 2010

Me and my colleagues arrived saturday afternoon in San Francisco, we rushed to our hotel and after a refreshing shower after a whole day trip we went to our first event: drinking and eating ;o)

It was a fun event with a lot of benelux partners but we didn’t keep up very late because of the jet lag.

The next morning we went on a sailing trip with the Oracle Partners, had a nice lunch and then went to pick up our badges at Moscone West. As expected there are a lot of people attending Open World.

Regarding the Jet Lag, my internal clock is still running in the Belgium timezone … hopefully that’ll sort itself out asap ;o)

Today we’re going to start quizing ourselves with Steven Feuerstein …

To all, have a wonderfull Open World and don’t miss our session regarding Forms Modernisation Wednesday !