As promised, I’m starting a series of posts on what I feel are “hidden gems” of APEX 5.0. Since it’s still in Early Adopter (you can try it here now!), there is the chance that these features may not exist in the final release, or they may not function exactly as described, though we’re far enough along that I don’t expect major changes.
Now that the standard caveat is out of the way, let’s look at our first hidden gem!
One of the marquee features of APEX 5.0 is the Page Designer, which replaces the Tree View (which was, I believe, only introduced in 4.0). Page Designer is what we call a “marquee feature”–it’s one of the big selling points for APEX 5.0, and rightfully so. But hidden in the Page Designer is a small feature which was so unexpected and so powerful that I thought it was a bug when I first encountered it.
You can now change the type of a region after creation.
This may not sound like much at first, but it is new. Component view (even in 5.0) and the old tree view only allow you to make minor changes to a region’s type. If you have a static region, you can change it from HTML to PL/SQL and back, but that’s it. List regions will always be list regions; interactive reports can only be interactive reports. And so on. But when you’re editing a region in Page Designer, you can change its type entirely.
So if you have, say, an Interactive Report and you want to make a calendar with the same query, you can duplicate the region and change its type to Calendar. The SQL Source remains; you just need to set the appropriate attributes. In previous versions of APEX, and in component view still, you’d have to edit the existing region and copy out the region source, then create a new region of the correct type, paste in the source, and then set the attributes. That’s certainly doable, but it’s a much more cumbersome process.
This feature is one of my favorite new abilities in APEX 5.0, and one I’ve used frequently as we’ve been going through and updating all of the packaged applications. I honestly don’t know if it was an intentional change, but it is certainly a welcome one.