Action locations can be adjusted via the ActionDescriptor property group, as well as in the Actions and Events setup within the WOW Builder. Below each value you can find an example of the Property as well as a screen shot describing where (within the running WOW application) the action will appear.
Action Location (for Row action):
Detail View:
Bottom left, Bottom right, Top left, Top right
Left of (existing) buttons, Right of (existing) buttons.
ActionDescriptor { actTyp:row; loc:top,bottom; detailsLoc:buttons right, buttons left; name:action_name; }
Results (Table) View:
Left side of each row - action similar to edit, display, etc.
Hide on results display - only show action on details display
Drop down - Shows the action as a drop down choice on each Row from a derived field configured for running drop down choices. See the section “Implementing the Drop Down Location” for more details. Normally, the Display type is set to Text for this type of action.
Right Click - show option when hovering over a row and right clicking. Normally, the Display type is set to Text for this type of action.
Action Location (for Row Collection action):
Bottom left, Bottom right, Top left, Top right
ActionDescriptor { actTyp:rc; loc:top,bottom; detailsLoc:buttons right, buttons left; name:action_name; }
Left of Search Fields - Left side of operation’s search fields. This can only be used in an Operation Action.
Right of Search Fields - Right side of operation’s search fields. This can only be used in an Operation Action.
Toolbar - Action is location in toolbar above the results (same location as refresh or printer icon). Normally, the Display type is set to Link/Image.
Action Properties:
Display Type - How is the action to be displayed.
Link/Image - If an image is specified, displays as an image (jpg, png, etc.). Otherwise it’s displayed as a link.
Button - Show action as a button
Checkbox - Show action as a check box
Text - Show action as text (used mostly for location “Right Click” or “Drop Down”).
Image - Used with the display type Link/Image.
Action Group - Group name to assign to action. Actions with the same group are grouped together.
Action Display Order - If more than 1 action is assigned to an operation in the same location, this dictates which action is displayed first (lower order #).
Style Class - Style class (CSS) to use when rendering this action on the screen.
Label - By default, the action name is used for the label (e.g. button text, link text, etc.). Specify an alternate label to use.
Please Wait JSP - When the action is running, you may want to display a please wait jsp. Specify the jsp to use, or specify “TRUE” to use the default please wait JSP.
Browser Target - Specify a target for the browser window to be used, such as _blank (renders in a new window). Default is _self (same window).
Start Navigation Group - Should this action start a new navigation group (add divider for right click or space between button groups)?
End Navigation Group - Should this action end the current navigation group?
New Window Properties - Lets you specify new window properties, such as the window size. E.g. "toolbar=no,location=no,directories=no,status=no,menubar=no,copyhistory=no,width=700,height=800".
Action Messages:
No Rows Selected Error Text - On a Results (Table) screen, lets you specify a message to display when no rows are selected when an action is run. May be useful when TableDisplay property selectionType is not set to “none”. If coding a custom action class, you will need to add code to extract the message and display it:
TableDrivenActionRow actionRow = (TableDrivenActionRow) props;
throw new CMException(actionRow.getNoSelectionErrorText());
Confirmation Text - Text to display (warning - do you want to run this action?) before the action runs. Default is to provide no warning before running the action.
Action Completion Text - Alternate completion text to display after the action runs successfully. If coding a custom action class, you will need to add code to extract the message and display it:
TableDrivenActionRow actionRow = (TableDrivenActionRow) props;
if (ec instanceof HttpExecutingContext) {
String message = actionRow.getMessage();
if ((message != null && message.trim().length() > 0)) {
DataEngineServlet.setUserMessage(message,
((HttpExecutingContext) ec).getRequest());
} else {
DataEngineServlet.setUserMessage(null, ((HttpExecutingContext)
ec).getRequest());
}
}
Authorization:
Authorization works the same way as operation authorization. It controls which users are able to see/use and action. This is only applicable when an application is secured (signon required).
Security Type - The type of security measures to use.
Security Level - Used when the Security Type is set to Level Security. Specifies the minimum Security Level users must have in order to access the feature.
Authorization Operation - Used when the Security Type is set to Operation Security. Specifies the User Authorization Operation used to limit access to the operation. Only users matching the specified criteria will have access to view and run the operation. If no operation is selected, all users will be authorized to execute this operation. All User Authorization Operations defined for the current application should appear in the drop down selection.
Implementing the Drop Down Location:
To fully implement a Row action using the drop down location, it must be configured as follows:
Define 1 or more actions with a location of Drop Down and Operation Inheritance (scope) pointing to the desired operation to contain the drop down options.
For the operation (step a), the SQL results must include a derived field to be used for showing the drop down option(s) associated with each row. For example => Select a.*, ‘’ as D_DROPDOWN From xxx.yyy where field D_DROPDOWN is the derived field in this example.
In the same operation’s properties, include this DisplayColumns property to make the drop down field editable from the table (results) display:
DisplayColumns { editableResults:D_DROPDOWN; }
Create a derived field descriptor for derived field D_DROPDOWN and set the following in Advanced Settings:
Field Class: planetj.wow.action.ActionField
Field Descriptor Type: Derived
Once configured, the derived field should look like this, with a drop down choice for each drop down action created: