Tuesday 3 March 2009

Apex 3.2: My first Oracle Forms conversion

I developed Oracle Forms applications for many years. I also did some minor APEX projects. I read about the ability of Apex 3.2 to migrate Oracle Forms applications and I was wondering how this is working.

First I upgraded my Apex 3.1.2. to 3.2. This was quite easy. Download the zipfile from OTN, extract it, started the good old sqlplus against my local XE database, ran a script and everything was ok.
Then I started to read the manual about the migration process. The picture that I found there was very clear:


and there was a little roadmap as well.

First I had to create a little form. I decided to create an extremely simple form. I wondered how the migration works I'm not (yet) interested in migrating complex forms.
(when I look at the image above this should be possible as well. Pll, olb and mmb files can be migrated too).
Using the Oracle Forms wizards a simple form on dept was created. When I run the form it looks like this:



A simple CRUD (create,retrieve, update, delete) screen on Dept. The resulting fmb is darwin.fmb.

The first step in the migration process is creating an XML file of the fmb file using frmf2xml.bat.
This command does the job:
C:\oracle\10gR2\bin\frmf2xml.bat darwin.fmb

After this I started APEX (I allready had a workspace and a user) and on the righthand side of the screen there is a new option: Application Migration



After clicking this I had to create a new project and after that I had to import the previously created darwin_fmb.xml file:


After pressing [next], I get a summary of the imported XML file:



The original form consist of 1 block, 1 base table block (this is nice, the converter is able to dsitinguish beteen base table and non base table blocks!) and three items. In this form are no triggers, no list of values, no alerts and no program units. In this simple case I'm not interested in the last objects but I have to admit that I'm curious what will happen with these objects.

I have the option to upload another XML file but I choose for creating the application.

This results in the following steps:

[Next]

[Next] Note: By default Apex creates a Report followed by a Table layout


A tabular Form


With the first theme.



And after a while there is the application.
When I run it I see that the application is migrated very smoothly. This looks very promising for more complex forms!



5 comments :

Angel Blandon said...

Hi, do you have an installation guide of apex 3.2, i am trying to install whith oracle database 10g, but at the moment i am not geting it. Thats why i am asking you for the installation guide, what do i need before executing the instalation command.

Regards.

Erik Trip - Darwin IT Professionals said...

Hello Angel
Why would you install Apex 3.2.
This is an old version that's not completely supported anymore.
I would recommend you to install the latest version which is 4.2.

See http://www.oracle.com/technetwork/developer-tools/apex/documentation/index.html
for an installation guide

Angel Blandon said...

Hi, thank you for your recomendation, what i am trying to do is the migration of an oracle form 6i application and i have read that is possible whit apex 3.2, do you have any recomendation to do that??

Erik Trip - Darwin IT Professionals said...

Hello Angel
That's p[ossible with apex 4.2. as well.
See http://www.packtpub.com/oracle-application-express-forms-converter/book

Angel Blandon said...

Thank you, i will try to do it...