From Forms to HTML: Understanding and Using Oracle Projects’ HTML Pages

Edward Charity, Jr

Project Management Systems Consultants (PMSC), LLC

Most of the new features and functions of the Oracle Enterprise ProjectManagement Suite (aka Oracle Projects) have been developed using HyperText Markup Language or HTML. Users of Oracle Project Costing and Billing have been use to operating in the old Oracle Forms environment. This mixed environment has caused a considerable amount of confusion in both the user and implementation communities. The purpose of the paper is to clear up some of this confusion. This paper will explain the technical differences between the two technologies. This paper will also detail the features and functions exclusive to the HTML environment, those that can be accomplished in either the Forms or HTML environment, and those functions that remain exclusive to the Forms environment. This paper will discuss some of the skills and knowledge required to use the various environments and highlight some the “gotchas” that may be encountered along the way.

Background

The Oracle Enterprise Project Management Suite is comprised of the following modules: Project Costing; Project Billing; Project Management; Project Resource Management; Project Portfolio Analysis; and Project Collaboration. Additionally, Project Foundation, although not truly a separate module, is required to implement and use modules in the Projects Suite. Finally, Project Contracts, while integrated with the Projects Suite, it is actually a component module of the Contracts Suite. In order to simplify the discussion, this paper will limit its focus to Project Costing and Billing, representing the old Oracle Forms environment and Project Management, representing the new HTML environment. The features and functions of Oracle E-Business Suite Release 11.5.10.2 were used in the development of this paper. The examples cited and graphics used were generated from this release as well.

The E-Business Suite Architecture

Oracle E-Business Suite is based on a three tiered architecture composed of (1) the Desktop Tier, (2) the Application Tier, and (3) the Database Tier. The desktop tier provides the User Interface (UI) accessed via the user’s Web browser. The Application Tier hosts the various servers that process business logic and manages communication between the desktop tier and database tier.The Database Tier supports and manages the Oracle database. The Oracle database stores all of the data generated and used by the E-Business Suite.

Two of the servers hosted by the Application Tier are the Oracle HTTP or Web Server and the Forms Server. These two servers host the HTML-based applications and Oracle Forms-based applications, respectively.

HTML-Based Applications

As mentioned above, most of the newer features of the Oracle Projects Suite have been developed as HTML-based applications. Some of the key characteristics of the HTML-based (formerly known as Self-Service) applications are: 1) They do not use Oracle Forms (part of the Oracle Development Suite) as the user interface; 2) they are designed and developed using pure HTML and JavaScript; 3) They dynamically generate HTML pages by executing Java code; 4) they use a metadata dictionary for flexible layout; and 5) they operate by direct connection to the Web server (see the Forms-based Application discussion below). The Oracle HTTP or Web Server is also known as the Apache Server. The HTML-based applications are developed using the Oracle Applications Framework development platform. The OA Framework consists of Java-based application tier frameworks and associated services designed to facilitate the rapid deployment of HTML-based applications.

Forms-based Applications

As mentioned above, the original modules of the Oracle Projects Suite, Project Costing and Project Billing were developed as Oracle Forms-based applications. The main characteristics of these applications are: 1) They use Oracle Forms (Version 6.0x) as the user interface; 2) they connect to the Web Server through JInitiator. JInitiator is a Java Virtual Machine (JVM) used to support Forms-based Oracle Applications functions. It replaces the respective Web browser’s native JVM when accessing Oracle Forms-based applications; and 3) they are hosted by the Forms Server, which also hosts the associated runtime engine and mediates communication between the desktop client and the Oracle database server.

Accessing E-Business Suite Applications

In Oracle Applications Release 11i, each user logs in to Oracle Applications through the E-Business Suite Home page on a desktop client web browser. The E-Business Suite Home Page provides a single point of access to HTML-based applications and Oracle Forms-based applications. Access is granted via User Responsibilities that are either pre-seeded with the E-Business Suite installation or custom designed and configured during implementation.

