2 New Features

Oracle APEX release 23.1 includes a number of new features. These new features are not present in APEX release 22.2 and earlier releases.

2.1 Template Components

Template Components are a new plug-in type for building re-usable UI components with support for actions, menus, and custom attributes within Page Designer. These components can be rendered standalone as regions displaying one or multiple rows of data, and can also be within reports as partials for a column.

Fully Declarative - Template Components let you create plug-ins with attributes that can be set declaratively in Page Designer. Attributes defined in the plug-in are available in Page Designer for any column or region using the plug-in type.

Actions and Menu Buttons - With the introduction of Action Positions and Action Templates for plug-ins, you can define actions and menu buttons with row-level conditions for Template Components.

Universal Theme Components - Six out-of-the-box Template Components are added to Universal Theme and available as region types in Page Designer: Avatar, Badge, Comments, Content Row, Media List, and Timeline. These new regions remember pagination, work with faceted search and smart filters, and support the external Order By Item. When working with apps that use the latest version of Universal Theme, Comments, Content Row, Media List, and Timeline are available in the Create Page wizard.

Partials for Report Columns - Use partial components as Interactive Report column types to display content like avatars and badges or apply a Template Component directly in any HTML Expression using new template directive syntax.

For more information, see Template Components in Oracle APEX App Builder User’s Guide.

2.2 PWA Push Notifications

Low-code push notifications are now available with a single switch. Users on all devices, desktop and mobile, can opt-in to receive push notifications.

Notifications - Send notifications directly to user's devices that feature a message title, body, and icon. Tap on notifications to link back to the APEX application, or a specific page in the app.

Easy Subscription - APEX users can subscribe to push notifications from within the application, while instance administrators can manage a queue of notifications.

New Process and API - A new native process and public API (apex_pwa) are available in APEX to handle sending push notifications from APEX applications.

2.3 Modernized Object Browser

New Functionality

The Object Browser delivers a more accessible and streamlined user experience that makes managing database objects easier.

Easy Filtering - You can now view and filter database objects of all types from a single tree. Stay focused on your filtered subset of objects throughout your browser session until you clear or change the filter.

Editing Made Easier - An enhanced editing experiences makes it easy to continue editing the last object you viewed, including remembering your cursor position in the code editor. A new warning on navigation ensures unsaved changes are never unintentionally lost.

Improved Performance - Create common objects from a new landing page, using a simplified Create Object wizard. When viewing an object, you can now switch quickly between an object's tabs--for example, between the spec and body of a package, or the columns and data of a table.

Accessible - Object Browser is now coded to accessibility guidelines, making it easier to work on database objects with assistive technologies like screen readers.

Changed Functionality

As part of streamlining the Create Object wizards, some functionality that used to be in the wizard is now only available when editing the object.

Additional changes to the Object Browser include:
  • Data downloads from tables, views, or materialized views are now in .XLSX format instead of .CSV format.
  • The REST tab for tables, views, packages, procedures, and functions is moved. It is now available in the RESTful Services, Enabled Objects section.
  • The UI Defaults tab for tables is moved. To access the UI defaults for a selected table, go to the Columns tab and select More, then UI Defaults

Deprecated Functionality

For a list of items that are deprecated, see Deprecated Object Browser Features.

More Information

For more information on the modernized Object Browser, see Managing Database Objects with Object Browser in Oracle APEX SQL Workshop Guide.

2.4 Page Processing Improvements

New features are available to streamline and better manage page processing.

Execution Chains - There is a new page process type: Execution Chain. Group page processes together, or execute page processes one after the other by adding them as children of a chain. Chains can be declaratively run in the background or in the foreground.

Control Background Execution - Monitoring is added to the Active Sessions page, giving you more control over processes executing in the background.

Status and Progress Reporting - Report on the status and progress of background processes with a new API (APEX_BACKGROUND_PROCESS) and APEX view (APEX_APPL_PAGE_BG_PROC_STATUS).

2.5 REST Data Source Enhancements

REST Data Sources are updated to provide more control over source discovery and responses.

Invoke API for REST Sources - The Invoke API process is extended to support REST Data Sources. This provides fully declarative REST invocation for page processes, and makes it simple to map REST source parameters to page items, SQL expressions, static values, and more.

There are new REST Source Parameter types:
  • Use "Status Code" and "Reason Phrase" to easily get the server response into the page items.
  • Use "Data Profile" to easily fetch a JSON response attribute into a page item.

