Oracle® Application Express

Application Migration Guide

Release 5.1

E64914-05

June 2017

Oracle Application Express Application Migration Guide, Release 5.1

E64914-05

Copyright © 2003, 2017, Oracle and/or its affiliates. All rights reserved.

Primary Author: Harish Konakondla

Contributors: Terri Jennings, Joel Kallman, Hilary Farrell, David Peake

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable agreement between you and Oracle.

Contents

Preface

- Audience

- Documentation Accessibility

- Related Documents

- Conventions

Changes in This Release

- Changes in Oracle Application Express Release 5.1

- Deprecated and Desupported Features

- Other Changes

1 Getting Started with Application Migration Workshop

- 1.1 Understanding How to Convert an Oracle Forms Application

- 1.1.1 About Creating an Oracle Forms Application

- 1.1.2 Preparation Checklist for Converting Oracle Forms Applications

- 1.2 About the Oracle Application Express Forum

2 Overview of the Migration Process

- 2.1 Why Migrate to Oracle Application Express?

- 2.2 Before Starting the Conversion Process

- 2.3 About the Benefits of Using a Migration Project

- 2.4 Understanding the Key Differences with Oracle Application Express

- 2.4.1 About Stateless Web Applications

- 2.4.2 About Evaluating User Interface Design

- 2.4.3 About Business Logic Replication

- 2.5 Creating an Oracle Application Express Migration Project

- 2.5.1 About Data Structures

- 2.5.2 About Creating a Project

3 Converting an Oracle Forms Application

- 3.1 How to Convert Your Application

- 3.1.1 About the Process of Converting Oracle Forms

- 3.2 Converting FormModules, ObjectLibraries, or MenuModules to XML

- 3.2.1 About the Forms2XML Conversion Tool

- 3.2.2 Using the Forms2XML Conversion Tool From a Command Line

- 3.2.3 Using the Forms2XML Conversion Tool in a Java Program

- 3.3 Converting Oracle Forms to XML

- 3.3.1 Converting a PL/SQL Library

- 3.3.2 Converting an Oracle Report to XML

- 3.4 About Creating a Workspace and Adding Oracle Application Express Users

- 3.5 Uploading Database Objects into the Schema Associated with Your Workspace

- 3.6 Creating a Conversion Project

- 3.7 Reviewing and Editing Forms Metadata

- 3.7.1 Understanding the Application Migrations Page

- 3.7.1.1 Using the Project Page

- 3.7.1.1.1 Viewing Project Details

- 3.7.1.1.2 Utilizing Interactive Reports

- 3.7.1.1.3 Upload File, Create Application, and Run Application Buttons

- 3.7.1.1.4 About Associated Application

- 3.7.1.1.5 Tasks List

- 3.7.1.1.6 Completion Status Region

- 3.7.1.2 Uploading Additional Files

- 3.7.2 Editing Project Details

- 3.7.3 Reviewing Forms Modules

- 3.7.3.1 Viewing an Imported FormModule

- 3.7.3.2 Viewing Object Metadata and Selecting Specific Objects

- 3.7.3.3 Understanding Viewing and Selecting Blocks

- 3.7.3.3.1 About Block Details

- 3.7.3.3.2 About Annotations

- 3.7.3.3.3 About Application Express Page Query

- 3.7.3.3.4 Relation Details

- 3.7.3.3.5 Block Items

- 3.7.3.3.6 Block Triggers

- 3.7.3.3.7 About Audit

- 3.7.3.4 Viewing and Selecting Items

- 3.7.3.4.1 About Item Details

- 3.7.3.4.2 About Annotations

- 3.7.3.4.3 About Audit

- 3.7.4 Reviewing Oracle Reports

- 3.7.4.1 Viewing Reports

- 3.7.4.1.1 Report Details

- 3.7.4.1.2 About Annotations

- 3.7.4.1.3 About SQL Query

- 3.7.4.1.4 About Data Items

- 3.7.4.1.5 About Summary Items

- 3.7.4.1.6 About Audit

- 3.7.4.2 Selecting Reports to Include

- 3.7.5 Reviewing PL/SQL Libraries

- 3.7.5.1 About Annotations

- 3.7.5.2 About Audit

- 3.7.6 Reviewing Forms Menus

- 3.7.6.1 Viewing Form Menus

- 3.7.6.1.1 About Annotations

- 3.7.6.2 Viewing a Summary of Forms Menus

- 3.7.6.3 Viewing Form Menu and Program Unit Details

- 3.7.6.3.1 About Form Menu Details

- 3.7.6.3.2 About Annotations

- 3.7.6.3.3 About Program Unit Details

- 3.7.6.3.4 About Audit

- 3.7.7 Reviewing Object Libraries

- 3.7.7.1 About Annotations

- 3.7.7.2 About Audit

- 3.7.7.3 Viewing an Uploaded Object Library

- 3.7.7.3.1 About Annotations

- 3.7.7.3.2 About Audit

- 3.7.8 Using Annotations to Track the Conversion Process

- 3.8 Deleting a Migration Project

A Comparing Oracle Forms to Oracle Application Express Components

- A.1 Understanding Oracle Forms Modules

- A.1.1 About Oracle Forms Components

- A.1.1.1 Alerts

- A.1.1.2 Blocks

- A.1.1.3 Canvases

- A.1.1.4 Coordinates

- A.1.1.5 Editors

- A.1.1.6 List of Values

- A.1.1.7 Program Units

- A.1.1.8 Property Classes

- A.1.1.9 Record Groups

- A.1.1.10 Triggers

- A.1.1.11 Visual Attributes

- A.1.1.12 Windows

- A.1.2 Understanding Block to Page Region Mappings

- A.1.2.1 About Single Record Blocks

- A.1.2.2 About Tabular Forms

- A.1.2.3 About Master Detail Blocks

- A.1.2.4 About Non-Database Block

- A.1.3 About List of Values Implementation

- A.1.4 Implementing Business Logic

- A.1.4.1 About Implementing Business Logic

- A.1.4.2 About Processes

- A.1.4.3 About Computations

- A.1.4.4 About Validations

- A.1.5 About Oracle Reports

- A.1.6 About PL/SQL Libraries

- A.1.7 About Forms Menus

- A.1.8 About Object Libraries

Index

Preface

Oracle Application Express Application Migration Guide describes how to convert applications from Oracle Forms to Oracle Application Express.

- Audience

- Documentation Accessibility

- Related Documents

- Conventions

See Also:

Oracle Application Express App Builder User’s Guide.

Audience

Oracle Application Express Migration Guide is intended for application developers who are building database-centric web applications using Oracle Application Express. This guide describes how to upload and annotate Oracle Forms applications when migrating to Oracle Application Express.

To use this guide, you must have a general understanding of relational database concepts and an understanding of the operating system environment under which you are running Oracle Application Express.

See Also:

Oracle Application Express App Builder User’s Guide

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers that have purchased support have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.

Related Documents

For more information, see these Oracle resources:

- Oracle Application Express App Builder User’s Guide

- Oracle Application Express Release Notes

- Oracle Application Express Installation Guide

- Oracle Application Express End User Guide

- Oracle Application Express Administration Guide

- Oracle Application Express SQL Workshop Guide

- Oracle Application Express API Reference

- Oracle Database Concepts

- Oracle Database Advanced Application Developer's Guide

- Oracle Database Administrator’s Guide

- Oracle Database SQL Language Reference

- SQL*Plus User's Guide and Reference

Conventions

The following text conventions are used in this document:

Convention

Meaning

boldface

Boldface type indicates graphical user interface elements associated with an action, or terms defined in text or the glossary.

italic

Italic type indicates book titles, emphasis, or placeholder variables for which you supply particular values.

monospace

Monospace type indicates commands within a paragraph, URLs, code in examples, text that appears on the screen, or text that you enter.

Changes in This Release

This preface contains:

- Changes in Oracle Application Express Release 5.1

Changes in Oracle Application Express Release 5.1

Oracle Application Express Application Migration Guide contains minimal changes for Oracle Application Express release 5.1.

