REST Enabled SQL Support

  • Create and maintain References to REST Enabled SQL Instances (Oracle REST Data Services) in Shared Components
  • Use a REST Enabled SQL Service and therefore a remote Oracle database as the Data Source for the following components: Classic Reports, Interactive Reports, CSS Calendar, JET Charts, Tree Region, Toggle Column Report, and Reflow Table Report
  • Execute PL/SQL page processes on a remote Oracle database
  • Use the APEX_EXEC PL/SQL package to execute SQL Queries or PL/SQL blocks on a remote databasel, from within your custom PL/SQL code.
  • Caching for REST Enabled SQL: Session based, user based or for all users and sessions. Cache invalidation can be specified in minutes or with a DBMS_SCHEDULER calendaring syntax.

REST Service Consumption

  • Create and maintain references to REST services (Web Source Modules) within Shared Components
  • Leverage Oracle REST Data Services features like server-side filtering or pagination to fetch only required data from the REST service
  • Use Simple HTTP for generic REST services, JSON or XML data feeds
  • Have Application Express automatically discover and maintain the Data Profile; no manual SQL or PL/SQL coding is required for JSON or XML parsing
  • Use Web Sources as the data source for the following components: Classic Reports, Interactive Reports, CSS Calendar, JET Charts, Tree Region, Toggle Column Report, and Reflow Table Report
  • Use the APEX_EXEC PL/SQL package in order to invoke REST services from within custom PL/SQL code in Plug-Ins or page processes.
  • Caching for REST Services: Session based, user based or for all users and sessions. Cache invalidation can be specified in minutes or with a DBMS_SCHEDULER calendaring syntax.
  • Ability to specify a "Post Processing" SQL to post-process the REST Service response (e.g. allow joining to a local table)

New Create App Wizard

  • New and improved user experience for creating applications
  • Simpler wizards for creating pages 
  • Add "features" to applications. Features include: Activity Reporting, Access Control, Feedback, Configuration Options, Theme Selection and About Page
  • Customize user interface options such as Theme Style, application icon and page icons
  • Select lookup display values for foreign-key based columns
  • Leverage existing applications or UI defaults to default labels and form display types.
  • Select drill down report columns to declaratively link data in one report with another
  • Application blueprints: You can create applications by pointing and clicking, by pasting application blueprints, or a combination of both
  • Modify application attribute defaults: Control labels and form controls by pointing and clicking or via JSON Application Defaults

JavaScript API Documentation

  • Preview of JavaScript API documentation

Social Login

  • New authentication scheme Social Login
  • Supports Google, Facebook, OpenID Connect, OAuth2
  • New authentication scheme attribute "Switch in Session" for schemes that can be set in the current session.