Discover REST Sources with Swagger - APEX now supports REST Source discovery based on a Swagger/OpenAPI response. Create a complete REST Data Source based on a response, including a data profile and additional metadata like operations, URL, or other parameters.

Raw Selectors - A new switch item is added to REST Data Source Profiles to select rows as they are. When enabled, all selectors are used exactly as specified and APEX does not sanitize row and column selectors when generating the SQL query for JSON parsing.

2.6 Property Graph Support

APEX now supports building APEX components based on Property Graph queries, a feature introduced in Oracle Database 23ai. Build APEX Page Components, shared LOVs, Automations, and Search Configurations directly on a Property Graph using SQL queries.

2.7 SQL Developer Web Integration

You can now open SQL Developer Web directly from the SQL Workshop menu in the menu bar. This feature requires ORDS version 23.1, and is configured at the instance level.

For workspaces with one associated schema that is REST-enabled, SQL Developer Web opens in a separate tab. Otherwise, you must select the desired schema from a pop-up dialog. You can only log in to SQL Developer Web with a single schema at a time. If you have a SQL Developer Web window open for a particular schema and then open a second SQL Developer Web window for a different schema, the session for the original schema is invalidated.

2.8 Capture ECID in APEX Webservice Log

You can now pass the Execution Context ID (ECID) to external web services for end-to-end tracing with the Pass ECID application setting. If this attribute is switched on, customers can relate external web service calls to page calls in APEX.

You can overwrite this value in the configuration of a REST Data Source or by using the web service API apex_web_service.set_request_ecid_context. You can use APEX_APPLICATION_INSTALL to set the value during application installation.

2.9 Application Continuity

A new application security attribute, Session State Commit, controls how changes to session and item values and the accompanying commits are handled:
  • End of Request - Changes are deferred to the end of request processing.
  • Immediate - Changes are immediately written and committed.
New applications are set to End of Request, and existing applications to Immediate.

2.10 APEX Administrator Digest

Monitor the health of your instances, workspaces, and schemas with metrics and trend charts in the new APEX Administrator Digest. Reports in the summary dashboard include daily metrics for the previous day:
  • Instance Metrics - Metrics at the instance level, including created workspaces, removed workspaces, and database links.
  • Workspace Metrics - Metrics at the workspace level, including user accounts, distinct users, page events, login attempts, created and removed applications, and web service requests.
  • Schema Metrics - Metrics at the schema level, including database links, aggregations for user scheduler jobs, and information about used versus free space.

2.11 Auto-Provisioning Restrictions

Instance Administrators can now easily manage the auto-provisioning of workspaces with a new UI and API that allows you to define and manage a list of email patterns. Query a block list when auto-provisioning a workspace to restrict email addresses that match the pattern on the block list. Automatic Provisioning must be enabled for this restriction to work.

This functionality adds two new procedures to the APEX_INSTANCE_ADMIN package:
  • ADD_AUTO_PROV_RESTRICTIONS
  • REMOVE_AUTO_PROV_RESTRICTIONS

2.12 New Application Administration API Package

You can now programmatically interface with admin jobs through the new APEX_APPLICATION_ADMIN package. This package contains existing APIs moved from APEX_UTIL, and has the following methods for administrative tasks:
  • (s|g)et_application_alias
  • (s|g)et_application_name
  • (s|g)et_application_status
  • (s|g)et_application_version
  • (s|g)et_authentication_scheme
  • (s|g)et_build_option_status
  • (s|g)et_build_status
  • (s|g)et_global_notification
  • (s|g)et_image_prefix
  • (s|g)et_max_scheduler_jobs
  • (s|g)et_parsing_schema
  • (s|g)et_pass_ecid
  • (s|g)et_proxy_server
  • get_no_proxy_domains

2.13 New Color Picker

There is a new web component-based color picker with JET-compatible color objects. You can create the color picker dynamically and change options at runtime to re-render it. The new color picker replaces the old one in Theme Roller, Page Designer, and Interactive Report/Interactive Grid highlighting dialogs.

2.14 Import and Export in Theme Roller

You can now import and export theme styles directly from Theme Roller in JSON format. Use the Additional Options menu in Theme Roller to import, export, or reset a theme style.

Tip:

