Back Forward Harness, section, and flow action forms
Implementing dynamic form actions and the Client Event Editor

About Harness rules

  Show all 

C-1990 GROVS To reduce the size and complexity of work object forms, you can hide, show, or alter parts of the runtime presentation of harness, section, and flow action forms based on user input. Additionally, you can cause sections to repaint based on user interactions. GRP-224

For example, if a user selects 3 in a field labeled Children, the work object form can quickly change to present three input fields, to collect the name or other information about each child. Similarly, if a user checks a box labeled Earthquake Coverage?, fields appropriate and specific to that situation can appear.

The field to which an event is linked is known as the controlling field. Other fields that may become visible or hidden are known as the controlled fields. In the first example, the Children field contains the controlling field and the Child Name fields are controlled.

Internally, user interactions trigger the JavaScript events OnBlur, OnChange, and OnClick that then execute built-in JavaScript functions to change or refresh the form.

 Prerequisites

Dynamic form actions require the following: SR-6018 KHATV 9/27/06 GARFJ

  1. A harness, section, or flow action rule saved in Version 5 or later that uses the SmartFrames layout and uses only JSP tags, not directives. Section rules referenced with the rule also must use only JSP tags. KHATV 10/3/06
  2. The HTML Property rule associated with the property (through the Property form or through the Harness, Section, or Flow Action form) must include the JavaScript code in the HTML Property rule named ClientValidation. Several standard HTML Property rules meet this requirement.
  3. A visible property presented on the runtime form in read-write mode.
  4. An event associated with a controlling property.
  5. A test condition associated with one or more controlled properties.

 1. Establish the controlling field with the Client Event Editor

Use the Client Event Editor to associate an event with the value that the user enters into an input field for a property. C-2526

1. Consider the HTML Property rule that is to be used to present the controlling property. This rule may be identified in the Control field of the panel. Click the Preview toolbar button (Preview) to see an approximate runtime presentation.

2. Click the magnifying glass icon (Magnifying glass) on the Behavior field to start the Client Event editor in a new window.

3. Complete the Client Event Editor form. See Help — Client Event Editor.

 2. For each controlled element, enter a Condition

At runtime, a controlled element is visible or hidden dynamically, based on the results of the Run on Client test. The following controlled elements are supported:

To establish a controlled element:

1. On the Field, Layout, Section Include or Container panel, choose Other Condition for the Visible When field.

2. In the Condition field, enter one or more simple test conditions for the property value in the controlling field. Provide a comparison of the property with a constant value using one of the operators ==, !=, >, >=, <, <=. Unless the Type of the property is Integer, TrueFalse, or Decimal, place a pair of double quotation characters around the string constant. You can use parentheses and the && and || operators to group multiple conditions.

For example, these are valid: 5/23/06 double quotes may not be necessary per GROVS

        .pyAddress2 != ""

        .Color == "blue"

        .Limit >= 32 || .Limit <= 20

        .GoldCard = true && .StateCode!="VA"

        .RetiredDate >= "20071010"

         (.pyAddress2 !="" || .pyEmailAddress!="") && .pyStateCode!=""

See Constants in expressions — Constants for information on entering constants.

3. Select the Run on Client? box.

 Notes

This feature does not require that the Enable Client Side Validation? box be selected on the HTML tab of the Harness or Flow Action form.

When you select Refresh This Section as the Action, at runtime Process Commander uses AJAX technology to communicate between the browser client and the server.

Definitions AJAX
Related topics Harness, Section, and Flow Action forms — Fields — Adding a Text box

Up About Flow Action rules

Up About Harness rules

Up About Section rules