Accessing the Oracle Projects Suite Modules

Since the Oracle Projects Suite uses both types of applications, there are pre-defined User Responsibilities that access either one or the other. Principal among these are the two Projects “Super User” Responsibilities. The Project Super User (PSU) Responsibility grants access to a majority of the HTML-based menus and functions in the Projects Suite. The specific modules covered by this responsibility include: Project Management; Project Resource Management; Project Portfolio Analysis; and Project Collaboration. The remaining menus and functions not accessible from the PSU Responsibility are those associated with individual Project Team Members. The Projects Implementation Super User (PISU) Responsibility grants access to all of the Forms-based menus and functions in the Projects Suite. The specific modules covered by this responsibility include: Project Foundation components; Project Costing; and Project Billing

Appendix D of the Oracle Projects Implementation Guide, Menus and Responsibilities, lists all of the predefined menus and responsibilities in the Oracle Projects Suite. It segregates this list into HTML- and Forms-based Menus and Responsibilities.

HTML versus Forms: What’s The Difference and Why Does It Matter?

Aside from the underlying technology differences between HTML and Forms-based applications, what’s really different about these applications and why should a customer, end-user, or implementation team member care about this topic? The answer lies in the degree to which the different applications can be modified without customization.

Oracle Forms-based applications, built using Oracle’s Development Suite, are limited in the amount of modification that can be done to the look and feel of the user interface. While, certain functions can be enabled and disabled using Function Security, the general presentation of the Forms user interface cannot be modified without replacing the delivered version of a form with a custom version. The custom forms are not necessarily supported by Oracle. Additionally, you have the added overhead of maintaining the custom form through patch application and upgrades.

Oracle HTML-based applications, built using Oracle’s Application Framework, introduce the concept of “Personalization”. Personalization, in its simplest form, is tailoring the user interface look-and-feel, layout or visibility of page content to suit a business need or user preference. The OA Framework architecture stores UI component definitions as meta-data in a database repository. Personalizations are translated into offsets from the base meta-data definition and stored separately. At runtime, the application personalizations meta-data is uploaded from the repository and layered over the base meta-data definition to produce the net effect. Product upgrades and patches affect only the base meta-data definition; as a result, customer personalizations continue to function properly as applicable.

About Personalizations in the Oracle Application Framework

There are three distinct user groups associated with Personalization in the Oracle Application Framework: 1) Oracle’s In-House E-Business Suite Development Teams; 2) Oracle Applications Administrators; and Oracle Applications End-Users. Our focus is on the Administrator and End-User groups.

Administer Group Personalizations are grouped in to the following levels:

Function Level – For example, a function level personalization could be used to hide a field in a record if the record was being updated, but display the field and allow for data entry if a new record is created.

Industry Level – Using the delivered set of predefined industry categories to define personalizations according to vertical market distinctions.

Localization Level – For example, showing a different address field label based on country settings.

Site Level – Using global personalizations that affect all users with access to the given application component, i.e. Oracle Projects component modules.

Organization Level – Personalizations that affect all users belonging to a specific organization or unit. The results returned for a user in one organization would be different than the results returned for a user in another organization.

Responsibility Level – Personalizationsthat affect all users of a specific responsibility.

Seeded User Level - Personalizations similar to the User Level available to End Users (see below). They are visible to all users and can only be changed or deleted by the Administrator.

Application User Personalizations are, as the name implies, are limited to use by the respective user that created them. They are not seen or usable by other users.

The following Personalizations are unique to the Applications Administrator Group:

  • Change product branding
  • Change region header icon
  • Change required state of non-mandatory items
  • Update allowed state for updateable items
  • Alter the item cascading style sheet (css) – to personalize the look and feel of an item
  • Set default value for an item
  • Define Tips (in line instructions and usage help) for associated items
  • Add new items to an existing region. Typically, as part of an extensibility project, where new items are limited to specific styles.

Note: All Administrator Personalizations are visible to the End-Users.

