Oracle Forms have a legacy of well over a decade in Oracle application development. The main reason for their popularity is their tight integration with the Oracle Database. The application development can be enormously fast when using them alongside Oracle Database. But like I said in my earlier post that the problem with Oracle development tools is that they are not up to the mark. Same applies for Forms and Reports Developer. Since 6i nothing has been done to improve them. Although Oracle has incepted a web interface starting from 9i but that does not seem to be much. It uses Java in the form of JInitiator which hangs more and works fewer. I have done quite an extensive development using Forms and Reports Developer for well over two years and still doing to a great extent. I also had to manage Oracle Application Server which is hosting applications built using these two tools. So, quite a relationship: to say the least. But as the matter of fact now a day I am sick and tired of this platform.
It seems that Oracle has also backed down from these tools or at least I haven't heard anything about these tools from Oracle news sources for a very long time. Instead Oracle is supporting a shift from Forms to Oracle ADF and JDeveloper. But problem for me is that I hate anything that has anything to do with Java. So this migration is not in my concerns. However I have made a shift and the shift is from Forms to APEX. Oracle Application Express (simply APEX) formally known as HTML DB is a web based RAD tool to build application that use Oracle Database has their data source. I used the word RAD because in my opinion application development is faster as compared to Oracle Forms and in turn to any tool used with Oracle Database. The biggest pleasure for me is less effort on interface designing and yet better attractive interface. Also according to my users it is easy to use and HTML makes it run much better in browser then Forms applications.
The thing that made me think of making this transition was PL/SQL. It is common in both. All of your knowledge of PL/SQL applies to one hundred percent here. But beware of the coding style of yours, don't repeat Forms style coding here. The problem with them is that they will not give any errors at compile time but results will not be as you might expect. For example if you have to write a small trigger in Forms to return values of an item you will be quite habitual in typing as:
Return: bind_variable;
No Begin … End block and still it is perfectly ok to write like this. It is also ok in APEX as well as for as compilation goes but it will not work. You need to rewrite it like below to work properly:
Begin
Return: bind_variable;
End;
Now it will work. In more than one ways Oracle APEX is appreciable and one must do that although it has no comparison with big Giants like .Net and J2EE.