- Deprecated and Desupported Features

- Other Changes

Deprecated and Desupported Features

Oracle Application Express no longer supports Microsoft Access Migration. In addition, you can no longer generate an application directly from a Migration Project. See "Deprecated Features" and "Desupported Features" in Oracle Application Express Release Notes.

Other Changes

The following are additional changes in the release:

- All content has been updated to reflect new functionality.

- Screen captures and graphics have been added and updated to reflect Oracle Application Express release 5.1 user interface enhancements.

1 Getting Started with Application Migration Workshop

Oracle Application Express Application Migration Workshop (Application Migration) enables you to convert an Oracle Forms application to an Oracle Application Express application. This section provides a general description of the steps needed to migrate applications from Oracle Forms to Oracle Application Express.

- Understanding How to Convert an Oracle Forms Application

- About the Oracle Application Express Forum

1.1 Understanding How to Convert an Oracle Forms Application

The process of converting an Oracle Forms application to Oracle Application Express involves the following:

- About Creating an Oracle Forms Application

- Preparation Checklist for Converting Oracle Forms Applications

1.1.1 About Creating an Oracle Forms Application

You begin the process by converting Oracle Forms metadata to Extensible Markup Language (XML). Then, you create a conversion project within Oracle Application Express. Once you have uploaded and annotated the Oracle Forms metadata within the project, you use this information when building your new Oracle Application Express application.

1.1.2 Preparation Checklist for Converting Oracle Forms Applications

Before you begin the conversion process, you must:

- Install Oracle Application Express release 4.0 or later
You must install Oracle Application Express release 4.0 or later to convert an Oracle Forms application to Oracle Application Express.

- Install Oracle9i Oracle Developer Suite or later
You must install Oracle Developer Suite to convert Oracle Forms applications and Oracle Reports to XML format. Specifically, you need:

- Oracle Forms Builder
You must have Oracle Forms Builder installed to access the Forms2XML conversion tool and the File Conversion utility for converting Oracle Forms application files.

- Oracle Reports Builder
You must have Oracle Reports installed, to convert Oracle Reports (including, binary (.RDF), ASCII (.REX), and .JSP) to XML format.

- Convert Oracle Forms Metadata
To start the conversion process, you convert:

- Oracle Forms FormModule (.FMB), ObjectLibrary (.OLB), or MenuModule (.MMB) files to XML format using the Forms to XML conversion tool, Forms2XML

- Oracle Reports (including, binary (.RDF), ASCII (.REX), and .JSP) to XML format using the File Conversion option in Reports Builder

- PL/SQL library .PLL files to .PLD text files using the File Conversion option in Oracle Forms Builder

- Associate Oracle Forms Schema with Oracle Application Express workspace
You must ensure the schema associated with your Oracle Application Express workspace contains the database objects for your Oracle Forms application. Further information on Oracle Application Express workspaces and associating schemas is provided in subsequent chapters.

See Also:

"Converting an Oracle Forms Application"

1.2 About the Oracle Application Express Forum

In addition to Oracle support, you can post questions on the Oracle Application Express Forum:

https://community.oracle.com/community/database/developer-tools/application_express

2 Overview of the Migration Process

Oracle Application Express Application Migration is an effective tool for converting Oracle Forms to Oracle Application Express.

- Why Migrate to Oracle Application Express?

- Before Starting the Conversion Process

- About the Benefits of Using a Migration Project

- Understanding the Key Differences with Oracle Application Express

- Creating an Oracle Application Express Migration Project

2.1 Why Migrate to Oracle Application Express?

Oracle Forms modernization projects are often undertaken to convert legacy applications to the latest Oracle Database version and enable developers to satisfy user demands for greater user interactivity and Web 2.0 capabilities.

Migrating to Oracle Application Express provides a robust, scalable, secure application development tool that takes full advantage of the Oracle Database. Oracle Application Express requires only a web browser and no client software for development, deployment, or run time. The resulting web pages are rendered as hypertext mark-up language (HTML). The Oracle Application Express development environment provides many out-of-the-box features, such as interactive reports and charts, and enables developers to rapidly deploy web application that greatly enhance user interactivity.

2.2 Before Starting the Conversion Process

Before starting a conversion project, it is important to learn how to build applications with Oracle Application Express. The first step is to install Oracle Application Express within an Oracle Database instance. Oracle Application Express requires an Oracle database that is release 11.2.0.4 or later.

The Oracle Application Express development environment utilizes wizards within a declarative environment and enables you to easily extend components using SQL and PL/SQL. You can further extend the Oracle Application Express framework by incorporating JavaScript and Asynchronous JavaScript and XML (Ajax).

See Also:

"Oracle Application Express Installation Guide"

2.3 About the Benefits of Using a Migration Project

Thanks to how quickly you can build a new application within Oracle Application Express, it may seem quicker to just build an application from scratch rather than loading the source application definitions into an Oracle Application Express migration project. The value of utilizing a migration project comes from being able to view and annotate all of the business logic, generally hidden in the many Forms triggers.

Developers do not need to be an expert in Oracle Forms and need to know how to locate this business logic within Oracle Forms, as it is easily viewed within the migration project. Developers can readily cut and paste any SQL into the new component within Application Express. Also developers do not need to have Oracle Forms installed onto their computers.

The migration project is designed to ensure all of the important business logic implemented in the Oracle Forms application is migrated. However, it also helps to allocate work and track migration progress.

2.4 Understanding the Key Differences with Oracle Application Express

Understanding the key differences between Oracle Application Express and Oracle Forms will greatly assist you in redeveloping your applications.

- About Stateless Web Applications

- About Evaluating User Interface Design

- About Business Logic Replication

2.4.1 About Stateless Web Applications

Oracle Application Express does not maintain a constant state between the client (that is, the web browser) and the database, but performs stateless transactions. A database session is only utilized when requesting or submitting a page. Because Oracle Application Express is stateless between the start and the end of a logical transaction, (for example, when updating a record,) it is imperative to use optimistic locking rather than pessimistic locking.

Oracle Forms use pessimistic locking whereby the record is locked when a user requests a record for update. This lock is maintained until the record is completed (or committed) or canceled (or rolled back). One of the key reasons for not using pessimistic locking within a stateless web application is that if a user closes their web browser or loses their connection in the middle of a transaction, the record remains locked.

Using the Create Application or Create Page wizards to generate form pages also creates Automatic Row Fetch and Automatic Row Processing processes which incorporate the MD5 checksum validation to enforce the optimistic locking.

Using the Create Application or Create Page wizards to generate form pages also creates Automatic Row Fetch and Automatic Row Processing processes which incorporate the MD5 checksum validation to enforce the optimistic locking. Before the record is sent to the database to be updated or deleted, the MD5 initially created is compared to the MD5 value of the current database record to ensure they are the same. If they differ, then the database record has been updated since it was queried and an error displays to the user.

One consequence of an HTML application is that a rendered page does not perform actions such as validations or hiding and showing fields as the user interacts with the page. Validations are performed when the user submits the page for processing. However, you can change this default behavior by utilizing JavaScript and Ajax. The time needed to load a page is influenced by the transmission speed and the speed with which the web browser renders the page. Therefore, it is not advisable to attempt to completely replicate the client-side interactivity within an HTML application as the weight (or size) of the page adversely affects page performance. As a best practice, only implement critical client-side actions.

2.4.2 About Evaluating User Interface Design

Oracle Forms use different underlying technologies to present screens to users. In contrast, Application Express renders HTML through a web browser. As a consequence, the design of screens and items is very different.

When reviewing screen design, some screen layouts commonly used in Oracle Forms, such as query / update regions, are not readily reproducible in Oracle Application Express. Other screen design concepts can readily be reproduced, such as using interactive grids to display master-detail-detail information.

Oracle strongly recommends that developers do not try and reproduce the exact look and feel nor the exact functionality as used in the Oracle Forms application. For example, Application Express does not support the notion of Enter Query and Execute Query modes, and developers should not try to implement such functionality within Application Express, as this is not standard Web page functionality. Instead developers should use the Create Application wizard and Create Page wizard to create modern, intuitive Web 2.0 applications.

