Thursday, May 02, 2013

Goodies - APEX 4.2.2 Sample and Packaged Apps

After reading Michael Hichwa's blog post about APEX 4.2.2 where he mentions the patch set includes a major upgrade of all 18 productivity and all 16 database sample applications, I decided to install all of them again and check them out.



Those apps are a great way to see how to do certain things and see working applications behind the scenes. The packaged applications you first have to unlock before you can see the pages and source.

As APEX is meta-data driven you can also query for specific information.

I was for example interested in knowing which apps where using the Responsive Design Theme (Theme 25). Following query shows you per application which theme is used.
As you can see the sample apps are using Blue Responsive (theme 25) and most of the packaged apps are using the Cloud Apps theme. As those also have a mobile version, you can see the JQuery Mobile Smartphone theme is used there too.

select a.application_name, a.alias, a.compatibility_mode, a.pages, a.installation_scripts,
       listagg(t.theme_number, ',') within group (order by t.theme_number) as theme_numbers,
       listagg(t.theme_name, ',') within group (order by t.theme_name) as theme_names
  from apex_applications a, apex_application_themes t
 where a.application_id = t.application_id
group by a.application_name, a.alias, a.compatibility_mode, a.pages, a.installation_scripts   
order by 1

Here's the result:


The sample and packaged apps are not only nice examples (and useful apps), but they also contain some plugins that are not on the official Oracle Plugins page.

There are 21 plugins used in the sample and packaged apps. But two I believe are the same (CSS Bar Chart vs CSS Bar Charts and Slider vs APEX Slider), so that brings the total to 19 plugins to checkout!
And there are some really nice ones, like the Gantt Chart (completely in css, so works on the iPad) :


and Flot Pie Chart (build in JavaScript and CSS) :


Running following query shows you all the plugins in your workspace and in which application it was used:

select p.plugin_type, p.display_name, p.name,
       count(a.application_name) as nbr_app_using_plugin,
       listagg(a.application_name, ',') within group (order by a.application_name) as applications
from apex_appl_plugins p, apex_applications a
where p.application_id = a.application_id
group by p.plugin_type, p.display_name, p.name
order by 1,2

Here's the result:


I would definitely recommend having a look at the apps, the APEX team did a nice job on those.

5 comments:

Stew said...

Dimitri,

Thanks for the listings and queries, this will be a great help.

I was wondering if you played with the Use Case packaged app at all? I kept getting SSP violations when I try to set the status for a use case from the pop-up window.

See you at ODTUG in New Orleans?

- Stew

Dimitri Gielis said...

Hi Stew,

Yes I'll be at ODTUG this year.

See you there,
Dimitri

Johnnie said...

Is there a way to install all of the packaged apps at once? I installed one through the apps but I hope there is a script that will install all of them?
Thanks
--Johnnie

Dimitri Gielis said...

I don't think you can install all at once through the wizards in APEX... maybe through SQL*Plus it might be faster to run the scripts manually of the apps.

Unknown said...

Hi Dimitri,

Following the hints for the "hidden" plugins, I was trying out the Gantt Chart One, but I'm experiencing a weird behaviour when running it on Firefox 17.0.1.
The grid (vertical and horizontal lines) only gets rendered when I scroll down the page...
It works fine on IE9 though.

I appreciate that this is an unsupported plugin and that you have "nothing to do with it", but I was curious if you came across such behavior or have any idea of might be happening.

Keep up the good work!

Cheers,
Pedro.