You may have heard the rumors about upgrading to Forms 11g R2. How all you need is a quick recompile of your 10g forms. I of course was skeptical since I’ve heard rumors like this before… “It’s just a minor upgrade”, ”Just run the migration wizard and you’re done” :)
This time I can happily report that it is TRUE.
Last week we successfully upgraded about 700 forms to 11g R2 in about a WEEK including all installs and infrastructure configuring.
I installed Weblogic 10.1.3.5 and Forms 11g R2 standalone (Installs to download here) on a VM machine of Windows 2008 R2 – 64 bit (See post for how to do the installation) and recompiled our 10.1.2.3 Forms application. I completed all installations, configuration of files, registry editing, signing of the jar files, HEBREW SUPPORT configuration :) and upgraded the 10g application. The whole deal took about 1.5 days and only because I ran into a silly bug. (which I tell you how to avoid in this post)
In general the only issues we ran into while compiling and upgrading the Forms were “nit picky”. 10g did not really care if we had a piece of code that was not supported on the web or small inconsistencies in the code . Now forms 11g gets aggressive.
If a form does not compile, it’s best to check the following:
1) Does the Form call graphics? (no longer supported in 11g)
2) Does it calls to unsupported triggers, properties or code? (For example calling OLE2 without using webutil)
3) Does it have inconsistencies in datatypes such as a character fields that are assigned to a number in packages?
4) Does it have inconsistencies between package specs and bodies?
5) Notice – The names of icons have gotten SUPER case sensitive meaning that if you have an icon mia.GIF it is not equal to mia.gif and will not show up.
Truth is, I was shocked at how smooth it went! From about 700 forms only about 12 had issues to fix.
We then did performance testing of the 10.1.2.3 in production as we have it today as a baseline. The Forms 10.1.2.3 system on VM Windows 2003 Sp2 – 32 bit had about 75 concurrent users before form sessions started crashing and response times of those who were already connected became intolerable.
Then came time to test Form 11g R2. We started running the tests and we were amazed. Not only did we reach the limit of the testing license 250 users. But the performance was faster than the current production system with 70 users. The 250 users did not even begin to scratch the surface the performance did not degrade by a millisecond. Basically the system will go from 12 production servers in 10g to 3 in Forms 11g !! What a pleasure it will be to do maintenance. I can not stress enough- put the installation on 64 bit. I have another customer who installed Forms 11g R2 on 32 bit and it was nowhere near our performance.
As a consultant who has gone through some VERY painful migrations this one was really a pleasant surprise. So if the new features in Forms 11g R2 are not enough to WOW you into upgrading your forms then just think of the performance and reduced maintenance advantages! I have not been this happy to enter an upgrade project in years
You can also join my Webinar with ODTUG and Grant Ronald of Oracle tomorrow for more tips and tricks on modernizing your forms application. Register HERE.
Have any of you begun your migration? Share thoughts and tips….
Mia
Mia,
The blog is wonderful!
I am so exited, it’s like to have a huge hug.
Thanks a lot for your help,
Efrat
Mia,
We have upgraded our server,now i would like to integrate with Javascript ,i would like to have a pop up alert in the notification area based on some external event.Can you give me some suggesitions on this.
Regards,
Najeeb.m
Hi Najeeb,
To begin using Javascript with Oracle Forms I suggests you start here.
http://st-curriculum.oracle.com/obe/forms/11g/jsinteg/formsjsinteg/setup.htm
Its a great step by step tutorial.
Good Luck,
Mia
We did in Nucleus Software Noida India for one of our customers and since last 4 months are struggling with FRM-92104 and hang issues. Any insights will be really helpful. Abosultely no other issues encountered.
Do you have 2 weblogic Oracle Forms servers in a cluster?
Nopes, we dont have cluster. We are using OHS in front of our WLS_FORMS and WLS_REPORTS. Earlier we thought the error will have something to do with a bug or incorrect configuration of HTTP Server. But when we tried using application directly with WLS_FORMS port, the same problem persisted. Hence, it looks to be something related to FORMS only.
I, on the other hand, happen to have 2 Oracle forms servers, not in a cluster, but on the same server using different ports. Also, we have a total of 4 servers (each with 2 forms servers and also with 2 reports servers as well).
Last night we have applied a merge patch 14037368. I am going to keep a watch on the behaviour now. I am sure hang issues will be minimized but am still skeptical about FRM-92104 error
It has been a while since you applied the patch. How was it? Any good?
My system showing FRM-92104 from time to time. Need a way out. Thanks.
As said above graphics are not supported in forms 11g,is thier any work around to make the graphics work in oracle 11g.
Please let us know as we have encountered compilation problems while performing the migration.
Hi Prasanth ,
Graphics was actually not officially supported from version 9 of Oracle Forms. In this version of forms you could no longer develop NEW graphics for your applications BUT it did not have trouble compiling forms that had graphics. In Forms version 10g there was a way to run the existing Oracle graphics in your application in a client server way. But Oracle stated that the future was to convert all graphics to Java beans. They even supplied a demo of such in the Forms 10g demo pack that can be downloaded from OTN. From Forms 11g they have officially stopped supporting Oracle Graphics. All graphs and graphics code must be must be removed from the fmb or it will not compile. Today there are many graphic options to incorporate into your forms. Any graph java bean that exists can be embed in a form. But to get you started you can checkout these links:
http://www.oracle.com/technetwork/developer-tools/forms – Graph bean demo for 11g
http://forms.pjc.bean.over-blog.com/ – Java bean example website
http://www.oracle.com/technetwork/developer-tools/jdev/adf-dvt-graph-howto-082848.html – ADF graph beans
Good Luck!
If you are coming to Open World. I would be happy to discuss this with you further.
Mia
Hi,
We are migrating from 10g window based servers to 11g weblogic linux based server. I am able to compile the code successfully . My problem is when I am running one form, its throwing 06508 error , but I am not really not understanding why its throwing this error. Do you have some simple tools or utility to migrate form to 11g…
Thanks in Advance
Ashwani
Hi Ashwani,
The error 6508 means that the Forms is not able to find one of its PLL’s library code at runtime.
This usually is a problem with the Forms_path environment variable.
There are several tools that can be used to facilitate the migration to 11g process. The most common one is PITSS (www.pitss.com) it can generally help facilitate the migration process but to be honest the error you are getting would still occur if you use an automatic tool since the environment at runtime will still need to be configured. You can see my post on how to install 11g for details.
Good Luck,
Mia
Hi Mia,
Thanks alot for your quick reply, ok I think this is problem with environement, I am new thats why, actually I set this variable just now while compiling the form as below
export FORMS_PATH=/ikea/ptagplus/pp100/bin
As all my forms and pll are at this path, but I am still getting the same error, should I recompile the libraries as well after setting this path. Or I need to set this path some where else… please help
//ashwani
Hi Mia,
I am still facing the same issue, Form_path is set I have checked in default.env. I put customised msg in form , then I found that its throwing error while calling one specific program unit….. but every thing seems ok with that program unit, Can you please help me on this….
HI!
What is the different between 10g and 11g by the memory usage? How many memory need the “base” 11g and the “base”10g system? Any how many memory need it by 10,20,…100 users?
Regards, Jani
Hi Jani,
It really depends on so many factors that this is not really something I can answer in a post.
To determine sizing one must know
1) What O/S you are running
2) What version
3) what are the system parameters CPU, Processor, RAM
4) About the Forms application – Are the fmb size large or small? Do Forms have multiple windows, canvases? Do they have many java beans? Graphical elements? Did they use design standards?
5) How many total users will be running the system? How many concurrent users will you have.
In any case I usually suggest installing an 11g r2 test server and deploy your application here then run load testing. If you want intformation about the performance improvement I got at one of my clients you can read about it here
Jani,
The best way is to check what is the minimum requirement as per the installation guides and then size the environment (hardware resources) incrementally according to (1) load, (2) application type and (3) Application usage patterns which is best achieved by performing load tests.
Regards,
Prateek Sachan
ISS, NSEL, Noida, INDIA
+91-120-4031400 (Ext. 1765)
hi,
only problem i am having as at now is that i was able to call the forms application in 11g.
1) i can not navigate from the front page to any other page.
2) i did a recompilation and got this error message
Compiling CENTERWINDOW.pll
Forms 11 (Form Compiler) Version 11.1.1.6.0 (Production)
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 – Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
PL/SQL Version 11.1.0.7.0 (Production)
Oracle Procedure Builder V11.1.1.6.0 – Production
Oracle Virtual Graphics System Version 11.1.1.6.0 (Production)
Oracle Multimedia Version 11.1.1.6.0 (Production)
Oracle Tools Integration Version 11.1.1.2.0 (Production)
Oracle Tools Common Area Version 11.1.1.6.0
Oracle CORE 11.1.0.7.0 Production
Compiling library CENTERWINDOW…
Invalidating Procedure Body SHOWWINDOW……
Invalidating Procedure Body CENTERWINDOW……
Compiling Procedure Body SHOWWINDOW……
ERROR 49 at line 9, column 20
bad bind variable ”
ERROR 49 at line 9, column 20
bad bind variable ”
ERROR 103 at line 9, column 21
Encountered the symbol “GLOBAL” when expecting one of the following:
. ( ) , * @ % & = – + at in is mod remainder not rem =>
or != or ~= >= <= and or like like2
like4 likec as between from using || indicator multiset
member submultiset
The symbol “.” was substituted for “GLOBAL” to continue.
ERROR 49 at line 10, column 20
bad bind variable ”
ERROR 103 at line 10, column 21
Encountered the symbol “GLOBAL” when expecting one of the following:
. ( ) , * @ % & = – + at in is mod remainder not rem =>
or != or ~= >= <= and or like like2
like4 likec as between from using || indicator multiset
member submultiset
The symbol “.” was substituted for “GLOBAL” to continue.
ERROR 0 at line 0, column 0
Automatic recompile of Procedure Body CENTERWINDOW failed
ERROR 49 at line 9, column 20
bad bind variable ”
ERROR 49 at line 9, column 20
bad bind variable ”
ERROR 103 at line 9, column 21
Encountered the symbol “GLOBAL” when expecting one of the following:
. ( ) , * @ % & = – + at in is mod remainder not rem =>
or != or ~= >= <= and or like like2
like4 likec as between from using || indicator multiset
member submultiset
The symbol “.” was substituted for “GLOBAL” to continue.
ERROR 49 at line 10, column 20
bad bind variable ”
ERROR 103 at line 10, column 21
Encountered the symbol “GLOBAL” when expecting one of the following:
. ( ) , * @ % & = – + at in is mod remainder not rem =>
or != or ~= >= <= and or like like2
like4 likec as between from using || indicator multiset
member submultiset
The symbol “.” was substituted for “GLOBAL” to continue.
ERROR 0 at line 0, column 0
Automatic recompile of Procedure Body CENTERWINDOW failed
ERROR 0 at line 3, column 3
Statement ignored
Compiling Procedure Body CENTERWINDOW……
ERROR 49 at line 9, column 20
bad bind variable ”
ERROR 49 at line 9, column 20
bad bind variable ”
ERROR 103 at line 9, column 21
Encountered the symbol “GLOBAL” when expecting one of the following:
. ( ) , * @ % & = – + at in is mod remainder not rem =>
or != or ~= >= <= and or like like2
like4 likec as between from using || indicator multiset
member submultiset
The symbol “.” was substituted for “GLOBAL” to continue.
ERROR 49 at line 10, column 20
bad bind variable ”
ERROR 103 at line 10, column 21
Encountered the symbol “GLOBAL” when expecting one of the following:
. ( ) , * @ % & = – + at in is mod remainder not rem =>
or != or ~= >= <= and or like like2
like4 likec as between from using || indicator multiset
member submultiset
The symbol “.” was substituted for “GLOBAL” to continue.
Closing library CENTERWINDOW…
Compilation errors on SHOWWINDOW:
PL/SQL ERROR 0 at line 3, column 3
Statement ignored
Failed to generate library.
FRM-30312: Failed to compile the library.
the procedure generating this error message is this
PROCEDURE CenterWindow(wind in varchar2) IS
mdi_H Number;
mdi_W Number;
f_H number;
f_W number;
wnd window:=find_window(wind);
BEGIN
mdi_H:=to_number(:Global.heigth);
mdi_W:=to_number(:Global.width);
f_H:=to_number(Get_Window_Property(wnd,HEIGHT));
f_W:=to_number(Get_Window_Property(wnd,WIDTH));
Set_Window_Property(wnd,Y_POS,(mdi_H-f_H)/2.0);
Set_Window_Property(wnd,X_POS,(mdi_W-f_W)/2.0);
END; please what can i do>
Hi Mia,
Your information is wonderful provided related to forms.I am migrating form 6i to 11g..I’ve do all the configuration in default.env,formsweb,tnsnames,registry.dat..But main problem is it that when when I run a new form it display icons on the form but when I run a migrated form It is not able to show the icons while i configure /forms/java in the necessary and icons are displaying when i run a new form created in 11g..Kindly suggest me and mail me on my id…..
I really need it..
Regard
Muhd.Aarir
Hi Aarif,
Are you running the icons in a Jar file that is download using the archive parameter of the formsweb.cfg or as icon files?
If you have icon image files then you must check – What is the path to the icon files? Is that same icon path written in the registry.dat file?
Thanks,
Mia