23Nov
By: Lauren Prezby On: November 23, 2022 In: APEX Basics, New Release Comments: 0

October was a big month for APEX. There are so many exciting things happening in the APEX-verse right now. Between a new release and a highlight from Larry himself at Oracle CloudWorld, it felt like a great time to be in the #orclapex space!

But what kind of changes did they have in store for us with this release? I reached out to our talented team and asked them to highlight a few of the new features they find the most interesting.

Special thanks to the Oracle Team for any videos they have created on these features. We’ve linked to their YouTube when available.

Let me preface this by saying, these top features are not listed in any order.
 

1.

SEARCH CONFIGURATION - Quick win for clients wanting to search their apps

“One of my favorite features in Oracle APEX 22.2 is the new Search Region associated with the Search Configurations available in the shared components. Our clients often ask for the ability to search in their applications, across multiple datasets, and this generally requires a lot of code. That time is now over, the Search Configuration allows you to define your data sources, search across multiple at once and guess what, it also supports Oracle Text! Then the Search Region will display the results nicely and it supports lazy loading, sorting, pagination, and more. It’s simply a big gift for the Oracle APEX devs.” 

From the Oracle APEX Team

Check out Louis' blog: Oracle APEX tips and tricks

2.

LANDMARK SUPPORT FOR REGIONS - Make apps more accessible and inclusive

I love that APEX 22.2 now allows us to make our apps more accessible and inclusive.  Adding a landmark label for the region is quick, easy, and increases the reach of your app to a wider audience.  The context that landmarks provide improves the user experience by making it easier for people to navigate the page and understand the content in each region.  Disabilities can be permanent, temporary, or due to specific situation, but accessibility allows individuals to transcend their disability.  As an analyst and developer who faces challenges with accessibility daily, I know that inclusive application design enriches the lives of those around you. 

From the Oracle APEX Team

For a deeper dive into Accessibility in APEX, you may also be interested in our recent APEX Instant Tips on the topic. 

3.

WEB CREDENTIALS SUPPORT FOR APEX- LDAP

If you have ever created a wrapped package or encrypted table for the sole purpose of storing a web credential, then you should be happy with this new feature of APEX 22.2.  The newest addition to the APEX_LDAP API is a parameter you can use to store these credentials securely. 

4.

INVOKE API PROCESS TYPE

A common APEX best practice is to put your PL/SQL code into database functions, procedures, and packages. Doing so provides benefits in performance and code maintainability. The new Invoke API process type provides a declarative way to invoke a procedure or function stored in the database. No longer must the developer write the PL/SQL code necessary to execute these processes. The developer will be able to choose the procedure or function. APEX will determine the parameters of the procedure/function and automatically try to map them to existing page items or Interactive Grid columns. Parameters can be populated by various value types; including Static Value, Item Value, Expression, API Default, and Null. Output of a function or parameters can be stored in page items. The Invoke API process type will definitely be a time saver for the APEX developer when calling database procedures and functions.

From the Oracle APEX Team

5.

DYNAMIC EXECUTION TYPES - Debounce or Throttle the Dynamic Action

One of my fave new features is the Dynamic Action > Execution > Type. To be even more specific, my favorite *feature* of this new feature is that it has great help. The help informs developers about something they may have never considered–the need to debounce or throttle the Dynamic Action. Check out it out by clicking help on “Dynamic Action > Execution > Type.”

6.

EXTENDED SUPPORT FOR TEMPLATE DIRECTIVES

This update only made it to the ‘Additional Updates and Enhancements’ section of the Oracle’s What’s New in APEX 22.2 page, but it’s one of my favorites! 

Until now, only Card and Interactive Grid regions have supported Template Directives, the ability to apply client-side directives to control the formatting of your data returned from SQL. 

Templates directives are now supported in both Classic Reports as well as Interactive Reports.

So if ever you find yourself writing things like this in your queries: 

SELECT product_name,
category,
list_price,
CASE product_avail
WHEN 'Y' THEN
'fa-check-square-o'
ELSE
'fa-square-o'
END product_avail,
CASE WHEN product_description is not null THEN
description
ELSE
'No description'
END product_description
FROM demo_product_info

