Differences between APEX 20.1 and 19.2

Oracle APEX 20.1 was finally released on April 23rd 2020 !

As usual, once the download is available, I take a look at the View and API Layer, to see what’s changed there.

My personal highlights are the new views APEX_APPL_EMAIL_TEMPLATES and APEX_PATCHES. In the API department we finally got an APEX_IG package (Stefan has more details in his post) and new instance parameters for APEX_INSTANCE_ADMIN.
Small but beautiful: APEX_PAGE.get_url has been enhanced with p_plain_url to avoid getting a Javascript stub.

Below you can see what has been changed in APEX Views and APEX PL/SQL API’s from version 19.2 to 20.1.

Views

APEX_WORKSPACES
+ session_timeout_warn_seconds – The time in seconds before a session times out, to display a warning

APEX_APPLICATIONS
+ friendly_url – Determines whether URLs should be friendlier by using application and page alias
+ authorize_batch_job – Determines if the authorization schemes should be checked when running backround job (i.e subscription )
+ session_timeout_warn_seconds – The time in seconds before a session times out, to display a warning

APEX_APPLICATION_SUBSTITUTIONS
= rebuilt, now using UNPIVOT

APEX_APPL_PAGE_FACETS
+ lov_cascade_parent_facet – Identifies the cascading LOV parent facet
+ lov_cascade_parent_column – Identifies the cascading LOV parent column
+ lov_cascade_parent_required – Yes or No, identifies if the parent facet has to contain a value to display the LOV
+ sort_by_top_counts – Identifies whether the facet values with the highest count are displayed first
+ depending_on_id – Identifies a facet that is used to check if the current facet gets displayed
+ depending_on_condition_type – Identifies a condition that must be met in order for this facet to be displayed
+ depending_on_expression – Identifies the facet depending on condition

APEX_APPLICATION_RPT_QRY_STMTS – Identifies inidividual SQL statements, which are part of a report quert
+ report_query_id – ID of the report query

APEX_APPLICATION_PAGE_IR
+ download_auth_scheme – Authorization scheme to restrict who can download
+ download_auth_scheme_id – Identifies the internal code of DOWNLOAD_AUTH_SCHEME

APEX_APPLICATION_PAGE_IR_RPT
+ app_tenant_id – For non-default report settings, application tenant ID associated with this report

APEX_APPLICATION_PAGE_IR_SUB – Identifies subscriptions scheduled in saved reports for an interactive report
+ session_id – The cloned session ID of the subscription to reference session state

APEX_APPL_PAGE_IGS
+ download_auth_scheme – Authorization scheme to restrict who can download
+ download_auth_scheme_id – Identifies the internal code of DOWNLOAD_AUTH_SCHEME

APEX_APPL_PAGE_IG_RPTS
+ app_tenant_id – For non-default report settings, application tenant ID associated with this report

new: APEX_APPL_EMAIL_TEMPLATES – Stores the meta data for the email templates of an application

APEX_USAGE_METRICS – Usage metrics for an instance
+ last_hr – Value for the last hour

new: APEX_PATCHES – Identifies Oracle Application Express patches installed on the instance for the current version

new: APEX_SCHEDULER_JOBS – APEX internal scheduler jobs, e.g. for the mail queue

API’s

APEX_APPLICATION

  • g_friendly_url
  • g_session_timeout_warning_sec
    o js_message
    <> p_app_id is now varchar2, instead of number

APEX_AUTHENTICATION

  • persistent_cookies_enabled – Return whether persistent cookies are enabled on the instance. Instance administrators can control this value with the parameter WORKSPACE_NAME_USER_COOKIE
  • callback, callback2
    • scope
    • realmID
  • saml_callback
    • SAMLRequest – Request from the IP to APEX (e.g. logout)
    • saml_metadata – Emit the SAML metadata for the given application or for the APEX instance

APEX_DATA_PARSER

  • parse, discover
    • p_xml_namespace – namespace information to parse XML responses

