Wednesday, July 21, 2010

Webinar – Oracle Application Express Plug-ins

I’ll be hosting another free webinar next week titled Oracle Application Express Plug-ins. The webinar will run on Wednesday, July 28th from 1pm to 2pm EDT. Click here to register.


If you use Oracle Application Express then you have probably heard of "plug-ins" by now. But you may still have some unanswered questions, such as:

  • What exactly is a plug-in?
  • What can plug-ins do for me?
  • What plug-ins are available?
  • How do I install and use plug-ins?

These questions and more will be answered during this webinar. This will be a high level introduction to plug-ins during which we will demonstrate how plug-ins can save your organization time and money by easing development efforts. Attendees will receive a copy of the next SkillBuilders plug-in – one week before its general release to the public.


Anyone interested in Oracle Application Express.



Monday, July 19, 2010

Video - JavaScript for PL/SQL Developers

While at ODTUG this year, I had the pleasure of presenting three different times. The one presentation I did on my own was “JavaScript in APEX – A Lesson for the PL/SQL Developer”. The presentation was inspired by my experiences learning the language and later teaching it to others with similar backgrounds.

I almost called the presentation “JavaScript, the Lost Lesson” because that seems to be the reality for so many APEX developers. When you come from the database world, JavaScript can seem so awkward and difficult. Believe it or not, it’s not that bad! In fact, as a database developer, you are already have a good grasp on some of the most important concepts – you just don’t know it yet... Have a look at the abstract, and if you are interested, watch the recording.


Oracle Application Express developers often have strong backgrounds in SQL and PL/SQL, but JavaScript is another story. However, JavaScript is a very important part of any well-built Web 2.0 application. In this session, explore JavaScript through a series of analogies, 9 in total, that will relate important concepts in the language back to what you already know in the database world.


Click here to view this video, along with various other recordings, at

Look for JavaScript in APEX – A Lesson for the PL/SQL Developer.

Friday, July 16, 2010

New Plug-in in the Wild! SkillBuilders Save Before Exit

Back in 2008, I blogged about how alert users to save their work before leaving a page. Although that was some time ago, the article is still popular to this day. Even while presenting at Kaleidoscope a couple weeks ago, someone asked if we would be creating a plug-in to make this functionality easier… While uncertain at the time, the answer is pretty clear now: Why yes, yes we will ;)

Click here to view/download the plug-in!


Have you ever filled out a form and accidently left the page without saving your work? It is actually quite easy to do. Thankfully, browsers have features to help prevent this from happening. The problem, however, is that taking advantage of those features can be quite difficult - until now.

The SkillBuilders Save Before Exit dynamic action plug-in allows you to notify your users if they leave a page without saving their work. Simply install the plug-in and add it to your page!

Features at a glance

  1. Activates when a user makes a change to an item on the page.
  2. Warning message displayed if user tries to leave page without clicking a button. Includes: Closing the browser, clicking the back button, clicking a link, etc.

Monday, July 12, 2010


I remember when this tweet popped up back in December of 2009:

APEX Poll: Do you like the existing %null% behavior of select lists? Do you use it in your applications?

The tweet was hinting that one of the oddities that had existed in APEX for quite a while may soon be a thing of the past. If you’re not sure as to what exactly this tweet was referring, have a look at either of these posts:

The fact was that if you created an item that used a List of Values (LOV) and you set the Display Null Value option to Yes, but didn’t specify a Null Return Value – in other words you left the field NULL – then a default value of “%null%” was supplied for you. The problem was, as you’ve probably already concluded, that “%null%'” != NULL.

Many people just accepted this as “the way it works” and then figured out a workaround or adopted one of many generic solutions to fix the problem. However, this is no longer necessary as it’s been fixed in APEX 4.0. Now if you use the Display Null Value option with an LOV and don’t specify a Null Return Value, then NULL is what you will get. It’s a beautiful thing – NULL = NULL! You can’t see it, but I’m doing my happy dance ;)

