Preface
Topic Overview
Audience
Documentation Accessibility
Related Documents
Conventions
What's New in Oracle Application Express
Oracle Application Express Release 3.2 New Features
Highlights of Oracle Application Express Release 3.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
Navigation Alternatives
Using Online Help
Running a Demonstration Application
Installing a Demonstration Application
Running an Installed Demonstration Application
Running an Application from Demonstration Applications
Running an Application from the Application Home Page
Understanding Sample Application
About the Home Page
About the Customers Page
About the Products Page
About the Orders Page
About the Charts Page
About the Admin Page
Viewing Pages in Printer Friendly Mode
Modifying a Demonstration Application
About the Developer Toolbar
Editing a Demonstration Application
Viewing Underlying Database Objects
Viewing the Database Object Dependencies Report
Viewing Database Objects in Object Browser
Application Builder Concepts
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
Using Application Builder
Accessing Application Builder
About the Application Builder Home Page
Configuring Developer Preferences
About the Application Home Page
About the Action Bar
About Application Attributes
Configuring the Application Definition
Configuring Security Attributes
Configuring Globalization Attributes
Working with Application Pages
About the Page Definition
Accessing a Page Definition
Understanding the Page Definition
Using the View List on the Page Definition
Accessing the View List on the Page Definition
About Page Events
About Database Object Dependencies
About History
About Export
About Groups
About Referenced
Editing a Page Definition
About the Edit All Icon
About the Copy or Create Icons
Reordering Page Components
About Page Rendering
About Page Processing
About Shared Components
Understanding Page Computations
Understanding Validations
Understanding Page Processes
Understanding Branches
Editing Page Attributes
Accessing Page Attributes
About the Page Attributes Page
About the Developer Toolbar
Working with Shared Components
Accessing the Shared Components Page
About the Shared Components Page
About Exporting Shared Components
Accessing Reports on Shared Components
Understanding Application Processes
About On Demand Application Processes
Application Process Example
Creating an Application Process
Accessing Application Processes Reports
Understanding Application Computations
About Application Computations
Creating an Application Computation
Accessing the Application Computation History Report
Building an Application
Creating an Application
About Creating an Application Using a Wizard
About the Create Application Wizard
About the Create Application from Spreadsheet Wizard
About Demonstration Applications
Copying an Application
Deleting an Application
Managing Pages in an Application
About Creating Pages
Creating a Page from the Application Home Page
Creating a Page from the Page Definition
Creating a Page from the Developer Toolbar
Copying a Page
Running a Page or Application
Grouping Pages
Locking and Unlocking a Page
Deleting a Page
Adding Application Comments
Creating an Application Comment
Viewing the Application Comments Report
Adding Developer Comments
Adding Developer Comments to an Application or Page
Viewing and Editing Developer Comments
Deleting Developer Comments
About the Developer Comments Report
Creating Applications Groups
Viewing Application Groups
Creating an Application Group
Assigning an Application to an Application Group
Removing an Application from an Application Group
Deleting an Application Group
Viewing Application Reports
Accessing Application Reports
Shared Components Reports
Page Components Reports
Activity Reports
Cross Application Reports
Understanding Page-Level Items
Differences Between Page Items and Application Items
About the Items Section of the Page Definition
Creating Page-Level Items
Editing Page-Level Items
Using the Drag and Drop Layout Page
Referencing Item Values
Displaying Conditional or Read-Only Page Items
Working with a Multiple Select List Item
Understanding Application-Level Items
Creating an Application-level Item
Accessing Application Item History
Editing Application-level Item Attributes
Adding Application Components
Creating Reports
Creating a Report Using a Wizard
Editing SQL and Wizard Reports
Editing Interactive Reports
Printing Report Regions
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
Creating a New Calendar
Editing a Calendar Title
Editing Calendar Attributes
Upgrading a Calendar Created in a Previous Releases
Converting an Easy Calendar to a SQL Calendar
Creating Charts
About Supported Chart Types
About Creating SQL Queries for Charts
Creating an HTML Chart
Creating a SVG Chart
Creating a Flash Chart
Editing Chart Attributes
Using Custom XML with Flash Charts
Enabling Asynchronous Updates
Displaying SVG Charts in Other Languages
Creating Buttons
About the Buttons Section of the Page Definition
Creating a Button Using a Wizard
Creating Multiple Buttons
Editing Buttons
Understanding the Relationship Between Button Names and REQUEST
About Branching with Buttons
Displaying Buttons Conditionally
Creating Lists of Values
Creating a Named LOV at the Application Level
About Static LOVs
Editing an Existing LOV
Referencing Session State Within an LOV
Referencing a Null Value in an Item Based on an LOV
Accessing LOV Reports
Creating Dependent Select Lists
Using Shortcuts
About Shortcut Types
Defining Shortcuts
Editing Existing Shortcuts
Accessing Shortcut Reports
Using the Find Icon
About the Find Icon
About the Item Finder
Using the Page Finder
Using the Query Finder
Using the Table Finder
Using the PL/SQL Finder
Using the Images Finder
Using the CSS 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 Functions
Calling JavaScript from a Button
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
Adding Navigation
Creating Tabs
About Template Support
About the Tabs Section of the Page Definition
Using the Reorder Tabs Icon
About the Tabs Page
How to Create a Tab
Editing Tabs
Accessing Tab Reports
Creating Lists
How To Create a List
Adding a List to a Page
Editing a List
Editing Multiple List Entries Simultaneously
Accessing List Reports
Creating Breadcrumbs
About Breadcrumbs
How to Create Breadcrumbs
Editing Breadcrumbs
Reparenting Breadcrumb Entries
Accessing Breadcrumb Reports
Creating Trees
How To Create a Tree
Editing a Tree
Accessing 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
Using the Reorder Navigation Bar Entries Icon
Accessing Navigation Bar Entry Reports
Controlling Navigation Using Branches
Controlling Page Layout
Understanding Page Layout in Oracle Application Express
Displaying Components on Every Page of an Application
Understanding Regions
About the Regions Section of the Page Definition
Using the Reorder Regions Icon
Editing Region Attributes
Creating a Region
About Region Types
Copying a Region
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
Managing Themes and Templates
Managing Themes
Accessing the Themes Page
Changing the Default Templates in a Theme
Creating a Theme
Editing 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
Managing User Interface Defaults
Viewing Tables or Views Utilizing User Interface Defaults
Creating to User Interface Defaults
Viewing the UI Defaults Report in Object Browser
Editing Column Attributes
About the Column Definition
About List of Values
About the Database Column Definition Report
Comparing User Interface Defaults Across Applications
About Exporting and Importing User Interface Defaults
Debugging an Application
About Tuning Performance
Reviewing Session State
Accessing Debug Mode
Enabling SQL Tracing and Using TKPROF
Monitoring Application and Page Resource Use
Viewing Reports
Debugging Problematic SQL Queries
Removing Controls and Components to Isolate a Problem
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 11g
Understanding Developer Security Best Practices
Understanding Items of Type Password
Identifying At Risk Password Items
About Using Zero as a Session ID
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
Using Preconfigured Authentication Schemes
About Creating an Authentication Scheme from Scratch
Managing Existing Authentication Schemes
Viewing the Authentication Scheme Associated with an Application
Changing the Authentication Scheme Associated with an Application
Viewing Authentication Scheme Utilization Report
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
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
Exporting an Application
Exporting Workspace Users
Exporting Application Components
Exporting a Page in an Application
Exporting Cascading Style Sheets
Exporting Images
Exporting Static Files
Exporting Script Files
Exporting Themes
Exporting User Interface Defaults
Where Images, CSS, and Script Files Are Stored
Importing Export Files
Importing an Application or Page
Importing Cascading Style Sheets
Importing Static Files
Importing Images
Importing Themes
Importing User Interface Defaults
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 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
Advanced Programming Techniques
About DML Locking
Accessing Data with Database Links
Sending Email from an Application
About Configuring Oracle Application Express to Send Email
Sending Email from an Application
Using Collections
About the APEX_COLLECTION API
Creating a Collection
Truncating a Collection
Accessing a Collection
Deleting a Collection
Adding Members to a Collection
Updating Collection Members
Deleting Collection Members
Determining Collection Status
Merging Collections
Managing Collections
Clearing Collection Session State
Creating Custom Activity Reports Using APEX_ACTIVITY_LOG
Running Background PL/SQL
Understanding the APEX_PLSQL_JOB Package
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
Using the Web Service Reference Repository
Testing a Web Service Reference Created from a WSDL
Testing a Web Service Reference Created Manually
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
About BLOB Support in Forms and Reports
About BLOB in Forms
About BLOB Support in Reports
Working With BLOBs Procedurally
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 Export Text to a Translation File
Step 3: Translate the XLIFF File
Step 4: Upload and Apply a Translated XLIFF Document and 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
Available Conditions
Conditions in Application Builder
Privileges Granted to PUBLIC
Packages
Procedures
Functions
Tables
Views
Index