APEX_DEBUG

  • enter
    • p_name14, p_value14

APEX_EXEC

  • new subtype t_data_type
  • type t_value
    • binary_number_value
  • type t_column
    • bind_variable_name
    • is_binary_number
  • new constants
    • c_search_contains_instr
    • c_search_contains_like
    • c_search_starts_with
    • c_search_ends_with
    • c_search_like
    • c_data_type_binary_number
  • type t_filter
    • search_operator
  • open_query_context
    • p_supports_binary_number
  • new set_value for binary_double
  • new get_binary_number
  • new add_parameter for binary_double
  • new get_parameter_binary_number
  • add_filter
    • p_search_operator

new: APEX_IG – similar interfaces as APEX_IR

APEX_INSTANCE_ADMIN
new Instance Parameters

  • CSV_DOWNLOAD_ESCAPE_FORMULAS
  • CSV_DOWNLOAD_WITH_BOM_ENABLED
  • IGNORED_FRIENDLY_URL_PARAMETERS
  • MAX_APPLICATION_BACKUPS
  • MAX_LOGIN_FAILURES
  • SESSION_TIMEOUT_WARNING_SEC
  • PASSWORD_NOT_LIKE_USERNAME
  • PASSWORD_NO_LIKE_WORDS
  • PASSWORD_NOT_LIKE_WS_NAME
  • PASSWORD_ONE_ALPHA
  • PASSWORD_ONE_LOWER_CASE
  • PASSWORD_ONE_NUMERIC
  • PASSWORD_ONE_PUNCTUATION
  • PASSWORD_ONE_UPPER_CASE
  • REQUIRE_OUT_HTTPS
  • REQUIRE_OUT_LDAPS
  • RESTRICT_DEV_HEADER
  • SAMESITE_COOKIE
  • SERVICE_ADMIN_PASSWORD_MIN_LENGTH
  • SERVICE_ADMIN_PASSWORD_NEW_DIFFERS_BY
  • SERVICE_ADMIN_PASSWORD_ONE_ALPHA
  • SERVICE_ADMIN_PASSWORD_ONE_NUMERIC
  • SERVICE_ADMIN_PASSWORD_ONE_PUNCTUATION
  • SERVICE_ADMIN_PASSWORD_ONE_UPPER_CASE
  • SERVICE_ADMIN_PASSWORD_ONE_LOWER_CASE
  • SERVICE_ADMIN_PASSWORD_NOT_LIKE_USERNAME
  • SERVICE_ADMIN_PASSWORD_NOT_LIKE_WS_NAME
  • SERVICE_ADMIN_PASSWORD_NOT_LIKE_WORDS
  • UPGRADE_DEFERRED
  • WORKSPACE_NAME_USER_COOKIE

APEX_JSON

  • initialize_clob_output
    • p_preserve
  • get_clob_output
    • p_free

new: APEX_LOV – introduced in APEX 19.2 – no documentation, yet

APEX_PAGE

  • get_url
    • p_x01
    • p_hash
    • p_triggering_element
    • p_plain_url – to omit unecessary JS code

APEX_PLUGIN

  • type t_item
    • shared_lov_id

APEX_PLUGIN_UTIL

  • type t_bind
    • name is now varchar2(128) instead of 30

APEX_REGION

  • open_query_context
    • p_outer_sql
  • new clear
  • new reset

APEX_SESSION

  • emit_timeouts
  • set_tenant_id

new APEX_STRING_UTIL

APEX_THEME

  • set_session_style_css
    • p_page_css_classes

APEX_UTIL

  • host_url
    • new option APEX_PATH to include script name in url

APEX_WEB_SERVICE

  • oauth_authenticate_credential – successor of deprecated oauth_authenticate
  • oauth_authenticate – deprecated

One thought on “Differences between APEX 20.1 and 19.2

  1. You are using the productive ORDS 19.4 on Tomcat? Write that it has problems with stability?

Leave a Reply

Your email address will not be published. Required fields are marked *