This preface contains:
The following are changes in Oracle Application Express Application Builder User's Guide for Oracle Application Express release 4.X.
The following features are new in this release:
Mobile Application Building
Developers can declaratively define mobile applications and mobile application components. Applications can now have both desktop and mobile user interfaces with automatic detection. Details include:
List View Region Type
Incorporated new List View region type which is a common presentation mode for mobile applications and is used in place of report views.
New Common Pages for Different User Interfaces
Developers can define a separate Global Page (formerly Page 0), Login Page, and Home Page for each user interface. This facilitates different pages being shown to end users when they access the application from a mobile device as opposed to a desktop system.
See "Creating a Global Page to Display Components on Every Page".
User Interface Specific Components
Based on the user interface defined for the page, different region types and item types are available by default. For example, Interactive Reports and Tabular Forms are standard region types for desktop pages and List View is standard for mobile pages. The new Slider item type is standard for mobile pages only.
Mobile Themes and Templates
By leveraging jQuery Mobile, mobile themes function on all major mobile platforms without need for modification and include features such as page transitions and HTML5 item types. Details include:
Support for Grid Layouts
Within page templates it is now possible to specify which Grid Layout to use for the placement of regions and page items. This is an alternative to HTML table-based layouts used by Oracle Application Express in previous releases.
See "Page Templates".
Page and Popup Transitions
For mobile page templates, page and popup transitions (for example slip, flip, and fade) can be specified to make the user experience more native for mobile devices.
Declarative support for Cascading Style Sheets and JavaScript File Substitutions
New page and page template attributes for inline Cascading Style Sheets (CSS) and JavaScript files provide declarative support for developers to load files into their applications.
See "About Page Attributes" and "Page Templates".
Content Delivery Network
A new application-level attribute, Content Delivery Network, within User Interface provides support for jQuery and jQuery Mobile files being loaded from a Content Delivery Network (for example, Google, Microsoft, or jQuery).
HTML5 Charts
HTML5 charting enables charts to be rendered without Flash.
HTML5 Item Types
Specifying item types for number, email, telephone, and URL greatly enhances the user experience when entering data for modern mobile devices that are HTML5 aware. Details include:
Slider Item Type
Slider renders an HTML5 range input type which is switched to a nice slider in mobile pages and can also be utilized on non-mobile pages.
Yes/No Item Type
Yes/No renders as a flip toggle switch on mobile pages and as a radio group on non-mobile pages.
New Display Orientation
For check box and radio group item types there is a new Display Orientation attribute which can be set to either Vertical (default) or Horizontal.
See "Understanding Page-Level Items" and "About Item Types".
Packaged Applications
A collection of productivity applications enable users to immediately start utilizing their database investment. The ability to unlock these applications also enables developers to customize and learn best practices.
Other New Features
Named Branches
Developers can now specify names for branches to help to identify different branches.
Read-Only Pages and Regions
Developers can now specify read-only pages or regions enabling them to readily build view-only components.
See "About Page Attributes" and "How Item Attributes Affect Page Layout".
Share Session State across Applications
Large logical applications are often separated into several physical applications that share the same session by configuring the same cookie name. Application items can now be shared between these applications by defining the item scope as Global.
See "Creating an Application-level Item that Functions as a Global Variable".
The following features are deprecated in this release, and may not be supported in a future release:
Set Memory Cache for DML Fetch process
DML Fetch processes should always use the Set Memory Cache on Fetch option to avoid confusion and issues with the setting of session state. Therefore the Set Memory Cache On Display option has been deprecated and is only be visible if the DML Fetch process is currently defined with that option.
Placeholders to Include Standard CSS and Standard JavaScript Files
The page-level attribute Include Standard JavaScript and CSS is deprecated and is only displayed for existing applications if the value is set to No. New applications no longer have this page-level attribute.
In page templates developers can now use the placeholders #APEX_CSS#
and #APEX_JAVASCRIPT#
to indicate if and where the standard Oracle Application Express CSS and JavaScript files should be loaded. If these placeholder are not included in the page template, they will not be loaded.
The following are additional changes in the release:
Dynamic Actions
Dynamic actions provide developers with a way to define client-side behavior declaratively without the need of JavaScript. Enhancements in this release include:
Enable jQuery Mobile
Existing item types have been modified so that they work with jQuery Mobile when JavaScript and Dynamic Actions are used to manipulate them (for example Set Value, Enable, and Hide).
Expose jQuery Mobile Events
The jQuery Mobile framework exposes a number of events that provide useful hooks for developers of mobile applications. The Dynamic Actions framework has been extended to incorporate these events.
Asynchronous AJAX Calls
Change server-side actions to always fire asynchronously and provide developers the ability to define how subsequent actions are fired.
Extend Affected Elements
Enables developers to add buttons to the components that can be specified as the affected element of a dynamic action.
Plug-Ins
Plug-ins enable developers to enhance the existing built-in functionality by writing PL/SQL components for item types, regions, and processes. Enhancements in this release include:
Increase Custom Attributes to 25
The number of custom attributes has been increased from 15 to 25.
Add Fetched Rows and No Data Found Message to Region Type Settings
The attributes Number of Fetched Rows, Number of Fetched Rows (item), and No Data Found Message have been added as standard attributes which can be exposed for region type plug-ins to determine how many rows should be displayed or fetched for pagination of the region source data or displayed when nothing is found.
Support Data Type Checking
The Region SQL Statement Column attribute has been added to support data type checking.
Interactive Reports
Immutable ID to Preserve Saved Interactive Reports
By introducing an immutable identifier for saved reports, subscriptions can be preserved when the application is upgraded by importing a new application definition (for example, importing from development into production). This identifier works even if the application being imported has a different application identifier.
Column Formatting
HTML expressions to be used in column definitions which can be rendered in the report and included in HTML and email downloads.
Define From Address
For subscriptions and email downloads users can now specify the "from" address.
API for Runtime SQL Query
A new API returns an interactive report's current SQL query to help developers determine the exact query being executed. This can be very useful when the output from an interactive report is used in some other functionality where user defined conditions such as filters, sorting, and columns displayed are required for customization.
Date Columns can use Equal (=) Operator
Enables users to filter on a specific date using the equal (=) operator.
See "Customizing Interactive Reports" and "Editing Interactive Reports as a Developer".
Websheets
Websheet applications are interactive web pages that combine text with data. Enhancements in this release include:
Improved Create Websheet Wizard
Application developers can now specify to Allow SQL and PL/SQL when creating the application rather than having to create the Websheet and then edit the application properties.
Toolbar Menu Enhancement
The existing toolbar menu options have been moved and new options added for Reports. These changes are designed to make it easier, more productive, and more intuitive for users to navigate with from within Websheets.
Link Directly to Data Grids
Provide users with the ability to use a link directly to edit a data grid or data grid row (form view) which can be exposed or emailed for easier access.
Team Development Attachments
Team Development enables developers to manage the development process by tracking new features, non-feature related tasks (or To Do tasks), bugs, and milestones. With this release, developers can now add external documents as attachments to features, bugs, and ToDos.
All content, screen captures, and graphics have been updated to reflect Oracle Application Express release 4.2 functionality and user interface enhancements.
Additional administration enhancements:
Maximum Items per Page Raised to 200
Maximum enterable items on a page has changed from 100 to 200.
Debugging Enhancements
Developers no longer need to change the Debugging Allowed flag to Yes to view debugging information when they run a application from Application Builder. Oracle Application Express now makes better use of the different debugging levels and provides better controls to manage what level of detail is returned.
On-Demand Improvements
Authorizations and conditions can now be utilized with on-demand processes. By default, on-demand processes are now created with an initial authorization of Must Not Be Public User to avoid execution by users in unauthenticated sessions.
Globalization Enhancements
To improve productivity within the translation repository, developers can edit text messages using a grid.