If you are interested in a Standard Dynamic Action in APEX 4.0, you should read this blog post.
In this post I'll cover how to create an Advanced Dynamic Action. 'Advanced' allows you to create more complex native dynamic actions such as 'Add Class' or 'Set Value' and also plug-in dynamic actions, that are installed in your application.
In this example I want to retrieve the department for a given employee.
In the Application Builder you find a new region (tree record) called "Dynamic Actions". Right click on that and click Create
In this post we select Advanced, as we want to create an Advanced Dynamic Action, that does more than just show/hide or enable/disable.
Give the dynamic action a meaningfull name e.g. Refresh Employee List
Tell the dynamic action when it needs to fire. In this case I want that something happens whenever I change from Employee (P25_EMPNO).
Select the action you want to do. In this example I want to set the value of an item (the department) for an employee. The value can be retrieved in a number of ways, but in this case I search the department with a SQL Statement.
Finally you tell the dynamic action what item it needs to update. What you want to update can also be a Region, a DOM object or a JQuery Selector.
You see the example in action here.
If you want to combine different actions in one dynamic action, that is possible too. You can add multiple actions when the condition is true or false. (See True/False Actions)
There are many Actions you can chose from. If you imported or created Dynamic Actions plugins, you find them in there too.
Dynamic Actions are VERY VERY powerful and have an unlimited amount of possibilities. Although the above is classified as an "Advanced Dynamic Action" it's still a fairly simple example. In Part 3 I'll show how to combine plugins with dynamic actions to be even more powerful!
The key reasons why I like Dynamic Actions so much:
- it's a declarative way of creating more interactive websites
- it allows more experienced people to get the job done faster
- the dynamic content is more structured and always in the same format