The following Personalizations are available for use by both the Applications Administrator and End User groups:

  • Change the number of rows displayed in a table
  • Hide or show regions and items
  • Change layout order or regions and items within the boundaries of the parent region.
  • Define up to three sorting levels for tabulated data.
  • Filter (restrict querying of) tabular data.
  • Change item labels and region headers
  • Enable totals for table columns, when applicable.

A detailed discussion of Administrative- and User-Level Personalizations is outside of the scope of this paper. Additional information can be found in the following chapters of the Oracle Application Framework Personalization Guide: Chapter 3, Personalizing Your Pages and Portlets; Chapter 4, Administrative-Level Personalizations; and Chapter 6, User-Level Personalization User Interface. Additionally, Personalization information specific to the Oracle Projects Suite can be found starting on Page 2-123 of the Projects Implementation Guide.

HTML or Forms: When and Where Will They Be Used?

As mentioned in the section covering access to the Oracle Project Suite Modules, the HTML- and Forms-based application pages are primarily accessed via the respective pre-defined User Responsibilities, Projects Super User (PSU) and Projects Implementation Super User (PISU), respectively. There are two exceptions to this rule. The PSU Responsibility includes two items under Projects: Setup, Key Performance Areas and Performance Status Indicators. Selecting either of these items takes the user to Oracle Forms-based pages. These items are also directly accessible from the PISU Responsibility. These are the only two items accessible in this dual manner (to the author’s knowledge). The other exception is Project and Project Template Creation. Both of these functions can be performed in either HTML-based or Forms-based application pages. Projects and Templates created in one environment are accessible from the other. Since some implementations may only use Project Costing or Project Costing and Project Billing, they would not have access to the HTML-based application pages. Conversely, some implementations may only use some combination of Project Management, Project Resource Management, Project Portfolio Analysis, and Project Collaboration. They would not have access to the Forms-based application pages associated with Project Costing and Project Billing. It is also worth noting that the HTML-based application pages used to define Project Templates have a greater number of available options than the Forms-based version. Conversely some of the Project and Project Template Options available in the Forms-based application pages, use HTML-based pages. An example is the Structures Option.

To recap, accessing features and functions unique to Oracle Project Management, Oracle Project Resource Management, Project Portfolio Analysis, and Project Collaboration will utilize the HTML-based application pages. Accessing features and functions unique to Oracle Costing and Billing will utilize the Oracle Forms-based application pages. Oracle Project Foundation, while Oracle Forms-based, is required to implement both groups of modules in the Oracle Projects Suite.

Implementation and Use Issues

There are two issues associated with the use of both HTML- and Forms-base application pages in the Oracle Projects Suite that warrant specific attention. They are User Defined Attributes versus Descriptive Flexfields and Budgetary Control.

User Defined Attributes (UDAs) enable you to define project and task level attributes that fit the unique needs of your enterprise. UDAs are unique to the HTML-based application pages. Conversely Descriptive Flexfields (DFFs) are available and usable in both HTML- and Forms-based application pages.

Oracle Projects’ Budgetary Controls enable you to monitor and control expense commitment transactions entered for a project based on a project cost budget. Oracle Projects’ Budgetary Control functionality is limited to use in the Forms-based application pages. This is primarily due to the Budget Types setup required to use this functionality.

Edward Charity, Jr. is President and Chief Executive Consultant of Project Management Systems Consultants (PMSC), LLC. PMSC is a boutique Management Consulting firm specializing in the design, development, and deployment of Enterprise Project Management Systems. Mr. Charity has been working with Oracle’s Enterprise Project Management Suite (aka Projects/Project Accounting) since 1993. Prior to founding PMSC, Mr. Charity was a Senior Manager in the Oracle Service Line at CapGemini’s and Ernst & Young’s Management Consulting Organizations. Prior to that Mr. Charity was a Managing Principal Consultant at Oracle Corporation. Mr. Charity and PMSC, LLC are based in Arlington, Virginia (Washington, D.C. Metro Area).