1/181
Contents
Title and Copyright Information
Preface
Topic Overview
Audience
Documentation Accessibility
Related Documents
Conventions
What's New
Oracle Application Express Release 4.1 New Features
What's New in this Document for Release 4.1
1
Quick Start
What is Oracle Application Express?
About Oracle Application Express Architecture
Understanding Application Express User Roles
Logging In To Oracle Application Express
About Browser Requirements
Configuring Your Oracle Application Express Environment
Logging In To Oracle Application Express as a Developer
About the Workspace Home Page
About the Oracle Application Express Documentation
Accessing the Online Documentation Library
Downloading the Online Documentation Library
About Field-Level Help
2
Application Builder Concepts
What is an Oracle Application Express Application?
Understanding the Difference Between Database and Websheet Applications
About the Create Application Wizard
What Is a Page?
Understanding Page Processing and Page Rendering
How the Application Express Engine Renders and Processes Pages
Understanding Conditional Rendering and Processing
Verifying User Identity
Controlling Access to Controls and Components
Understanding Session State Management
What Is a Session?
Understanding Session IDs
Viewing Session State
Understanding URL Syntax
Understanding the URL that Displays for a Page
Using f?p Syntax to Link Pages
Calling a Page Using an Application and Page Alias
Calling a Page from a Button URL
Facilitating Bookmarks by Using Zero as the Session ID
Managing Session State Values
Referencing Session State
Setting Session State
Clearing Session State
About Bind Variable Syntax
Understanding Substitution Strings
Using Substitution Strings
About Built-in Substitution Strings
3
Reviewing Sample Applications
About Installing and Running Sample Applications
Installing Product Portal Sample Database Application
Installing AnyCo IT Department Sample Websheet Application
Updating a Previously Installed Sample Database Application
Updating a Previously Installed Sample Websheet Application
About Product Portal Sample Database Application
Running Product Portal
Understanding Product Portal
Viewing Pages in Printer Friendly Mode
Modifying Product Portal
About AnyCo IT Department Sample Websheet Application
Running AnyCo IT Department
About Websheet Navigation
Understanding AnyCo IT Department
Common Websheet User Interface Elements
Modifying Websheet Content
4
Managing the Development Process
About the Team Development Home Page
Tracking Features
Viewing Features
Creating a Feature
Updating a Feature
Viewing Feature Reports
Tracking Milestones
Viewing Milestones
Creating a Milestone
Updating a Milestone
Viewing Milestone Reports
Tracking To Dos
Viewing To Dos
Creating a To Do
Updating a To Do
Viewing To Do Reports
Managing Bugs
Viewing Bugs
Creating a Bug
Editing a Bug
Viewing Bug Reports
Managing Feedback
Viewing Feedback
Adding a Feedback Page to an Application
Reviewing Feedback
Viewing Feedback Reports
Utilizing the Tag Cloud Summary
Managing Team Actions
Managing Links
Managing News Entries
Managing Team Development Settings
Viewing a Release Summary
About Utilities
5
About Websheet Applications
About Using Websheet
Navigating Between Websheet Pages and Sections
About Language
About the Help Link
About Builder Link
About Logout Link
About Websheet Search
About the Control Panel
About Creating a Websheet Application
Creating a Websheet from Application Builder
Creating a New Websheet Application from a Running Websheet
Running a Websheet
Adding a New Page
Copying an Existing Page
Editing Page Details
Deleting a Websheet
About Adding and Editing Page Sections
About Section Types
About Editing Sections
Deleting Page Sections
Editing Section Titles and Display Order
About Text Sections
Adding a Text Section
Editing a Text Section
About Navigation Sections
Adding a Navigation Section
About Adding Data Grids
About Data Grids
Creating a Data Grid
Copying a Data Grid
Viewing and Editing a Data Grid
Viewing the Data Grid Change History Log
Deleting a Data Grid
About Adding and Editing Data Content
Available Data Sources
About Enabling Support for Creating Data Reports
Incorporating Data into Websheet Pages
About Adding Data Reports
About Data Reports
Creating a Data Report
Viewing and Modifying a Data Report
Deleting a Data Report
About Data Sections
Adding a Data Section to a Page
Editing a Data Section
About Chart Sections
Adding a Chart Section
Editing a Chart Section
About PL/SQL Sections
Adding a PL/SQL Section
Editing a PL/SQL Section
Understanding Markup Syntax
Linking to a Page
Linking to a Section
Linking to External URLs
Linking to a Data Grid
Using SQL and SQLVALUE Syntax
About Advanced Data Grid Queries Rules
Managing Annotations
Managing Uploaded Files and Images
Adding Tags
Adding Notes
Viewing and Deleting Annotations
Managing Websheet Applications
Viewing the Websheet Dashboard
Monitoring Websheet Activity
Editing Websheet Application Properties
Controlling Websheet Access
Changing Your Websheet Password
Emailing a Websheet Page
Printing a Websheet Page
Viewing Websheets
About Presentation Mode
Viewing the Page Directory
Viewing Page History
Viewing an Application Directory
6
Using Application Builder
Accessing Application Builder
About the Application Builder Home Page
About the Application Home Page
About the Developer Action Bar
Searching Page Metadata
7
About Database Applications
About Creating a Database Application
Creating an Database Application From Scratch
Creating an Application from a Spreadsheet
Creating an Instant Database Application
Creating a Database Application from a Template
Copying a Database Application
Deleting a Database Application
About Application Models and User Interface Defaults
About Application Attributes
Editing the Application Definition
Configuring Security Attributes
Configuring Globalization Attributes
Managing Pages in a Database Application
About Creating Pages in a Database Application
Creating a Page from the Application Home Page
Creating a Page from the Developer Toolbar
Copying a Database Application Page
Running an Application or Page
Grouping Pages
Locking and Unlocking a Page
Deleting a Page
Adding Database Application Comments
Creating and Editing Database Application Comments
Adding Developer Comments
Adding Developer Comments to an Application or Page
Viewing and Editing Developer Comments
Deleting Developer Comments
About the Developer Comments Report
Viewing the Developer Comments Calendar
Creating Application Groups
Viewing Database Application Groups
Creating a Database Application Group
Assigning a Database Application to an Application Group
Removing a Database Application from an Application Group
Deleting an Database Application Group
Understanding Page-Level Items
Differences Between Page Items and Application Items
Viewing Items on the Page Definition
Creating Page-Level Items
Editing Page-Level Items
Referencing Item Values
Displaying Conditional or Read-Only Page Items
Working with Multiple Select List Item
Understanding Application-Level Items
Creating an Application-level Item
Viewing Application Item Usage
Editing Application-level Item Attributes
Viewing Application Utilities and Reports
Using Application Builder Utilities
About Page Specific Utilities
About Cross Page Utilities
About Cross Application Reports
8
Working with Database Application Pages
About the Page Definition
Accessing the Page Definition
About Page Rendering
About Page Processing
About Shared Components
About Tree and Component View
Editing a Page in Tree View
Editing a Page in Component View
Common Elements of the Page Definition
Altering Page Attributes
Accessing Page Attributes
About Page Attributes
Understanding Page Computations
Creating a Page Computation
Understanding Computation Points and Computation Syntax
Editing Page Computation Attributes
Understanding Validations
Creating Item and Page Validations
Determining When Validations Execute
Defining How Validation Error Messages Display
Processing Validations Conditionally
Understanding Page Processes
About Creating a Page Process
Editing Page Process Attributes
Controlling When a Page Process Executes
Creating Page Process Success and Error Messages
Making a Page Process Conditional
Working with Branches
Defining a Branch Point and Action
Branching Conditionally
Working with Shared Components
Accessing the Shared Components Page
About the Shared Components Page
About Exporting Shared Components
Understanding Application Processes
About On Demand Application Processes
Application Process Example
Creating an Application Process
Editing Application Process Attributes
Creating Application Process Error Messages
Viewing the Application Processes History Report
Understanding Application Computations
About Application Computations
Creating an Application Computation
Accessing the Application Computation History Report
Using the Attribute Dictionary
9
Creating Reports
Understanding the Difference Between Interactive and Classic Reports
Creating a Report Using a Wizard
Customizing Interactive Reports
Using the Search Bar
Using the Select Columns to Search Icon
Using the Column Heading Menu
About the Actions Menu
Selecting Columns to Display
Adding a Filter
Specifying Rows Per Page
Selecting Column Sort Order
Creating a Control Break
Adding Highlighting
Computing Columns
Aggregating a Column
Creating a Chart from the Actions Menu
Grouping Columns
Executing a Flashback Query
Saving an Interactive Report
Resetting a Report
Downloading a Report
Subscribing to Emailed Reports
Editing Interactive Reports as a Developer
Accessing the Interactive Report Attributes Page
Editing Interactive Report Column Attributes
Creating Column Groups
Controlling Interactive Report Pagination
Managing Interactive Report Column Sorting
Customizing the Interactive Report Search Bar
Configuring Download Options on the Actions Menu
Understanding Link Columns
Creating a Column Link in an Interactive Report
Displaying Interactive Reports Conditionally
Defining a Column as a List of Values in an Interactive Report
Enabling Icon View
Enabling Detail View
Configuring Advanced Attributes for Interactive Reports
Linking to Interactive Reports
Linking to Shared Interactive Reports
Managing Saved Reports as a Developer
Viewing Saved Report Activity
Editing Classic Reports
Accessing Classic Report Attributes
Altering Classic Report Layout Using Column Attributes
Controlling Classic Report Pagination
Enabling Column Sorting in a Classic Report
Adding a Download Link to a Classic Report
Enabling the CSV Output Option in a Classic Report
Exporting a Classic Report as an XML File or a CSV File
Creating a Column Link in a Classic Report
Defining an Updatable Column in a Classic Report
Defining a Column as a List of Values in a Classic Report
Controlling When Columns Display in a Classic Report
Controlling Column Breaks in a Classic Report
Printing Report Regions
About Printing Reports to PDF
About Report Printing Configuration Options
About Classic Report Printing Methods
About Report Queries
About Report Layouts
Configuring Classic Report Region Print Attributes
Configuring Interactive Report Region Print Attributes
10
Adding Database Application Components and Controls
Creating Forms
Creating a Form Using a Wizard
Creating a Tabular Form
Creating a Master Detail Form
Creating a Form Manually
Validating User Input in Forms
Creating Calendars
About Creating Calendars
Viewing a Sample Calendar
Creating an Easy Calendar
Creating as SQL Calendar
Editing Calendar Attributes
Editing an Existing Calendar to Include Add and Edit Functionality
Enabling the Dragging and Dropping of Data In an Existing Calendar
Editing a Calendar Title
Upgrading a Calendar Created in a Previous Releases
Converting an Easy Calendar to a SQL Calendar
Creating Maps
About Flash Map Support
Adding a Flash Map to an Existing Page
Adding Flash Maps to a New Page
About Creating SQL Queries for Maps
Editing Flash Map Attributes
Using Custom XML with Flash Maps
Enabling Asynchronous Updates
Creating Charts
About Creating SQL Queries for Charts
Creating an HTML Chart
Creating a Flash Chart
About SVG Charts
Editing Chart Attributes
About Saving Flash Charts
Using Custom XML with Flash Charts
Enabling Asynchronous Updates
Creating Buttons
Creating a Button Using a Wizard
Creating Multiple Buttons in Component View
Editing Buttons
Understanding the Relationship Between Button Names and REQUEST
About Branching with Buttons
Displaying Buttons Conditionally
Creating Lists of Values at the Application Level
Creating a Named LOV at the Application Level
About Static LOVs
Editing an Existing LOV
Referencing Session State Within an LOV
Accessing LOV Reports
Using Shortcuts
About Shortcut Types
Defining Shortcuts
Editing Existing Shortcuts
Accessing Shortcut Reports
Creating Trees
Creating a Tree
Editing a Tree as a Developer
Using the Find Icon
About the Find Icon
About the Item Finder
Using the Pages Finder
Using the Queries Finder
Using the Tables Finder
Using the PL/SQL Finder
Using the Images Finder
Controlling Access to Applications, Pages, and Page Components
How the Access Control List Works
Creating an Access Control List
Selecting an Application Mode and Adding Users
Controlling Access for Pages and Page Components
Incorporating JavaScript into an Application
Referencing Items Using JavaScript
Incorporating JavaScript Utilizing the JavaScript Attribute
Calling the JavaScript File from the HTML Header Attribute
Calling the JavaScript File from the Page Template
Calling JavaScript from a Button
Calling JavaScript Using a Dynamic Action
About jQuery and jQuery UI Support
About Available jQuery UI Features
Referencing the jQuery Library in Your JavaScript Code
Optimizing a Page for Printing
Selecting a Printer Friendly Template for an Application
Using f?p Syntax to Toggle to Printer Friendly Mode
Creating a Help Page
Creating a Help Page and Region
Defining Help Text
Creating a Help Navigation Bar Entry
11
Adding Navigation
Creating Tabs
About Tabs
About the Tabs Page
Creating a Tab
Editing Tabs
Accessing Tab Reports
Creating Lists
About List Types
About Static Lists
About Dynamic Lists
Copying a List
Adding a List to a Page by Creating a Region
Editing List Attributes
Accessing List Reports
Creating Breadcrumbs
About Breadcrumbs
How to Create Breadcrumbs
Editing Breadcrumbs
Reparenting Breadcrumb Entries
Deleting Unused Breadcrumb Entries
Accessing Breadcrumb Reports
About Trees Created as Shared Components
Editing an Existing Tree
Accessing Existing Tree Reports
Creating a Navigation Bar Entry
About Navigation Bars
How to Create a Navigation Bar Entry
Editing a Navigation Bar Entry
Editing Multiple Navigation Bar Entries Simultaneously
Accessing Navigation Bar Entry Reports
Controlling Navigation Using Branches
Creating a Branch
12
Controlling Page Layout
Understanding Page Layout in Oracle Application Express
Displaying Components on Every Page of an Application
Creating a Page Zero
Navigating to Page Zero
Understanding Regions
Creating a Region
About Region Types
Editing Regions
Creating a Region Display Selector
Copying a Region
Deleting Regions
Creating a Multiple Column Layout
Creating Regions in Multiple Columns
Creating a Multiple Column Page Template
How Item Attributes Affect Page Layout
Incorporating Content from Other Web Sites
Managing Images
Uploading Images
Referencing Images
Editing Image Attributes
Deleting an Image
Managing Static Files
Uploading Static Files
Editing an Uploaded File
Downloading an Uploaded File
Deleting an Uploaded File
Rendering HTML Using Custom PL/SQL
13
Managing Themes and Templates
Managing Themes
Accessing the Themes Page
Changing the Default Templates in a Theme
Creating a Theme
Switching the Active Theme
Copying a Theme
Deleting a Theme
Managing Workspace Themes
About Exporting and Importing Themes
Changing a Theme Identification Number
Viewing Theme Reports
Customizing Templates
About Cascading Style Sheets
Selecting a Default Page Template
Creating a New Template
Viewing Template Reports
Managing Templates
Breadcrumb Templates
Button Templates
Calendar Templates
Label Templates
List Templates
Page Templates
Popup LOV Templates
Region Templates
Report Templates
Using Custom Cascading Style Sheets
Uploading Cascading Style Sheets
Referencing an Uploaded Cascading Style Sheet in the Page Template
14
Debugging an Application
About Tuning Performance
Running Advisor to Check Application Integrity
About Oracle Application Express Advisor
Running Advisor on an Entire Application
Running Advisor on a Single Page
Reviewing Session State
Accessing Debugging Mode
Enabling and Disabling Debugging
Running an Application in Debugging Mode
Using f?p Syntax to Access Debugging Mode
Viewing Debug Reports
Enabling SQL Tracing and Using TKPROF
Monitoring Application and Page Resource Use
Viewing Page Reports
Debugging Problematic SQL Queries
Removing Controls and Components to Isolate a Problem
15
Managing Application Security
Understanding Administrator Security Best Practices
Security Considerations When Using the Embedded PL/SQL Gateway
About Configuring Oracle HTTP Server with mod_plsql for Oracle Application Express
Utilizing Secure Sockets Layer (SSL)
Integrating with Oracle BI Publisher
About Setting Password Complexity Rules
Advantages of the Oracle Application Express Runtime Environment
Understanding Session Timeout
Enabling Network Services in Oracle Database 11
g
Understanding Developer Security Best Practices
Understanding Items of Type Password
Identifying At Risk Password Items
Understanding Cross-Site Scripting Protection
About Session State and Security
Understanding Session State Protection
Securing File Uploads
Establishing User Identity Through Authentication
Understanding How Authentication Works
Determining Whether to Include Authentication
Creating an Authentication Scheme
Creating a Pre-configured Authentication Schemes
Managing Existing Authentication Schemes
Viewing the Authentication Scheme Associated with an Application
Changing the Authentication Scheme Associated with an Application
Viewing Authentication Scheme Reports
Providing Security Through Authorization
How Authorization Schemes Work
Creating an Authorization Scheme
Attaching an Authorization Scheme to an Application, Page, or Components
Viewing Authorization Reports
16
Deploying an Application
About the Oracle Application Express Application Development Life Cycle
System Development Life Cycle Methodologies to Consider
Understanding the Packaging Process
Deployment Options to Consider
Deciding Whether to Copy a Workspace
Deciding Whether to Copy a Database
About the Application ID
Deciding to Install a New HTTP Server
How to Move an Application to Another Development Instance
About Managing Database Objects
How to Create a Packaged Application
How a Packaged Application Simplifies Deployment
Creating a Packaged Application
Adding Installation Scripts for an Image, Cascading Style Sheet, or Static File
Adding an Access Control List to a Packaged Application
Installing Supporting Objects
Deleting Supporting Objects Scripts, Messages, and Installation Options
Upgrading a Packaged Application
Deinstalling Supporting Objects
Viewing an Install Summary
Exporting an Application and Related Files
Where Images, CSS, and Script Files Are Stored
Exporting an Application
Exporting Application Components
Exporting a Workspace
Exporting a Page in an Application
Exporting a Websheet
Exporting Cascading Style Sheets
Exporting Images
Exporting Static Files
Exporting Themes
Exporting Plug-ins
Exporting Script Files
Exporting User Interface Defaults
Exporting Feedback
Importing Export Files
Importing an Application, Page or Component Export
Importing a Websheet
Importing Plug-ins
Importing Cascading Style Sheets
Importing Images
Importing Static Files
Importing Themes
Importing User Interface Defaults
Importing Feedback
Installing Export Files
Accessing the Export Repository
Installing an Application Export from the Export Repository
Installing Other Files from the Export Repository
Deleting Files from the Export Repository
Installing Export Files from SQL*Plus
About Publishing the Database Application URL
About Publishing the Websheet Application URL
Using Build Options to Control Configuration
Creating Build Options
Managing Build Options
Exporting Build Options or Build Option Status
Viewing the Build Option Utilization Report
17
Advanced Programming Techniques
About DML Locking
Accessing Data with Database Links
Sending Email from an Application
Using Collections
Creating Custom Activity Reports Using APEX_ACTIVITY_LOG
Running Background PL/SQL
About System Status Updates
Using a Process to Implement Background PL/SQL
Implementing Web Services
Understanding Web Service References
Working with SSL Enabled Web Services
Creating a Web Service Reference Based on a WSDL
Creating a Web Service Reference Manually
Creating a RESTful Web Service Reference
Using the Web Service Reference Repository
Testing a Web Service Reference Created from a WSDL
Testing a Web Service Reference Created Manually
Testing a REST Web Service Reference
Creating an Input Form and Report on a Web Service
Creating a Form on a Web Service
Invoking a Web Service as a Process
Editing a Web Service Process
Viewing a Web Service Reference History
Exposing a Report Region as a RESTful Web Service
Implementing Plug-ins
About Plug-ins
Accessing Plug-ins
Editing a Plug-in
Creating a Plug-in
Adding Custom Attributes to a Plug-in
Uploading Files to Associate with a Plug-in
Adding Events to a Plug-in
Deleting a Plug-in
Viewing the Plug-in Repository
Importing a Plug-in from the Plug-in Page
Exporting a Plug-in from the Plug-in Page
Resetting the Plug-in Interactive Report
View Plug-in Utilization
View Plug-in History
Implementing Dynamic Actions
Understanding Dynamic Actions
Creating a Dynamic Action
Editing Dynamic Actions
Adding Additional True or False Actions
Defining the Frequency and Scope
Debugging Dynamic Actions
About BLOB Support in Forms and Reports
About BLOB in Forms
About BLOB Support in Reports
Working With BLOBs Procedurally
Using Screen Reader Mode in Your Database Applications
Provisioning Screen Reader Mode
Extending Screen Reader Mode
Using High Contrast Mode in Your Database Applications
Provisioning High Contrast Mode
Extending High Contrast Mode
Creating Applications with Data Loading Capability
Creating a Data Load Wizard
Editing the Data Load Wizard
18
Managing Application Globalization
About Translating an Application and Globalization Support
About Language Identification
Rules for Translating Applications Built in Application Builder
How Translated Applications Are Rendered
About Translatable Components
Specifying the Primary Language for an Application
Using Format Masks for Items
Translating Applications for Multibyte Languages
Understanding the Translation Process
Step 1: Map the Target Language
Step 2: Seed and Download to a Translation File
Step 3: Translate the XLIFF File
Step 4: Upload and Apply a Translated XLIFF Document
Step 5: Publish the Application
Manually Editing a Translation
Translating Messages
Translating Messages Used in PL/SQL Procedures
Translating Messages Used Internally by Oracle Application Express
Translating Data That Supports List of Values
Defining a Dynamic Translation
APEX_LANG.LANG API
About Supported Globalization Codes
A
About Item Types
Available Item Types
B
Oracle Application Express Limits
Development Environment Limits
Component Limits
C
Available Conditions
Conditions in Application Builder
D
About Granted Privileges
About Granting Privileges to Database Users
About Privileges Granted to PUBLIC
Packages
Procedures
Functions
Tables
Views
Sequences
Types
E
Accessibility in Oracle Application Express
About Screen Reader Mode
What Does Screen Reader Mode Do?
Enabling Screen Reader Mode
About High Contrast Mode
What Does High Contrast Mode Do?
Enabling High Contrast Mode
Accessing Interactive Reports Using JAWS
Accessing the Actions Menu
Accessing Form Pages Using JAWS
Understanding the Structure of Pages
Using the Tasks Links on a Page
Accessing Help Text
Dealing with Validation Errors
Accessing Components Using a Keyboard
Using New Date Pickers
Accessing Interactive Report Regions
Index
Scripting on this page enhances content navigation, but does not change the content in any way.