Let's so you have a scenario where after you change the value of one item, you would like to validate it or perhaps calculate the value of a separate item - or both!
Given an entry of Radius, I would like to calcular Sphere area.
|Let's add an Oracle Forms style when-validate-item|
In this case no condition is required - any change will fire the action. You could ensure the value is above zero, for example.
|Dynamic Action properties|
:P16_SPHERE_AREA := POWER(:P16_RADIUS,2) * 4 * 3.141592;
This can be any anonymous block, or call to a PL/SQL package.
|'True' action properties|
This is what passes information from the browser to the database (session state) and back again.
In this case, the P16_RADIUS value is sent from the browser to the database so it can be used in the PL/SQL expression calculation, then the resulting P16_SURFACE_AREA is set in the browser.
Note some of the other options facilitated by the checkboxes.
The flexibility that dynamic actions provide give me just cause to vote them the best feature of APEX 4.x, just above plug-ins.
Other linksInspired by this forum post, amongst many others like it.
For a more in depth tutorial, check out this Oracle-by-example.
This example is among others on session state in a page of my sample application.