You can handle this completely within the HTML Expression attribute of your report columns using Template Directives.

This is huge, will make your queries a lot simpler and more performant, and quite possibly, in many cases, do away with the need to create custom report templates in Shared Components.  

For details about Template Directives and how to use them, check out the official documentation here or Jon Dixon’s awesome post on the topic here. 

Using Template Directives

Using Template Directives, your query is much cleaner, and likely even more performant.

SELECT product_name,
category,
list_price,
product_avail,
product_description 
FROM demo_product_info
CASE statement Template Directive
Evaluating null column with Template Directives

7.

DYNAMIC ACTION NAMING - Better Developer Experience with Dynamic Actions

The APEX team keeps giving us more and more event triggers to use declaratively in our apps. We covered some of the more recent ones in our review of APEX 21.2.  

But one very simple feature for dynamic actions has been missing for a very long time, and we finally got it! Now, while this will not translate into any additional ooohs and aaaaaahs from your users (I guarantee you they won’t care about it one bit), it will make for a much better developer experience. 

The ability to name and better identify your dynamic actions in the Page Designer. 

See the before and after 22.2 screenshots and appreciate the improvement.

Can I get an AMEN?

From the Oracle APEX Team

8.

DECLARATIVE META TAGS FOR PUBLIC PAGES - Better SEO and more engaging previews

My pre-publication steps for any content I create always includes a meta description for SEO, and a pretty preview image to make the link I share more compelling (hopefully).

Until version 22.2, if you wanted to include any meta tags for your pages, you’d have to work with custom page templates and manually tweak the headers to include them.

Now, we have declarative meta tags for public pages, allowing us to optimize for SEO and include pretty preview images when sharing links.

For Twitter cards, you need to include the 4 meta tags:

twitter:card, twitter:image, twitter:title, twitter:description. Full documentation can be found here, but know that you can add these meta tags even if they do not appear in the APEX select list.

Extra reading

9.

TEXT FIELD WITH AUTOCOMPLETE REIMAGINED AS A NATIVE APEX COMPONENT

Giving developers more control over this item now makes it a good option to use instead of Popup LOV or the Select List items. It’s something in-between these two and the Text Field item. Depending on the use case, especially when there is a large number of results that should be available to select from, the Text Field with Autocomplete item, with ‘Lazy Loading‘ turned on can decrease the loading time and only display as many results as needed and only when needed. The item itself is simpler that the Popup LOV and doesn’t display additional popup which I personally prefer.

Icon support for Text with Autocomplete

The Autocomplete item now supports icons for the search results. That could be enabled if you specify a LOV through Shared Components, where you map a specific column of your query as the icon CSS class (for example the Font Awesome icons, like fa-bicycle).

Extra reading

Plamen dives deeper into this reimagined component in his blog here.

From the Oracle APEX Team

10.

DEVICE GEOLOCATION

Get Current Position Dynamic Action

The new Get Current Position dynamic action fetches the device current location and returns a JavaScript GeoJSON object or Latitude and Longitude to page items, or the full Geolocation object to a custom JavaScript function.

Definitely a big step towards making APEX more and more attractive for mobile applications development. This out-of-the-box features will save some time and custom coding to get the geographic coordinates of user’s device. Few important points to note on this feature:

  • It can provide the Location in three different formats – Latitude/Longitude, JSON and Javascript Geolocation Object
  • It has two levels of Accuracy – Default and High Accuracy. My observation is that Enable High Accuracy turned OFF produces still a great result and will be sufficient in 99% of the cases, saving some power from your device.
  • The JSON format returned is not ready to use in Map Layer using GeoJSON directly. It will not display the desired point on the map if you don’t format it additionally.

Security and granting permission

For security reasons, your device will ask you for permission before it can use your location. Depending on the device or browser, you will see messages similar to the one below:

From the Oracle APEX Team

Did we miss one? Is there something that you find beneficial that we need to highlight? Please let us know. 

Also, make sure to check out the Oracle APEX team’s videos collection and feature highlight videos.

Oracle APEX 22.2
Share this:
Share

Leave reply:

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