In this section:
Active Technologies form controls enable you to create complex filter relationships among the report and chart components on an active dashboard. This topic describes the capabilities that are available to you when you incorporate active form controls into the design of your active dashboards.
Active Technologies form controls are available for an active dashboard in HTML and for an active dashboard for Adobe Flash Player and for PDF.
For details on the WebFOCUS code that supports the implementation of active form controls, see Configuring Active Technologies Form Controls With WebFOCUS Syntax. For the procedures used in Document Composer to add active form controls to an active dashboard, see Creating Active Technologies Dashboards in Document Composer. For the procedures used in InfoAssist to add active form controls to a compound document, see Creating an Active Technologies Dashboard.
The following are the types of active form controls that you can use to apply filters to an active dashboard.
The following general guidelines apply to active form controls.
A source report (ARDATA_REPORT='name_of_source_report') contains the data that populates an active form control with selection values from which you choose at run time. A target report or target chart (ARFILTER_TARGET='target_report_name1,target_report_name2,...') is the report or chart component that is filtered by the control.
The following features apply to the source report and target report.
A report column (ARDATA_COLUMN='column_name') in a source report populates the data selection values in a list, drop-down list, check box, or radio button. For a text input field, the report column is the column to which the filter condition is applied.
The following features apply to the report column.
If you do not set chained or nested relationships among active form controls, the controls will be independent of each other. At run time, only one filter condition will be in effect. The filter condition from the control that is selected overwrites the filter condition from another, unselected control, providing an OR condition between the two controls.
For example, if the first control is for the YEAR column, and the second control is for the REGION column, when you select the value 2001 from the YEAR control, the target reports and charts are filtered based on the condition YEAR = 2001. When you select the value Northeast from the REGION control, the target reports and charts are filtered based on the condition REGION = Northeast for any YEAR value, as those controls are not related to each other. In the target reports and charts, you can display the result of either YEAR = value or REGION = value, but not both.
Using another example, you can change the data displayed in the following active report by using independent active form controls that provide data for REGION = West or CATEGORY= Gifts. In the following image, CATEGORY = Gifts in the right-most active form control overwrites REGION = West in the left-most active form control.
You can set a second active form control to be the child of a prior active form control, to create a nested filter relationship. In the second active form control, specify the name of the prior active form control as the parent. By specifying a filter component name in the ARFILTER_PARENT property (ARFILTER_PARENT='name_of_parent_object'), you can chain the active form controls to provide a nested filter with a parent/child relationship between the controls.
At run time, when you select a value from the first control, the values in the second control are filtered, based on the value selected in the first control.
In the following example, all three drop-down lists are chained, with the precedent filter component name set as the parent. When you select a value from the first drop-down list, which is populated with values for REGION, the values in the other active form controls will change, based on the value selected in the first drop-down list.
For example, when you select the value West from the first drop-down list, the report is filtered by REGION = West. The second drop-down list, which is populated with values for STATE, dynamically changes to display only the STATE values, CA and WA, for the West REGION. You can now select a STATE value, such as CA, and the report is filtered to display data for STATE = CA within REGION = West.
You can also nest the third drop-down list, which is populated with values for PRODUCT, to display the data for PRODUCT = Gifts in STATE = CA within REGION = West in the report, as shown in the following image.
When there are two groups of filter conditions and the filtered result must meet any combination of those conditions, you can chain all the controls so that they act together. For example, consider two chained groups.
The two groups are shown in the following diagram.
In this example, depending on which control you use, you can have any combination of the filtered result in the report. For instance, you can have:
When there are three groups of filter conditions, you can chain all of them as you would do with two groups, to meet any combination of conditions. Alternatively, the chain can have two nodes to provide two different combinations of filter conditions, based on the data in the source report and target report.
For example, consider three chained groups.
The three groups are shown in the following diagram.
In this example, depending on which control you use, you can have a combination of filtered conditions, based on one of the following.
The following features apply to the All selection value.
You can optionally allow the selection of multiple values at run time if the active form control is a list box or check box (ARFILTER_MULTIPLE=ON). The default is single-value selection, prohibiting multiple-value selection at run time.
When multiple-value selection is set to ON, you can select more than one value in a list box by holding down the Shift key or Ctrl key. You can select multiple check boxes for the check box control at run time.
The text input field (OBJECT=TEXTINPUT) for an active dashboard is case-sensitive. The value that is typed in the text input field at run time must match the exact case of the value that is stored in the database.
For example, typing TV City (the value stored in the database) is valid and returns data for an active report or chart, whereas typing TV CITY is invalid and does not return data.