For those of you worried about backward compatibility, the new feature was implemented in such a way that in will only affect things going forward. Also, if you look under “Home > Application Builder > Application 999 > Utilities > Upgrade Application”, you’ll see an option to convert an application in bulk: “Remove %null% in LOV Null Return Value of Page Items”.

Thursday, July 8, 2010

Kaleidoscope – A look back and then ahead

The first time I went to ODTUG Kaleidoscope was 2008 in New Orleans. To meet the many people that I’d communicated with for so long and some cases aspired to, well, that for me was a real treat. But after missing last year’s conference (due to budget cuts), I’d nearly forgotten the feeling.

I’m happy to say this year’s Kaleidoscope did not disappoint! It was great to see some familiar faces and some new ones as well. The coverage of APEX is second to none and allows for an impressive amount of knowledge transfer. Can’t wait to go again next year…

It’s hard not to get excited about the new features released in APEX 4. I was joking with Patrick Wolf about how APEX is getting closer to Forms – but in a good way ;)

Forms has a very rich client side event system that allowed developers to easily create highly interactive applications. It’s as though you can add “triggers” to just about any end user action – even if just to call an anonymous PL/SQL block.

In the web world, a similar client side event system has existed for some time - perhaps even more robust than that of Forms. But to take advantage of it you had to learn some other languages: JavaScript, HTML, and CSS.

With APEX 4.0 that’s no longer “the rule”. Dynamic Actions have put a declarative framework on top of the event system used in web development and the learning curve to create interactive applications is amazingly small. Knowledge of JavaScript is not yet obsolete, but perhaps the APEX team is not quite finished…

And then there’s the new plug-in architecture. The community now has a stake in the future success of APEX like never before. Keep an eye on plug-ins… As the the community migrates APEX systems over to 4.0, the number of plug-ins will grow and they will mature over time. Hopefully when you have a need, there’ll be a plug-in for that!

Have a look at some of the plug-ins being added to

I used to write complex blog posts that would walk readers through a series of steps (which often included lots of code) to achieve a task. Many readers wanted the end result, but didn’t want to have do deal with the code – plug-ins are making that possible. And for the others that did want to look at the code, you’re more than welcome to open the plug-in up and take a look “under the hood” so to speak.

In short, lots of changes -  all of them great. I’m already looking forward to APEXposed!

Wednesday, July 7, 2010

New Plug-in in the Wild!

I’m happy to announce the first early adopters release of the SkillBuilders Schedule item plug-in. If you attended the ODTUG Kaleidoscope conference, then you had two changes to see the plug-in demonstrated live: during the Sunday Symposium and then again in the Plug-in Showcase. Since then I’ve added custom time pickers and simplified jQuery UI skinning (now one small change in the items configuration settings provides an entirely different look and feel).

Click here to view/download the plug-in!

If you didn’t get to attend the conference here’s the introduction:

Event scheduling is a common task that developers repeatedly face when creating applications. The types of events can vary greatly as can their configuration options. Some events are simple, occurring only once while others are more complex and can repeat indefinitely.

Developers may choose to save time by supporting only the types of schedules that the requirements dictate. This often results in “one-off” configurations with custom logic that cannot be reused very easily. The SkillBuilders Schedule item plug-in was designed to greatly simplify and standardize event scheduling in APEX applications.

The SkillBuilders Schedule item plug-in supports single occurrence events as well as those that recur daily, weekly, monthly, and yearly. Its options can easily be customized via a declarative interface to meet specific requirements and its UI has been skinned using jQuery UI themes so customizing the look and feel to match your APEX theme is as simple as changing one word in the item’s configuration settings.

Anyone that has worked with events in the past is aware that it all comes down to dates. To that end, the SkillBuilders Schedule item plug-in comes with a PL/SQL package based API that can be used for various functionality – even getting the dates over which an event will occur.

Look out for more plug-ins coming soon!