Dynamic Actions are control items that dynamically can affect the display of regions or items on a page. There are several situations when you want to show or hide items. For example, a text item asking for a maiden name should only be displayed when the person is female and married. In other cases, it is irrelevant to ask for a maiden name (on the other hand, with homosexual marriages it's possible for a man to have a 'maiden' name, and in some cases a man can adopt the family name of his wife, but let's not make this example more difficult than necessary).
The same applies to the commission field in the employees table. This item should only be enterable when the employee’s job is a salesman. Let's build the functionality for this last situation.
You should already have an application and a simple single record form on the employees table.
You have now created a Dynamic Action which shows the commission field when the job is SALESMAN and hides the commission field when the job is not'SALESMAN.
The Dynamic Actions are actually event handlers in HTML. There are several event handlers.
Because these events are HTML (or rather JavaScript) they are handled client side. This has the advantage that the page doesn't have to be reloaded completely when an action is triggered to show or hide items.
Event |
Meaning |
---|---|
After refresh |
Item has been refreshed (that is, by page refresh) |
Before refresh |
Fires before item has been refreshed (that is, by page refresh) |
Blur |
User navigates to another item |
Change |
User navigates to another item and the value of the item has changed |
Click |
User clicks on the item with a pointing device (like a mouse) |
Dblclick |
User double-clicks on the item with a pointing device |
Focus |
User navigates to the item via the tab key or a pointing device |
keydown |
User clicks a key on the keyboard |
keypress |
User "clicks" a key on the keyboard (=onkeyDown followed by onkeyUp) |
keyup |
User releases the key after having pressed it |
load |
The browser loads all content |
mousedown |
User clicks the mouse button when the mouse pointer is over the item |
mouseenter |
User clicks on the item with the pointing device |
mouseleave |
User moves away the mouse from the item |
mousemove |
User moves the mouse while the mouse pointer is over the item |
mouseover |
User moves the mouse pointer over the item |
mouseout |
User moves away the mouse pointer from the item |
nmouseup |
User releases the mouse button after having it pressed |
submit |
Form is submitted |
Resize |
Document view is resized |
Scroll |
Document view is scrolled |
Select |
User selects some text in a text field |
Submit |
Form is submitted |
Unload |
Page is unloaded |
In our example, we use the onchange event handler. So, when the user changes the value in JOB, the onchange is triggered and it calls the action to show or hide the COMMISSION field, depending on the value in JOB. If it is SALESMAN then show commission, else hide commission.
You can control the display of more than one item at a time. Simply separate the items by a comma in the items field.
You can also control the display of regions. So, you can show or hide a complete report. Instead of item, select region and the name of the region in the affected element section when defining an action.
3.133.123.34