Oracle Application Express
Return to Oracle APEX Home
Oracle Application Express for Oracle Forms Developers
Oracle Forms was introduced by Oracle in the mid 1980's as one of the industry's first and most powerful database application development tools. Oracle Forms has had a long and very successful lifespan of 20 years and still going. Oracle Applications leverage Oracle Forms as do large numbers of database applications. Oracle Forms has transitioned from character mode and block mode to client server, and to the Internet with Forms Server, however many organizations today want to transition to an HTML based solution. For those developers that want native html applications, many alternatives are available. One solution is using JDeveloper and Oracle Application Development Framework (ADF). For more information, visit the J2EE Application Development for Forms and Designer Developers OTN site. Another alternative that should be considered is Oracle Application Express. If you are unfamiliar with Oracle Application Express, you can gain an understanding of its key features here. If your project has the following:
  • IT Professionals with extensive SQL and PL/SQL knowledge
  • Limited object orientation programming expertise
  • Applications based upon tables stored in one Oracle database
Then you should consider using Oracle Application Express. The following table outlines the key similarities and differences between Oracle Forms and Oracle Application Express.
Feature Oracle Forms Application Express Description
4GL Declarative Yes Yes Oracle Forms renders applications using metadata stored in an .fmx file. Application Express renders applications using metadata stored in an Oracle database.
4GL Languages SQL and PL/SQL SQL and PL/SQL Oracle Forms runs client-side PL/SQL. Application Express uses server-side PL/SQL.
User Interface Java HTML Oracle Forms is accessed using a web browser and its user interface is rendered using a JVM. Application Express is also invoked from a Web browser but its user interface is HTML and JavaScript.
Page Layout Windows / Canvases Page / Regions Oracle Forms uses exact positioning and Application Express uses HTML-relative positioning.
Client-side Field Control Form triggers Javascript and AJAX Oracle Forms provides robust field-level validation and event processing. Application Express supports declarative page-level validation and event processing. Programmatic field-level validation and event processing requires Javascript and AJAX.
Web Service Support Yes Yes Both Oracle Forms and Application Express support the calling of Web Services, for example BPEL.
Charting BI Beans Flash Charts Oracle Forms uses BI Beans as its integrated charting engine. Application Express uses Flash Charts as its integrated charting engine.
Locking Pessimistic, Optimistic, Custom Optimistic, Custom Oracle Forms supports a range of locking models with pessimistic as the default. Due to its asynchronous architecture, Application Express uses an optimistic locking model.
Database Connections Synchronous Asynchronous Oracle Forms uses synchronous connections to allow transactions to span multiple screen interactions. Application Express does not transparently allow transactions to span page views. Application Express programmatically supports transactions spanning page views using collections.
Concurrent User Support Database connectivity maintained by user session Database connectivity only maintained for the processing of requests Each connected user in Oracle Forms maintains a synchronous connection to the Oracle database. Application Express users are asynchronously connected to the Oracle database.
Architecture 3 Tier 2 Tier With Oracle Forms, Application logic is processed in the Oracle database, a mid-tier Forms Server, or in the rich client. With Application Express, PL/SQL application logic is processed within the Oracle database. Client-side logic is implemented using JavaScript. HTTP communications are facilitated using Apache and Mod/PLSQL.

Oracle Application Express Oracle Forms Conversion Project

Oracle Application Express, release 3.2 and above, enables you to load your Oracle Forms source into an Oracle Application Express project and generate an initial APEX application. The conversion automatically converts most user interface components but does not convert business logic implemented within triggers, program units, or PL/SQL libraries. Loading Oracle Forms definitions into the Oracle Application Express project provides analysis and tracking of the conversion project. Once the initial design has been generated, the rapid application development capabilities inherent within Oracle Application Express can be utilized to enhance and expand the generated application. Post-generation the business logic within Oracle Forms can be re-implemented and new screens which take advantage of Web 2.0 capabilities such as interactive reports and flash charts can be added using the wizards built into the Oracle Application Express builder.

Getting Started

You will need to have at least one installation of Oracle Forms 9i or 10g. These two versions include the Forms2XML utility required to create XML files from Forms source files (fmb's, mmb's, etc.).

We advise you to try and convert Forms 4.5 and Forms 6i fmb files using the Forms2XML utility without upgrading the Forms to 9i or 10g prior to the conversion. However, we can not guarantee that the utility will always work for these older Forms modules. If it fails you will need to upgrade your Forms 4.5 and/or 6i source to Forms 9i or 10g and then run them through the utility.

Once you have created the XML files you will need to go to Application Migration from the APEX Builder Home page and create a project. You will also need to build the referenced tables and views within your workspace. After loading up the XML files you can start conversion and the manual post-generation enhancements required.

To learn more about Oracle Application Express 4.0 Forms Conversion please examine the Migration Guide within the documentation.
There is also an Oracle By Example: Converting Your Oracle Forms Applications to Oracle Application Express 3.2.

To find out more about Oracle Forms, visit Oracle Forms on OTN.