Announcing our new Resource Scheduling plug-in for Oracle APEX

We’ve been busy over the past 2 years working on several commercial region plug-ins for Oracle APEX. The first one off the production line is a resource scheduling plug-in. Using this plug-in you can easily manage your scheduling needs using a variety of scheduling views, with the most notable being the timeline and resource views in combination with recurring event support. The plug-in is built on top of the DHTMLX Scheduler Pro, which has a proven track record over many years.


YouTube video


Let’s dive into some of the features:

Multiple Views

Resource view: manage all your daily events grouped by resourcesTimeline view: manage all your events grouped by resources in a hierarchical tree view with expand/collapse capabilityWeek view: manage all your weekly events Year view: see all your events in a yearly summary

Month View: see all your events for the month at one time

Create & Move events via Drag & Drop

Using drag & drop it’s easy to resize and move events between resources. On validation failure the view will be refreshed so that the event moves back to its original position. It is also possible to add fine grained support and disable individual events from being able to be moved via drag & drop.

Builtin Vs Custom APEX Dialog

Builtin Event Dialog: this is the event dialog that comes out of the box with the plugin, there’s nothing you need to do in terms of processing, it’s all handled for you. This means that you can have a fully functioning scheduler with just a few clicks and a tweak of the settings.APEX Dialog: you can override the inbuilt dialog using your own APEX dialog. This means you can have full control of event creation and editing.


You can block out time periods that prevent the user from creating or modifying events that overlap these periods of unavailability. They can be applied for all resources or for particular resources. For the first release of the plug-in this is achieved using the Javascript API we provide, which works really well in combination with our open source “FOS Execute PL/SQL Code” dynamic action plug-in.


Out of the box we provide the ability to check for event collisions/conflicts when scheduling resources i.e. a resource cannot have overlapping bookings in the same time slot, this also includes checking recurring schedules. We also provide the ability for you to validate using PL/SQL all event modifications e.g. via the dialog or when an event is moved or resized via drag & drop. This means that you can perform whatever checks are necessary.

Dynamic Actions

We provide an additional dynamic action plug-in so that you can perform declarative actions on the scheduler without having to resort to Javascript. Things like:

Theme Roller Support

We have provided the ability for you to customize all the coloring of the scheduler, forms, buttons etc.



We provide a PL/SQL API to allow you to generate a series of dates in SQL using a pipelined table function. We do not store the recurring entries in the database, they are virtual records unless modified. Therefore to see dates within a recurring schedule you can use our API.

  1. It will instantiate an APEX session when you call this directly from SQL
  2. It will set session state for any passed in items/values
  3. It will query the APEX data dictionary to find out the actual scheduler query
  4. It will then run this query and get the data within the date range provided
  5. It will then generate all recurring schedule dates and pipe the rows back to the client

This is useful for cases where you want to build in event reminder notifications using the DBMS_SCHEDULER, or if you just want to see the data in tabular format etc.

We also provide a Javascript API which you can call using apex.region(‘REGION_STATIC_ID’).someMethod().


We have spent a considerable amount of time fine tuning this plug-in, it’s packed with a lot of functionality that should make it versatile for many different requirements. It has been initially developed for a hospital in the UK to allow them to manage the scheduling of rooms.

If you have a similar requirement and would like to find out more about how this plug-in could help as well as reviewing our live demo then head over to our website to check it out:

Add your comment

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