JET Charts

  • Pyramid
  • Box Plot ( aka Box & Whisker )
  • Gantt Chart
  • New Chart-Level Attributes
    • Fill Gaps in Chart Data - Yes/No (defaults to Yes), applying data densification logic to multi-series charts
    • Sort Order - Select List with 4 options: Value-Ascending, Value-Descending, Label-Ascending, Label-Descending (defaults to Label-Ascending). Only available when 'Fill Gaps in Chart Data' set to Yes, and chart is multi-series.
  • New Series-Level Attributes
    • Display As - optional display of label on a Pie/Donut chart (default is Percentage for existing charts, but Label for new charts created via the Create Chart Page wizard)
    • Value Aggregation - for Table/View-based chart source type only, we now support the ability to declaratively select an aggregate function for use by your JET charts
  • Sample Charts app
    • Revised with new examples for each new chart type
    • New 'Data Densification' page to demonstrate the new chart-level features 'Fill Gaps in Chart Data' and 'Sort Order'

    APEX Spotlight Search

    • Provides quick navigation and unified search experience across APEX
    • Activate by clicking search button from header, or using the keyboard shortcut Ctrl + Quote
    • You can navigate to most screens within APEX Builder
    • Quickly jump across applications and pages
    • Also works in Page Designer – can focus on page components

    Page Designer Improvements

    • Property Editor
      • Updated UI to improve usability
      • Removed show common / show all, and collapse all / expand all functionality
      • When a property has focus, the group becomes highlighted 
      • Improved 'Go to group' functionality
      • Addition of ‘Anchor’ attribute for link property types
    • Sticky Filters
      • Filters can now be pinned so you can filter on something and click across to other components maintaining the filter

    Interactive Grid Enhancements

    • Copy Down support and range selection; see new Actions > Selection sub menu (Fill and Clear)
    • Copy to Clipboard (for row or cell range selections)
    • User settable report setting Actions > Format > Stretch Column Widths and column attribute Stretch provides declarative control over how the column width will stretch to fill available space or not.
    • New Interactive Grid Dynamic Action events are added: Mode Change, Page Change, Report Change, Save

    Interactive Report Enhancements

    • JET Chart integration
      • Supports the creation of Bar, Pie, Line, and Line with Area charts
      • New Orientation attribute
    • Automatic conversion of existing IR Charts to JET

    Websheet Enhancements

  • JET Chart integration
    • Supports the creation of Bar, Pie, Line, and Line with Area charts
    • New Orientation attribute
  • Automatic conversion of existing IR Charts to JET
  • Tree Region Enhancements

    • The Advanced: JavaScript Initialization Code attribute is supported. Although the attribute was added in 5.1 it did not do anything. So it is as if it is a new attribute in 18.1. This plus the jsdoc makes it much easier to customize the Tree region. Something that will be needed now that jsTree is removed.
    • Added Default Icon attribute. Allow Icon Type to be empty (without forcing a-Icon).
    • Improved Page Designer help text for all attributes
    • Support Dynamic Action Event: Selection Change [Tree].
    • Advanced Config option (nodeSelector) to support checkbox selection.
    • Tree region now supports the apex.region API.
    • Copy selection to clipboard.

    Developer Toolbar Improvements

    • When there is a JavaScript error on the page an indicator is added to the dev toolbar
    • New feature to see page performance timing. Menu Page Info > Show Page Timing. Show/Hide Layout Columns moved to Page Info menu.

    Advisor Improvements

    • New Accessibility checks to check your apps for common accessibility issues
    • New Performance check for inclusion of compatibility JavaScript

    Item Type Improvements

    • New 'Text with Autocomplete' item type using Oracle JET
    • Responsive Rich Text editor - automatically adjusts to the region width.

    Oracle JET and jQuery Library Upgrades

    • JET 4.2.0
    • jQuery 3.1.1
    • jQuery UI 1.12.0
    • jsTree 3rd party library is removed because it is incompatible with new versions. Tree regions will be converted to use the APEX treeView widget.

    Universal Theme + User Interface Enhancements

    • Font APEX 2 is now available. It contains two sets of icons: Small and Large
      • Small Icons are 16x16. Large icons are 32x32.
      • There are several new directional and form control icons.
      • Some templates (cards, media list, etc) will automatically pick up the correct icon size based on template options.
    • Mobile UI Optimizations:
      • New "Top Navigation Tabs" template that can be used when the navigation position is set to top. This new template provides a simplified tabs-like UI and on small screens is automatically positioned near the bottom of the screen.
      • Standard Region and Carousel Region templates now support placing an icon in the region header.
      • Tree Navigation Menu items can be colored using Attribute
    • General Enhancements
      • Several templates, template options, and styles have been tweaked and polished.
      • Required asterisk for form items is now consistent across label templates
      • Carousel regions now support touch swipes
      • Cards have a new "Block" template option with more color.

    List View Region

    • The List View region from the deprecated mobile UI is now supported on desktop UI.
    • Fixed issue with nested list back button text not being localized (desktop only)
    • Refresh works for nested lists (desktop only)
    • Desktop changes/limitations:
      • CSS class names have changed so css customizations may need to be updated.
      • jQuery Mobile theme related options have been removed
      • Nested lists do not create jQuery Mobile pages so related widget options are not supported

    Column Toggle Report Region

    • The Column Toggle Report region from the deprecated mobile UI is supported on desktop UI.
    • Now supports refresh and page items to submit.
    • Now supports the Messages: When No Data Found attribute (desktop only).
    • Added Column Button Text attribute to customize the button that opens the column popup
    • Accessible table markup and Use As Row Header attribute.
    • Desktop changes/limitations:
      • CSS class names have changed so css customizations may need to be updated.
      • jQuery Mobile theme related options have been removed.

    Reflow Report Region

    • The Reflow Report region from the deprecated mobile UI is supported on desktop UI.
    • Now supports refresh and page items to submit.
    • Now supports the Messages: When No Data Found attribute (desktop only).
    • Accessible table markup and Use As Row Header attribute.
    • Desktop changes/limitations:
      • CSS class names have changed so css customizations may need to be updated.
      • jQuery Mobile theme related options have been removed.

    General Mobile Improvements

    • Support touch for jQuery UI mouse interactions including draggable, droppable, and sortable. This can be seen in various places like page designer drag and drop, and adjusting splitter positions.
    • Expose touch events through Dynamic Actions for all apps (no longer just Mobile-based User Interface)

    New Application Shared Components

    • Application Access Control: Declarative app role management that can replace the need to create custom tables
    • Email Templates: Highly usable starter template and APIs to ease email integration
    • Application Settings: Declarative application settings set via an API or via the builder that can be used to control application feature function)

    Additions to SQL Workshop

    • New “Quick SQL” utility: Provides a quick way to generate the SQL to create a relational data model from indented text
    • New Sample Datasets utility: Use these sample data sets to practice your APEX app dev skills

    Text message substitutions

    • For a given text message, for example MY_MESSAGE, you can now use MY_MESSAGE or v('APP_TEXT$MY_MESSAGE') to retrieve the message text.
    • Use APP_TEXT$MY_MESSAGE$XX to return the translation text for language XX (replace XX with DE, FR, JA, ...)
    • Same syntax is supported on the client via the apex.util.applyTemplate API

    Accessibility Improvements

    • New Advisor Accessibility checks to check your apps for common accessibility issues
    • Removal of native use of accessibility modes, (we no longer need to use a mode to build for accessibility)
    • Updated Autocomplete item type offers greatly improved accessibility support
    • Numerous bug fixes improving overall framework accessibility