The Universal Theme within Application Express is a fully responsive theme, which adjusts based on the screen size. For tablets and smartphones the size of the screen is significantly smaller than for desktops, so the page will be rendered responsively by changing the size and positioning of regions and even moving labels above items instead of to the left. As such, Application Express does not support coordinate positioning, or pixel perfect layout, of regions or items on a page as there is with Oracle Forms. Application Express uses a grid layout to set out elements and attributes (such as New Line, New Field, Column Span, and Row Span) to determine how elements are located.

2.4.3 About Business Logic Replication

One of the major aspects of converting from Oracle Forms is replicating the business user interface specific logic. It is important to separate business logic from logic for manipulating the user interface. Given the differences in user interface implementation, the majority of the associated logic from the original application will no longer be relevant. Oracle Application Express uses processes, computations, and validations to implement business logic. Some logic can also be replicated by utilizing default and source values within the Oracle Application Express item definition.

The key to ensuring your new application performs correctly is to understand how and when each of these functions operate. The ability to add conditional logic to any component within Oracle Application Express (including regions, items, branches, processes, computations and validations) also provides extensive flexibility when replicating the original business logic.

2.5 Creating an Oracle Application Express Migration Project

The process of creating an Oracle Application Express migration project involves the following:

- About Data Structures

- About Creating a Project

2.5.1 About Data Structures

In an Oracle Forms conversion project, the data structures are defined in an Oracle Database and do not necessarily need to be migrated.

2.5.2 About Creating a Project

Once the data structures are correctly implemented into a schema accessible to Oracle Application Express, then the basic process for conducting a conversion is to load the source application files into a project. The project is designed to show all the applicable components and provide the ability to generate an initial application design. After reviewing the project components and selecting the valid screens, reports, and items to be included, you can generate an Oracle Application Express application. In a Forms Conversion project some components loaded into a project cannot be generated.

3 Converting an Oracle Forms Application

The steps to convert applications from Oracle Forms to Oracle Application Express involve the following:

- How to Convert Your Application

- Converting FormModules, ObjectLibraries, or MenuModules to XML

- Converting Oracle Forms to XML

- About Creating a Workspace and Adding Oracle Application Express Users

- Uploading Database Objects into the Schema Associated with Your Workspace

- Creating a Conversion Project

- Reviewing and Editing Forms Metadata

- Deleting a Migration Project

3.1 How to Convert Your Application

To convert applications from Oracle Forms to Oracle Application Express, you must perform the steps described in this section in the exact sequence in which they are presented.

- About the Process of Converting Oracle Forms

3.1.1 About the Process of Converting Oracle Forms

The following illustration outlines the entire process of converting applications from Oracle Forms to Oracle Application Express.

The conversion process consists of the following steps:

- Step 1: Converting Oracle Forms to XML

- Step 2: About Creating a Workspace and Adding Oracle Application Express Users

- Step 3: Uploading Database Objects into the Schema Associated with Your Workspace

- Step 4: Creating a Conversion Project

- Step 5: Reviewing and Editing Forms Metadata

Important:

You must follow the steps in the exact sequence presented in this section.

3.2 Converting FormModules, ObjectLibraries, or MenuModules to XML

You can convert Oracle Forms FormModule, MenuModule, and ObjectLibrary files to Extensible Markup Language (XML) using the Oracle Forms to XML conversion tool, Forms2XML.

Note:

The Forms2XML utility must generate an XML file in English only. If the generated XML tags are not in English, then the file will fail to load. The conversion of synonym-based data blocks is not supported. Only data blocks based on tables or views is supported by the conversion process. Please ensure that the application you want to convert is based only on tables and views.

- About the Forms2XML Conversion Tool

- Using the Forms2XML Conversion Tool From a Command Line

- Using the Forms2XML Conversion Tool in a Java Program

3.2.1 About the Forms2XML Conversion Tool

The Oracle Forms to XML conversion tool, Forms2XML was introduced in Oracle9i Oracle Developer Suite and is also available in Oracle Developer Suite 10g. This tool should also work on files from earlier releases of Oracle Forms. If the Oracle Forms to XML Conversion tool does not work for a specific file from an earlier version of Oracle Forms, then you must upgrade the file to Oracle Developer Suite 9i or 10g and then convert to XML

Forms2XML produces an XML file that has the same base name as the Forms file with an .xml extension. The extension _fmb, _mmb, or _olb is added to the base file name to indicate whether the original file was a Forms Modules, a MenuModule, or an Object Library. The following table displays a few examples of the changes the tool makes to the name of the file being converted:

File name before conversion

File name after conversion

myForm.fmb

myForm_fmb.xml

myMenu.mmb

myMenu_mmb.xml

myLibrary.olb

myLibrary_olb.xml

3.2.2 Using the Forms2XML Conversion Tool From a Command Line

The Forms2XML command takes one or more Forms Module files as an argument. The files can be FormsModule (.fmb), ObjectLibrary (.olb), or MenuModule (.mmb) files. The output is placed in the current folder. The command has the following syntax:

frmf2xml [options] file1 [file2...]
java oracle.forms.util.xmltools.Forms2XML [options] file1 [file2...]

The following table describes available options.

Options

Description

USE_PROPERTY_IDS=YES/NO

Setting USE_PROPERTY_IDS to YES causes the Forms to XML conversion tool to write the internal ID for Real or Character into the XML file.

The default value (NO) generates property value names as before.

Note: The Forms2XML utility must be run with USE_PROPERTY_IDS=NO.

OVERWRITE=YES/NO

Valid values are YES or NO.

If OVERWRITE=YES, the tool overwrites any XML files with the same name that exist in the output directory.

If OVERWRITE=NO, (default) the tool does not overwrite any XML files with the same name that exist in the output directory. The tool will stop processing and return the message:

If the file file 1 exists, use argument OVERWRITE=YES to replace.

DUMP=ALL/OVERRIDEN

If DUMP=ALL, the tool dumps all properties.

If DUMP=OVERRIDEN, the tool dumps only those properties that are overridden.

3.2.3 Using the Forms2XML Conversion Tool in a Java Program

You can pass the Forms2XML tool a JdapiModule Java object (class oracle.forms.jdapi.JdapiModule) and dump its objects and properties to an XMLDocument (class oracle.xml.parser.v2.XMLDocument). For example:

...
// get the modules in the session
JdapiIterator mods = Jdapi.getModules();
// ... and iterate round them
while(mods.hasNext())
{
JdapiModule mod = (JdapiModule)mods.next();
Forms2XML converter = new Forms2XML(
XMLDocument doc = converter.dumpModule(false);
...
}

The Boolean argument taken by the dumpModule() method instructs the converter to dump all properties to the XMLDocument doc, not just those which are overridden.

Once you have the module as an XMLDocument object, you could then use the XDK classes to manipulate it programmatically. For example, you could traverse it, remove or add objects, change properties, copy objects into other modules that are also saved as XMLDocument objects, and so on.

See Also:

To learn more about Oracle Forms, "http://www.oracle.com/technetwork/developer-tools/forms/overview/index.html"

3.3 Converting Oracle Forms to XML

In order to convert Oracle Forms to Oracle Application Express, you must convert the Forms modules to formats the Create Migration Project wizard can consume.

- Converting a PL/SQL Library

- Converting an Oracle Report to XML

3.3.1 Converting a PL/SQL Library

To convert a PL/SQL library, use the File > Convert option in Oracle Forms Builder to convert PL/SQL library .PLL files to .PLD text files.

See Also:

To learn more about Oracle Forms, "http://www.oracle.com/technetwork/developer-tools/forms/overview/index.html"

3.3.2 Converting an Oracle Report to XML

To convert an Oracle Report, use the File Conversion option in Reports Builder to convert binary (.RDF), ASCII (.REX), and .JSP reports to XML format.

See Also:

To learn more about Oracle Reports, "http://www.oracle.com/technetwork/middleware/reports/overview/index.html"

3.4 About Creating a Workspace and Adding Oracle Application Express Users

You access the Oracle Application Express home page by logging in to a workspace using a JavaScript enabled Web browser. A workspace enables multiple users to work within the same Oracle Application Express installation while keeping their objects, data, and applications private. Each workspace has a unique ID and name.

An instance administrator can create a workspace manually within the Oracle Application Express Administration Services application or have users submit requests. Oracle Application Express Administration Services is a separate application for managing an entire Oracle Application Express instance.

Tip:

Functionality in the Administration Services application is not available in Oracle Database Cloud Service (Database Schema).

See Also:

"Creating a Workspace and Adding Oracle Application Express Users" for your Web listener in Oracle Application Express Installation Guide.

3.5 Uploading Database Objects into the Schema Associated with Your Workspace

In order to start the conversion process, the database objects associated with your Oracle Forms application must reside in the same database as Oracle Application Express.

If the database objects associated with your Oracle Forms application do not reside in the same database as Oracle Application Express, you must upload them.

To upload database objects associated with your workspace:

1. Create a DDL script.

2. Upload it to the SQL Script Repository and run it.

See Also:

"Executing a SQL Script" in Oracle Application Express SQL Workshop Guide.

3.6 Creating a Conversion Project

Next, create a conversion project by running Create Migration Project Wizard and loading the application metadata extracted in "Converting Oracle Forms to XML".

To create a conversion project:

1. Access the workspace you created for your conversion project.

2. Click the App Builder icon.

3. Click Oracle Forms Migrations on the right side of the page.

4. On the Application Migrations page, click Create Project.
The Create Migration Project wizard appears. The steps included in the wizard appear in a flowchart on the left of the page.

5. Enter the project details:

a. Project Name - Enter a unique name. The project name must be unique to your current workspace and should not contain any white spaces.

b. Description - Enter a meaningful description for this project.

c. Schema - Select the schema that contains the database schema objects associated with the Oracle Forms application you want to convert.
The default schema is the schema associated with your workspace. If multiple schemas are associated with your workspace, all associated schemas appear in the select list, arranged in alphabetical order. When this situation exists, select the schema associated with the Oracle Forms you want to upload.

d. Forms Module XML File - Locate the XML file which contains the information of your converted Oracle FormModule (for example, myForm_fmb.xml).
Note that you must upload the converted Oracle FormModule file first.

e. Click Next.
The Confirm page appears.

f. To add more files, click Upload Another File.

6. To upload a file, specify the following:

a. File Type - Select the appropriate file type. Options include:

- Forms Module - Upload a FormModule in XML format (myForm_fmb.xml). Use the Forms2XML conversion tool to convert Oracle FormModule .FMB files to .XML format.

- Oracle Report - Upload an Oracle Report in XML format (myReport.XML). Use the File Conversion option in Oracle Reports Builder to convert binary (.RDF), ASCII (.REX), and .JSP Reports to XML format.

- PL/SQL Library - Upload a PL/SQL Library associated with your Oracle Forms application (myLibrary.PLD). The library must be in text format. Use the File > Convert option in Oracle Forms Builder to convert PL/SQL library .PLLs to .PLD text files.

- Forms Menu - Upload an Oracle Form Menu in XML format (myMenu_mmb.XML). Use the Forms2XML conversion tool to convert MenuModule .MMB files to .XML format.

- Object Library - Upload an Object Library in XML format (myObjects_olb.XML). Use the Forms2XML conversion tool to convert Object Library .OLB files to .XML format.

b. File - Locate the file you want to upload.

c. Click Upload.
The Confirm page appears.

7. To add more files, click Upload Another File and repeat the previous steps until all files appear on the Confirm page.

8. Review the project details, and click Create.
The Project page appears.

3.7 Reviewing and Editing Forms Metadata

Next, use the Project pages to review and edit form attributes and track the manual conversion process.

- Understanding the Application Migrations Page

- Editing Project Details

- Reviewing Forms Modules

- Reviewing Oracle Reports

- Reviewing PL/SQL Libraries

- Reviewing Forms Menus

- Reviewing Object Libraries

- Using Annotations to Track the Conversion Process

3.7.1 Understanding the Application Migrations Page

The Project page shows a high-level overview of your Oracle Forms conversion project.

- Using the Project Page

- Uploading Additional Files

3.7.1.1 Using the Project Page

How to use Project page is explained in the following section.

- Viewing Project Details

- Utilizing Interactive Reports

- Upload File, Create Application, and Run Application Buttons

- About Associated Application

- Tasks List

- Completion Status Region

3.7.1.1.1 Viewing Project Details

To view project details, click the project name. The Project page appears.

With the exception of the File Name column, most of the information on the Project page only applies to FormModule XML files (for example, Blocks, Triggers, and Program Units columns). If a column does not apply to the uploaded file, a 0 displays.

The Project page lists the following information about uploaded files:

- Type - Identifies the type uploaded by displaying the appropriate file extension (for example, RPT for Report and FMB for FormModule files).

- File Name - Displays the file name and extension (XML or TXT) uploaded into the project.

- Blocks - Displays a count of blocks in FormModule XML file. A single block can be mapped to a region in Oracle Application Express. A region is an area on a page that serves as a container for content. Each page can have any number of regions. You control the appearance of a region through a specific region template.

- DB Blocks - Displays the database data blocks in the uploaded FormModule XML file. These blocks can be based on any of the following block data source types: table; procedure; transactional trigger; or subquery. Blocks included in the DB Blocks count are not control blocks. Note that the associated Database Block property is set to Yes.

- Triggers - Displays a count of all form-level, block-level and item-level triggers associated with the uploaded FormModule XML file.

- Record Groups - Displays a count of Record Groups in the uploaded FormModule XML file.

- Lists of Values - Displays a count of lists of values (LOVs) in the uploaded FormModule XML file.

- Alerts - Displays a count of alerts in the uploaded FormModule XML file.

- Program Units - Displays the number of schema objects that enable you to access and manipulate database information.

You can review Forms attributes and track manual conversion by clicking the links on this page.

3.7.1.1.2 Utilizing Interactive Reports

Many pages in Application Migration Workshop display as interactive reports. You can customize the appearance of these pages using the Search bar at the top of each page.

Use the Search bar to create custom searches and customize and filter the information that appears on the page.

Available controls on the Search bar include:

- Select columns to search icon - Resembles a magnifying glass. Click this icon to narrow your search to specific columns. To search all columns, select All Columns.

- Text area - Enter case insensitive search criteria (wildcard characters are implied) and then click Go.

- Go button - Executes a search.

- Actions menu - Use the Actions menu to customize an interactive report.

See Also:

"Using Interactive Reports" in Oracle Application Express End User's Guide

3.7.1.1.3 Upload File, Create Application, and Run Application Buttons

Three buttons display to the above of the Search Bar:

- Upload File - Add files to your conversion project.

- Create Application - Create an Oracle Application Express application based on the components included in your conversion project.

- Run Application - Submit the pages within your Oracle Application Express application to the Application Express engine and render viewable HTML. Note this button only appears after you generate an application.

See Also:

"Uploading Additional Files"

3.7.1.1.4 About Associated Application

The Associated Application only displays after you create an application. This region displays application name, number of application pages, last update date, and the user who performed the updates. Click the application name to link to the Application home page within App Builder.

3.7.1.1.5 Tasks List

The Tasks list displays on the right side of the page and contains the following links:

- Delete Project - deletes the current project.

- Edit Project Details and Applicability - links to the Project Details page.

- About Forms Conversion - links to a page that explains how to convert Oracle Forms applications.

- Set Application Defaults - links to the Set Application Defaults page.

See Also:

"Editing Project Details."

3.7.1.1.6 Completion Status Region

A Completion Status box displays on the right side of the page and contains the following information:

- Components - Lists the number of components that have been uploaded to the project.

- Completed - Displays a count of components within the conversion process that have been reviewed and have been marked as Complete.

- Percent Complete - Lists percent of components which have been marked as Complete.

3.7.1.2 Uploading Additional Files

To add files to your conversion project:

1. From the Application Migrations page, click the project name.

2. On the Project page, click Upload Another File.

3. For File Type, select one of the following:

- Forms Module - Upload a FormModule in XML format (myForm_fmb.xml). Use the Forms2XML conversion tool to convert Oracle FormModule .FMB files to .XML format.

- PL/SQL Library - Upload a PL/SQL Library associated with your Oracle Forms application (myLibrary.PLD). The library must be in text format. Use the File > Convert option in Oracle Forms Builder to convert PL/SQL library .PLLs to .PLD text files.

- Oracle Report - Upload an Oracle Report in XML format (myReport.XML). Use the File Conversion option in Oracle Reports Builder to convert binary(.RDF), ASCII (.REX), and .JSP Reports to XML format.

- Object Library - Upload an Object Library in XML format (myObjects_olb.XML). Use the Forms2XML conversion tool to convert Object Library .OLB files to .XML format.

- Forms Menu - Upload an Oracle Form Menu in XML format (myMenu_mmb.XML). Use the Forms2XML conversion tool to convert FormsMenu .MMB file to .XML format.

4. File - Locate the file you want to upload.

5. Click Upload.

The Confirm page appears.

6. To add more files, click Upload and Upload Another and repeat the previous steps until all files appear on the Confirm page.

7. Review the file details, and click Finish.

The Project page appears.

3.7.2 Editing Project Details

To edit project details.

1. From the Application Migrations page, click the Edit icon to access the Project Details page. The Edit icon resembles a small yellow pencil.

The Project Details page appears.

2. Under Project Details, edit the project name, database schema, specify an associated application, or enter an optional description.

3. Under Component Applicability, specify whether to include specific components in your conversation project. Select Yes or No adjacent to each component type.

4. Click Apply Changes.

See Also:

"Using Annotations to Track the Conversion Process"

3.7.3 Reviewing Forms Modules

From the Project page you can browse the objects included in your uploaded Oracle FormModule XML file (for example, myForm_fmb.xml).

- Viewing an Imported FormModule

- Viewing Object Metadata and Selecting Specific Objects

- Understanding Viewing and Selecting Blocks

- Viewing and Selecting Items

3.7.3.1 Viewing an Imported FormModule

To view an imported FormModule:

1. From the Application Migrations page, click the project name.

2. Click the Edit icon to the left of the XML file name (for example, myForm_fmb.xml).

The Form Details page appears.

3. To delete an imported FormModule, click Delete.

4. To download the files associated with this project, click Download.

Example 3-1 About Annotations

Use Annotations to track the overall status of form components within the conversion process.

See Also:

"Using Annotations to Track the Conversion Process"

3.7.3.2 Viewing Object Metadata and Selecting Specific Objects

To review object metadata:

1. From the Application Migrations page, click the project name.

2. Click the number under the column for the appropriate object type. Alternately, click the File Name to view a report describing the component.

Clicking a number displays a listing of the object type.

3. To include blocks, items, and LOVs select the Include check box adjacent to the object name and click Apply Changes.

4. To view details about a specific object, click the object name or Edit icon.

3.7.3.3 Understanding Viewing and Selecting Blocks

To review blocks:

1. From the Application Migrations page, select the project name.

2. Click the link under the Blocks column.

A listing of blocks appears.

Tip:

To displays columns not displayed by default, click the Actions menu and select Select Columns.

3. To edit a block name, enter a new name in the Title field and click Apply Changes.

4. To include a specific object in your conversion select the Include check box adjacent to the object name and click Apply Changes.

5. To view details about a specific object, click the Name link.

The Block Details page appears. The sections that follow describe each section of the Block Details page.

See Also:

"Using Interactive Reports" in Oracle Application Express End User's Guide.

- About Block Details

- About Annotations

- About Application Express Page Query

- Relation Details

- Block Items

- Block Triggers

- About Audit

3.7.3.3.1 About Block Details

Lists the details about the block.

3.7.3.3.2 About Annotations

Use Annotations to track the overall status of the object within the conversion process.

See Also:

"Using Annotations to Track the Conversion Process"

3.7.3.3.3 About Application Express Page Query

Oracle Forms can be based on database blocks which correspond to database tables or views. The enhanced query builds a query based on the database block and database item metadata, and extends it with block level post-query trigger source to show derived columns

Enhanced Query is the original query with the POST-QUERY logic included. Original Query is generated from the data source item (table) underlying the block and the columns that are referenced on that block

To specify the type of query to use:

1. Select one of the following from the User Query list:

- Custom Query

- Enhanced Query

- Original Query

2. If you select Custom Query, enter the appropriate syntax in the Custom Query field.

3. Click Apply Changes.

3.7.3.3.4 Relation Details

Only displays if a relationship was identified for the block in the XML file. This section displays the information on that relationship.

3.7.3.3.5 Block Items

Displays the items in the block. Click the Edit icon associated with the item to view item details.

3.7.3.3.6 Block Triggers

Lists the block-level and item-level triggers associated with the block. Click Edit icon to view additional trigger details.

3.7.3.3.7 About Audit

Display or hide the Audit section at the bottom of the page to view details about the object creation and last update dates.

3.7.3.4 Viewing and Selecting Items

To review items:

1. From the Application Migrations page, click the project name.

2. Click the link under the Items column.

A listing of items appears. Click the Actions icon on the Search bar to view additional information which is not visible in the default report.

3. To edit an item label, enter a new name in the Item Prompt field and click Apply Changes.

4. To include a specific object in your conversion select the Include check box adjacent to the object name and click Apply Changes.

5. To view details about a specific item, click the Item Name link.

The Item Details page appears. The sections that follow describe each section of the Item Details page.

- About Item Details

- About Annotations

- About Audit

3.7.3.4.1 About Item Details

Lists the details about the item.

3.7.3.4.2 About Annotations

Use Annotations to track the overall status of the object within the conversion process.

See Also:

"Using Annotations to Track the Conversion Process"

3.7.3.4.3 About Audit

Display or hide the Audit section at the bottom of the page to view details about the object creation and last update dates.

3.7.4 Reviewing Oracle Reports

From the Project page you can browse uploaded Oracle Report XML files (for example, myReport.XML).

- Viewing Reports

- Selecting Reports to Include

3.7.4.1 Viewing Reports

Use the Report Details page to view details about the imported report.

To view the Report Details page:

1. From the Application Migrations page, click the project name.

2. Click the Oracle Reports XML file name (for example, myReport.XML).

The Report Details page appears.

3. To delete the report, click Delete.

4. To download the report, click the Download link.

The sections that follow describe the Report Details page.

- Report Details

- About Annotations

- About SQL Query

- About Data Items

- About Summary Items

- About Audit

3.7.4.1.1 Report Details

Lists details about the current report.

3.7.4.1.2 About Annotations

Use Annotations to track the overall status of the object within the conversion process.

See Also:

"Using Annotations to Track the Conversion Process"

3.7.4.1.3 About SQL Query

Displays the SQL query associated with the Oracle Report. This SQL statement is used to generate an Oracle Application Express interactive report.

3.7.4.1.4 About Data Items

Lists each item in the report. Click the Edit icon adjacent to a specific item to display the Data Item Details page.

3.7.4.1.5 About Summary Items

Lists the summary columns associated with the report. These columns perform a computation on another column's data (for example, sum, average, count, minimum, maximum, and percent total).

See Also:

To learn more about Oracle Reports, see the following hosted Help file: http://www.oracle.com/technetwork/middleware/reports/overview/index.html

3.7.4.1.6 About Audit

Display or hide the Audit section at the bottom of the page to view details about the creation and last update dates.

3.7.4.2 Selecting Reports to Include

Use the Reports page to select reports for inclusion in the conversion process.

To view the Report page:

1. From the Application Migrations page, click the project name.

2. Click the Edit icon to the right of the Oracle Reports XML file name (for example, myReport.XML).

The Reports page appears.

3. To include a report, select the check box and click Apply Changes.

3.7.5 Reviewing PL/SQL Libraries

From the Project page you can browse uploaded PL/SQL libraries associated with your Oracle Forms application (for example, myLibrary.PLD) and update annotations. Note that PL/SQL libraries are not generated within Oracle Application Express. However, the files are imported to enable you to review and track them.

To view the PL/SQL Library Details page:

1. From the Application Migrations page, click the project name.

2. Click the PL/SQL library XML file name (for example, myLibrary.PLD).

The PL/SQL Library Details page appears.

3. To delete the library, click Delete.

4. To download the library, click the Download link.

- About Annotations

- About Audit

3.7.5.1 About Annotations

Use Annotations to track the overall status of the object within the conversion process.

See Also:

"Using Annotations to Track the Conversion Process"

3.7.5.2 About Audit

Display or hide the Audit section at the bottom of the page to view details about the object creation and last update dates.

3.7.6 Reviewing Forms Menus

From the Project page you can browse the objects included in your uploaded MenuModule XML file (for example, myMenu_mmb.XML) and update annotations. Note that Forms Menus are not generated within Oracle Application Express. However, the files are imported to enable you to review and track them.

- Viewing Form Menus

- Viewing a Summary of Forms Menus

- Viewing Form Menu and Program Unit Details

3.7.6.1 Viewing Form Menus

To track an imported MenuModule:

1. From the Application Migrations page, click the project name.

2. Click the Edit icon to the left of MenuModule XML file name (for example, myMenu_mmb.XML).

The Edit Imported Form Menu page appears.

3. To delete the MenuModule, click Delete.

4. To download the MenuModule, click the Download link.

- About Annotations

3.7.6.1.1 About Annotations

Use Annotations to track the overall status of the object within the conversion process.

See Also:

"Using Annotations to Track the Conversion Process"

3.7.6.2 Viewing a Summary of Forms Menus

Use the Forms Menus page to view details about specific modules.

To view the Forms Menus page:

1. From the Application Migrations page, click the project name.

2. Click the MenuModule XML file name (for example, myMenu_mmb.XML).

The Forms Menus page appears and displays the following information:

- Edit icon - Depending on the Module Type, clicking this icon displays a details page describing the selected menu or program unit.

- Name - Display the name of the menu module.

- Module Type - Lists the type of module (that is, either Menu or Program Unit).

- File Size - Displays the XML file size in kilobytes (KB).

- Module Name - Displays the name of the module.

- Main Menu - Specifies the name of the individual menu in the Forms Menu that functioned as the main or starting menu at runtime.

- Assignee - Displays the person responsible for an object as specified within the Annotations for the object.

- Tags - Lists tags created to describe the object as specified within the Annotations for the object.

- Notes Snippet - Displays a snippet of the Notes specified within the Annotations for the object.

- File Name - Displays the MenuModule XML file name.

3. To view module details, click the Edit icon adjacent to the menu name.

A details page appears.

See Also:

"Viewing Form Menu and Program Unit Details"

3.7.6.3 Viewing Form Menu and Program Unit Details

Clicking the Edit icon on the Forms Menus page displays a details page. The format of the page that displays depends upon the Module Type (either Menu or Program Unit).

- About Form Menu Details

- About Annotations

- About Program Unit Details

- About Audit

3.7.6.3.1 About Form Menu Details

The top of the page lists details about the menu, including

- Name

- Parent Module

- Parent Name

- Parent Type

- Tear Off Menu

- Comment

Under Menu Items, click the Edit icon to view details or track the status of a specific menu item.

See Also:

To learn more about Oracle Forms, see:

http://www.oracle.com/technetwork/developer-tools/forms/overview/index.html

3.7.6.3.2 About Annotations

Use Annotations to track the overall status of the object within the conversion process.

See Also:

"Using Annotations to Track the Conversion Process"

3.7.6.3.3 About Program Unit Details

The top of the page displays the program unit name, type, and the actual program unit text (if applicable).

3.7.6.3.4 About Audit

Display or hide the Audit section at the bottom of the page to view details about the object creation and last update dates.

3.7.7 Reviewing Object Libraries

From the Project page you can browse uploaded Object Libraries associated with your Oracle Forms application (for example, myObjects_olb.XML) and update the annotations. Note that Object Libraries are not generated within Oracle Application Express. However the files are imported to enable you to review and track them.

To view the Forms Object Library details:

1. From the Application Migrations page, click the project name.

2. Click the Edit icon to the left of the Object Library XML file name (for example, myObjects_olb.XML).

The Object Library Details page appears.

3. To delete the Object Library, click Delete.

4. To download the Object Library, click the Download link.

- About Annotations

- About Audit

- Viewing an Uploaded Object Library

3.7.7.1 About Annotations

Use Annotations to track the overall status of the object within the conversion process.

See Also:

"Using Annotations to Track the Conversion Process"

3.7.7.2 About Audit

Display or hide the Audit section at the bottom of the page to view details about the creation and last update dates.

3.7.7.3 Viewing an Uploaded Object Library

To view the Forms Object Library page:

1. From the Application Migrations page, click the project name.

2. Click the Object Library XML file name (for example, myObjects_olb.XML).

The Forms Object Library page appears.

3. To view details about a specific attribute, click the Edit icon. A Details page appears.

- About Annotations

- About Audit

3.7.7.3.1 About Annotations

Use Annotations to track the overall status of the object within the conversion process.

See Also:

"Using Annotations to Track the Conversion Process"

3.7.7.3.2 About Audit

Display or hide the Audit section to view details about the creation and last update dates.

3.7.8 Using Annotations to Track the Conversion Process

Use Annotations to track the overall status of an object within the conversion process. Most detail pages that describe a specific object include an Annotations section. Use Annotations to determine whether an object should be included in the conversion, assign a priority, track status, assign the object to specific individual, or create notes and tags.

Options include:

- Applicable - Tracks whether the object is applicable within the context of the generated Oracle Application Express application. Select Yes or No.
The initial value is determined by the applicability default settings for that component or trigger defined on the Project Details page.

- Priority - Assign a numeric priority to the object.

- Complete - Track if the conversion is complete. Select Yes or No.

- Assignee - Assign the object to a specific user.

- Notes - Enter notes regarding the object.

- Tags - Assign tags to the object.

The values defined in Applicable and Complete are used in determining the percentage complete. All the Applicable and Complete values can be changed simultaneously from the Bulk Changes page.

Why Use Annotations?

Because Oracle Forms have many separate components, it is important to evaluate whether functionality in the original application is either not required or has been replicated in the Oracle Application Express application. Given that the initial design only incorporates a percentage of the required functionality, you can use these fields as a reminder of what must be implemented after creating the initial application.

3.8 Deleting a Migration Project

When you delete a migration project, you delete only the metadata associated with the migration project. Deleting a migration project does not delete or impact applications you have generated from the project or any objects, such as tables or views, in the schemas associated with your workspaces.

To delete a migration project:

1. Log in the workspace you created for your conversion project.

2. Click the App Builder icon.

3. Click Migrations on the right side of the page.

4. On the Application Migrations page, click the project you want to delete.

5. On the Project page, click Delete Project from the Tasks list.

6. Click the Delete Project button and confirm the deletion.

A Comparing Oracle Forms to Oracle Application Express Components

This appendix explains the differences between Oracle Forms and Oracle Application Express components.

- Understanding Oracle Forms Modules

A.1 Understanding Oracle Forms Modules

This appendix describes how Oracle Forms modules compare with those found in Oracle Application Express.

- About Oracle Forms Components

- Understanding Block to Page Region Mappings

- About List of Values Implementation

- Implementing Business Logic

- About Oracle Reports

- About PL/SQL Libraries

- About Forms Menus

- About Object Libraries

A.1.1 About Oracle Forms Components

Overview of Oracle Forms components and the corresponding Oracle Application Express Components are explained in the following section.

- Alerts

- Blocks

- Canvases

- Coordinates

- Editors

- List of Values

- Program Units

- Property Classes

- Record Groups

- Triggers

- Visual Attributes

- Windows

A.1.1.1 Alerts

You can store an alert message as a text message in Shared Components in an Oracle Application Express application. You can use text messages to build translatable text strings with substitution variables that can be called from PL/SQL packages, procedures, and functions.

See Also:

"Working with Shared Components" in Oracle Application Express App Builder User’s Guide

A.1.1.2 Blocks

A single block correlates to a region in Oracle Application Express. The corresponding region type in Oracle Application Express depends upon the block type and data source type (that is, table or view) specified in Oracle Forms. For example, a report block based on an Oracle view, correlates to an interactive report in Oracle Application Express. A form block based upon a table correlates to an interactive report and form in Oracle Application Express.

See Also:

"Understanding Block to Page Region Mappings"

A.1.1.3 Canvases

In Oracle Forms, the canvas is the object on which the graphical user interface (GUI) is drawn, or the background of the form. In Oracle Application Express, the Application Express engine constructs the appearance of each page in an application using templates. Templates define how pages, page controls, and page components display.

A.1.1.4 Coordinates

Depending on the coordinate system used in an Oracle Forms application, coordinates can be expressed in real units such as inches, centimeters, and pixels. The Universal Theme within Application Express is a fully responsive theme, which adjusts based on the screen size. For tablets and smartphones the size of the screen is significantly smaller than for desktops, so the page will be rendered responsively by changing the size and positioning of regions and even moving labels above items instead of to the left. As such, Application Express does not support coordinate positioning, or pixel perfect layout, of regions or items on a page as there is with Oracle Forms. Application Express uses a grid layout to set out elements and attributes (such as New Line, New Field, Column Span, and Row Span) to determine how elements are located.

A.1.1.5 Editors

In Oracle Forms, editors provide standard editing features, including search and replace and cut, copy, and paste for text items. Within Oracle Application Express you can define a field as type Rich Text Editor.

A.1.1.6 List of Values

A list of values (LOV) can be mapped to an equivalent list of values in Oracle Application Express. When defining a list of values in Oracle Application Express, use the Oracle Forms record group as a reference.

See Also:

"About List of Values Implementation"

A.1.1.7 Program Units

Program units can be incorporated into your Oracle Application Express application as a PL/SQL package, page process, computation or validation.

See Also:

"Implementing Business Logic"

A.1.1.8 Property Classes

In Oracle Forms, a property class is a named object that contains a list of properties and their settings. An object based on a property class can inherit the settings of any property in that class. Similarly, in Oracle Application Express, a theme is a named collection of templates used to define the user interface of an application.

A.1.1.9 Record Groups

In Oracle Forms, LOV values are derived from a record group. When a record group is defined, it is associated with a SQL query. Utilize the SQL query from the record groups as the basis for SQL queries in corresponding LOVs within Oracle Application Express.

See Also:

"About List of Values Implementation"

A.1.1.10 Triggers

An Oracle Forms trigger is an event-handler written in PL/SQL to augment the default processing behavior. The trigger logic can be incorporated into an Oracle Application Express application as a computation, validation, or PL/SQL process after creating the initial application.

See Also:

"Implementing Business Logic"

A.1.1.11 Visual Attributes

Visual attributes are the font, color, and pattern properties that you can set for form and menu objects that appear in an Oracle Forms application's interface. Using the default cascading style sheets (CSS) installed with Oracle Application Express, or by uploading your own CSS files, style can be applied to your Oracle Application Express application.

See Also:

"Using Custom Cascading Style Sheets" in Oracle Application Express App Builder User’s Guide

A.1.1.12 Windows

A window is the container for all visual objects that comprise an Oracle Forms application, including canvases. A windows corresponds to a page in Oracle Application Express. A page holds all of the visual objects for an application.

A.1.2 Understanding Block to Page Region Mappings

This section describes the differences between block and page region mappings. The section also explains different Oracle Forms block types and how they are mapped into an Oracle Application Express application.

- About Single Record Blocks

- About Tabular Forms

- About Master Detail Blocks

- About Non-Database Block

A.1.2.1 About Single Record Blocks

In Oracle Forms a single record block can be used for both querying data and updating the records returned. Within Oracle Application Express, standard updatable regions cannot also be used as query regions. An Oracle Forms block that is defined as being insertable, updatable, and has a primary key, is generally defined an interactive report with a form, or an editable interactive grid within Application Express. The interactive report enables you to query the records and the generated Edit link provides navigation to an individual record for update or deletion. An editable interactive grid allows multiple rows to be edited within the region, rather than going to a separate form page.

If not all the conditions are satisfied, then only an interactive report is generated for a single record block.

The interactive report uses the original query, enhanced query, or custom query defined within the project for the block. However, the form is based only on the underlying table. Items characteristics such as radio groups, check boxes, date pickers, editors and list of values will be generated where possible.

A.1.2.2 About Tabular Forms

A tabular form defined in Oracle Forms corresponds to an editable interactive grid in Application Express, you must implement item characteristics, such as select lists, manually after creating the initial application.

A.1.2.3 About Master Detail Blocks

Within Oracle Forms, master detail forms are defined using block relations. In Application Express you can also define master-detail relationships between interactive grid regions. In each child (detail) region, you define the region relationship to the parent (master) region, and then select the foreign key relationship columns in the child region. You can define and number of child relationships deep and any number of child relationships wide.

A.1.2.4 About Non-Database Block

A block that is not associated with a database table or view, a non-database block, typically holds menus, navigation bars, and buttons. Because these components are handled and defined very differently within Application Express, whereby the menus and navigation bar are defined at the application level and not positioned separately on each page.

A.1.3 About List of Values Implementation

Oracle Forms uses record groups to define the query for list of values. Oracle Application Express dynamic list of values (LOVs) enable one display value and one return value to be defined within a SQL query. You can utilize the SQL query from the record group as the basis for the list of values query in Application Express.You can specify LOVs individually for an item or define as a named shared component which can be used with any item throughout the application.

A.1.4 Implementing Business Logic

The differences between how business logic works in Oracle Forms and how similar functionality works in an Oracle Application Express application is explained in the following section.

- About Implementing Business Logic

- About Processes

- About Computations

- About Validations

A.1.4.1 About Implementing Business Logic

Within Oracle Forms applications, business logic is often interspersed with Oracle Forms user interface functionality. The Oracle Forms user interface functionality used to manipulate the screen (for example, go_block, go_item, set_item_property and so on) are often not appropriate within Oracle Application Express due to the inherent differences in the user interface.

Business logic can be found in Oracle Forms triggers and program units, or in PL/SQL libraries. The business logic can be written directly into the objects as SQL or PL/SQL. This code may in turn call database packages, procedures, or functions. The underlying tables may also have database triggers defined which implement business logic.

Because database triggers operate on the underlying tables regardless of the user interface, they do not need to be altered when converting an application to Oracle Application Express. You can call database packages, procedures, or functions from Oracle Application Express because it also uses SQL and PL/SQL. These database objects do not need to be altered when used within the Oracle Application Express development environment.

To re-implement the business logic defined within Oracle Forms you must analyze the triggers, program units, and PL/SQL libraries and manually write corresponding logic within Oracle Application Express.

Oracle Application Express uses processes, computations, and validations to implement such business logic. Before creating the initial application task of re-implementing business logic, it is important to understand how and when to invoke the various types of processes, computations, and validations. It is also important to understand how conditional processing can be applied to these types of components to customize the circumstances under which they execute.

See Also:

Oracle Application Express App Builder User’s Guide.

A.1.4.2 About Processes

Processes are logic controls used to execute data manipulation language (DML) or PL/SQL. A process performs an action at a specified point during the rendering or submission of the page. For example, you can create a process to execute logic or to make a call to the Application Express engine. A process is a unit of logic that runs when a specific event occurs, such as loading or submitting a page.

Processes can be defined as either an application-level process or a page-level process. From a functional perspective, there is no difference between page-level and application-level processes. You can call application-level processes form any page within the application. Calling them On Demand is especially useful when you have PL/SQL logic that you would like to run from different execution points across multiple pages. Page-level processes can only be called from the page on which they are defined.

See Also:

"Understanding Page Processes" in Oracle Application Express App Builder User’s Guide.

A.1.4.3 About Computations

Computations are units of logic used to assign a value to an identified item when a page is submitted or displayed.

Computations can be defined as either an application-level computation or a page-level computation. Most application-level computations are performed for every page in an application. In contrast, computations created at the page-level only execute when that page is rendered or processed.

See Also:

- "Understanding Page Computations" in Oracle Application Express App Builder User’s Guide

- "Understanding Application Computations" in Oracle Application Express App Builder User’s Guide

A.1.4.4 About Validations

Validations enable you to create logic controls to verify whether user input is valid. For example, a validation can check whether a value has been entered into a mandatory field. When a validation fails then an error message displays and subsequent page processes and computations do not occur.

There are two distinct types of validations:

- Item-level validations which are specific to a single item.

- Page-level validations which do not apply to any single item, but apply to an entire page.

There are several validation methods:

- SQL - Compares item values to data in the database.

- PL/SQL - Enables you to enter complex logic to validate entered data.

- Item Level Null - Checks if an item's value in session state is NULL.

- Item String Comparison - Compares the value of an item to a specific string.

- Regular Expression - Provides a method to describe text patterns.

See Also:

"Understanding Validations" in Oracle Application Express App Builder User’s Guide

A.1.5 About Oracle Reports

When reviewing the current it is important to first determine whether high-fidelity printing is required, or whether the advanced online reporting capabilities within interactive reports and interactive grids meets the user requirements. Today the requirement to produce hard copies of reports is greatly reduced.

If high-fidelity printing is required then you need to incorporate a reporting engine, such as Oracle BI Publisher, and then define report queries and upload report layouts into Application Express. However, often it will be sufficient to utilize the SQL query from the Oracle Report and provide an interactive report displaying the same information.

http://www.oracle.com/technetwork/developer-tools/apex/application-express/configure-printing-093060.html

A.1.6 About PL/SQL Libraries

PL/SQL libraries contain logic which can be called from any of the Forms Modules to which it is linked. Such libraries are primarily used to define commonly used business logic that must be manually re-implemented after creating the initial application. Generally such logic should be implemented as application-level processes so that they can be called from any generated page.

See Also:

"Implementing Business Logic"

A.1.7 About Forms Menus

Oracle Application Express uses lists displayed in a region to replicate a menu structure. The default initial application process creates a Home page with a list of horizontal images as the basis for a menu within your Oracle Application Express application. This list can be manually updated after creating the initial application to incorporate conditional logic to implement the business logic defined within the Forms Menu.

See Also:

"Creating Lists" in Oracle Application Express App Builder User’s Guide

A.1.8 About Object Libraries

Object Libraries contain common visual elements used to define Oracle Form layouts for specified components. These visual elements are not used within the Oracle Application Express for creating the initial application process. You must manually create these visual attributes contained within these libraries after creating the initial application. Depending on the visual attribute there are different ways of implementing such features including customizing templates, shared list of values, item types, item attributes and so on.

Index

A  B  C  D  F  L  M  O  P  R

A

- annotations, using 1

- application conversion forum 1

- Application Express

- logging in to 1

- application migration

- overview 1

- Application Migrations page 1

B

- business logic, implementing 1

C

- converting, Oracle Forms 1

D

- deleting

- Oracle Forms project 1

F

- FormModules

- converting to XML 1

- viewing 1

- Forms2XML conversion tool

- about 1

- using from command line 1

- using in Java program 1

- Forms Menu

- reviewing 1

- viewing details 1

- viewing summary 1

- Forms Menus, about conversion 1

- forum

- application conversion 1

L

- list of values, implementing 1

M

- MenuModules

- converting to XML 1

- viewing 1

O

- object libraries

- about conversion 1

- converting to XML 1

- reviewing 1

- viewing 1

- Oracle Application Express

- about processes 1

- about validations 1

- computations 1

- programming concepts 1

- Oracle Forms

- about converting 1

- creating conversion checklist 1

- migrating to Oracle Application Express 1

- Oracle Forms components

- mappings 1

- overview 1

- Oracle Forms conversion

- about 1

- about Associated Application box 1

- Application Migrations page 1

- converting Oracle Report 1

- converting PL/SQL library 1

- converting to XML 1

- Create Application button 1

- creating a conversion project 1

- deleting 1

- editing component applicability 1

- editing Forms metadata 1

- editing project details 1

- Forms2XML 1

- reviewing blocks 1

- reviewing Forms menu 1

- reviewing Forms objects 1

- reviewing items 1

- reviewing object libraries 1

- reviewing Oracle Report 1

- reviewing PL/SQL libraries 1

- Run Application button 1

- selecting items 1

- selecting specific objects 1

- step overview 1

- tracking MenuModules 1

- uploading additional files 1

- uploading objects into schema 1

- using annotations 1

- viewing an imported report 1

- viewing an uploaded object library 1

- viewing blocks 1

- viewing Form Menu details 1

- viewing FormModules 1

- viewing Forms Menus 1

- viewing items 1

- viewing object metadata 1

- viewing Program Unit details 1

- Oracle Forms mappings

- alerts 1

- blocks 1

- block to page region 1

- canvases 1

- coordinates 1

- editors 1

- list of values 1

- master detail blocks 1

- non-database blocks 1

- program units 1

- property classes 1

- record groups 1

- single record block 1

- tabular forms 1

- triggers 1

- visual attributes 1

- windows 1

- Oracle Report

- converting to XML 1

- reviewing 1

- selecting 1

P

- PL/SQL libraries

- about conversion 1

- converting to TXT file 1

- reviewing 1

R

- related documents 1

Oracle Legal Notices

Copyright Notice

Copyright © 1994-2017, Oracle and/or its affiliates. All rights reserved.

License Restrictions Warranty/Consequential Damages Disclaimer

This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.

Warranty Disclaimer

The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors, please report them to us in writing.

Restricted Rights Notice

If this is software or related documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S. Government, then the following notice is applicable:

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government.

Hazardous Applications Notice

This software or hardware is developed for general use in a variety of information management applications. It is not developed or intended for use in any inherently dangerous applications, including applications that may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this software or hardware in dangerous applications.

Trademark Notice

Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.

Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group.

Third-Party Content, Products, and Services Disclaimer

This software or hardware and documentation may provide access to or information about content, products, and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or damages incurred due to your access to or use of third-party content, products, or services, except as set forth in an applicable agreement between you and Oracle.

Pre-General Availability Draft Documentation Notice

If this document is in public or private pre-General Availability status:

This documentation is in pre-General Availability status and is intended for demonstration and preliminary use only. It may not be specific to the hardware on which you are using the software. Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to this documentation and will not be responsible for any loss, costs, or damages incurred due to the use of this documentation.

Private Pre-General Availability Draft Documentation Notice

If this document is in private pre-General Availability status:

The information contained in this document is for informational sharing purposes only and should be considered in your capacity as a customer advisory board member or pursuant to your pre-General Availability trial agreement only. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described in this document remains at the sole discretion of Oracle.

This document in any form, software or printed matter, contains proprietary information that is the exclusive property of Oracle. Your access to and use of this confidential material is subject to the terms and conditions of your Oracle Master Agreement, Oracle License and Services Agreement, Oracle PartnerNetwork Agreement, Oracle distribution agreement, or other license agreement which has been executed by you and Oracle and with which you agree to comply. This document and information contained herein may not be disclosed, copied, reproduced, or distributed to anyone outside Oracle without prior written consent of Oracle. This document is not part of your license agreement nor can it be incorporated into any contractual agreement with Oracle or its subsidiaries or affiliates.

Documentation Accessibility

For information about Oracle's commitment to accessibility, visit the Oracle Accessibility Program website at http://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc.

Access to Oracle Support

Oracle customers that have purchased support have access to electronic support through My Oracle Support. For information, visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info or visit http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs if you are hearing impaired.