The Vita theme and the Redwood Light theme are not compatible. It is not possible to export from one and import into the other.

2.15 Region Display Selector Enhancements

The Region Display Selector now supports:
  • displaying region icons next to titles in Region Display Selector tabs
  • controlling tab selection on page load with Remember Last Selection tab
  • using APEX_REGION.RESET to reset user or session preference for tab selection

2.16 Plug-In Attributes Updates

The item plug-in infrastructure is extended to support 25 attributes, up from 15. The apex_application_page_items dictionary view is extended to show these new attributes.

You can now define custom groups for plug-in attributes, making it easy to group similar plug-in attributes together. You can add custom attribute groups to existing plug-ins by editing the plug-in.

2.17 Improved App Icon Fidelity

When creating an application or changing application icons, APEX now generates two new icon files in Shared Component, Application Static Files. These new icons styles support PWAs for all operating systems, including Windows, macOS, Android, and iOS.

For applications created prior to APEX 23.1, use the Change Icon button in the User Interface Attributes page to regenerate the full suite of icons.

2.18 Translation of Runtime Messages into Icelandic

APEX now supports the translation of runtime messages into Icelandic, extending our language support to 32 languages.

APEX supports the following languages: Arabic, Brazilian Portuguese, Croatian, Czech, Danish, Dutch, Finnish, French, French - Canada, German, Greek, Hebrew, Hungarian, Icelandic, Italian, Japanese, Korean, Norwegian, Polish, Portuguese (Portugal) (pt), Romanian, Russian, Serbian - Cyrillic, Serbian - Latin, Simplified Chinese, Slovak, Slovenian, Spanish, Swedish, Thai, Traditional Chinese, and Turkish.

For more information, see Installing Translated Versions of APEX in Oracle APEX Installation Guide.

2.19 Save and Run Page from Code Editor

You can now run standard pages in Page Designer directly from a code editor dialog without closing it first. Use the new Save and Run Page button in the editor toolbar or the default keyboard shortcut (Alt+F8).

2.20 Context-Sensitive APEX Help

Links to documentation resources in internal applications are updated to redirect to the appropriate book or chapter. This improves the quality of all documentation links from within APEX App Builder, SQL Workshop, and other internal applications.

2.21 Multi-Tenant Authentication

The new Configuration Procedure attribute allows you to use a procedure to dynamically configure authentication at runtime. The authentication procedure runs at least once per session. You can use the procedure to specify the authentication_name, substitutions, and the tenant_id.

2.22 Approvals Component Enhancements

A new due date parameter is now available for tasks.

In Page Designer, Due Date Item is available under Settings. When specified, this value overrides the due date calculated from the associated task definition.

The parameter p_due_date is also available in the CREATE_TASK API.

2.23 JavaScript API Updates

New Functions and Methods

This release contains new functions or methods:
  • actions interface method ariaKeyshortcut
  • apex.pwa namespace functions:
    • getPushSubscription
    • hasPushSubscription
    • subscribePushNotifications
    • unsubscribePushNotifications
  • model interface method getDataOverflow

New Options, Parameters, and Functionality

This release contains new options, parameters, and functionality:
  • apex.message.alert and apex.message.confirm have new options enabling functionality that was previously only available from the Alert and Confirm dynamic actions
  • apex.model.create has new model option trackChanges
  • apex.page.isChanged, used by Warn on Unsaved Changes feature, now logs which item or model is changed when the page is in debug mode

Improved API Descriptions

API descriptions are improved for:
  • apex.model.create options onlyMarkForDelete and identityField, and parameters pMoreData and pDataOverflow
  • model interface Ajax Messages section
  • model interface methods:
    • fetch
    • getTotalRecords
    • indexOf
    • setOption
  • apex.page function warnOnUnsavedChanges
  • apex.pwa various function return values
  • apex.util.applyTemplate fix loop directive example
  • item.displayValueFor pValue parameter
  • menu widget item type definition accelerator property

2.24 JavaScript Library Upgrades

  • CKEditor5 36.0.0
  • cropperjs 1.5.13
  • CSSO 5.0.5
  • DOMPurify 2.4.3
  • FullCalendar 5.11.3
  • JavaScript Extension Toolkit (JET) 14.0.0
  • jQuery 3.6.4
  • MapLibre 2.4.0
  • MarkedJS 4.2.5
  • prism.js 1.29.0
  • Terser 5.16.1