Progress
ADM 2 Guide
SmartFilter Instance Property Dialog Box
The main purpose of SmartFilter instance properties is to allow you to select fields from the SmartDataObject that serves as the SmartFilter’s Filter–Target and customize how application users specify filter data. Figure 2–11 shows the instance property dialog box for a SmartFilter.
Figure 2–11: SmartFilter Properties Dialog Box
![]()
The instance properties in this dialog box are grouped into the following panes of related properties:
A final instance property, View, is not in any group.
You use these instance properties as described in the following sections.
Data Pane
You use the instance properties in the Data pane to define the SmartDataObject that will serve as the SmartFilter’s Filter–Target and specify the SmartDataObject fields that are available to the SmartFilter:
- Target, Browse—If your SmartFilter is already linked to a SmartDataObject that will serve as its Filter–Target, the Target fill-in field lists that SmartDataObject, and is disabled—you cannot specify another value.
However, the Target field is enabled if you open the instance property dialog box without linking the SmartFilter to a Filter–Target. You might want to create a SmartFilter without a link, for example, because you have placed it in a SmartContainer and intend to link it to a Filter–Target in another SmartContainer. The Browse button opens a window in which you can browse to and select a SmartDataObject.
NOTE: This SmartDataObject is only design-time SmartDataObject. You must ensure that it is linked at run time.- Fields, Edit Field List—The Fields list box lists the filter fields that will appear in the SmartFilter, in the order that they will be shown. The Edit Field List button opens a window in which you can select, deselect, and reorder these fields.
Field Properties Pane
Because the fields that appear in the SmartFilter are generated dynamically, you cannot access most of their properties in the AppBuilder. However, the SmartFilter’s instance property does provide access to a few field properties. Simply select a field in the Fields list box, and its current property values appear in the Field Properties pane.
Note that changes entered into a control in the Field Properties pane take effect as soon as you select another field in the Fields list box. Pressing OK in the dialog box saves all field property value changes, including any that are not currently displayed:
- Label, Filter Target—The Label fill-in field displays the label of the selected field. By default, the AppBuilder uses the label from the data source and disables this field. To enable the Label field so that you can enter your own label, uncheck the Filter Target check box.
- Width, Default—The Width fill-in field displays the width of the selected field. By default, the AppBuilder uses the default field width and disables this field. (The default field width is data-type dependent and is specified in the Size & Position pane. See the "Size & Position Pane" section for details.) To enable the Width field so that you can enter your own value, uncheck the Default check box.
- Tooltip—Enter the text of the Tooltip for this field. There is no default.
- Help ID—Enter the context ID for the relevant help topic. There is no default.
- View as range fields, Explicit—These check boxes override the default filter style (see the "Style Pane" section for details) for the field selected in the Fields fill-in field:
- The View as range field check box gives the selected field the same visualization as the Range style gives to all fields.
- The Explicit operator check box assigns the same operator to the selected field as the Explicit style gives to all fields.
You can check only one of these boxes. Note that one or both of them might be disabled depending on your choice of default filter style:
- If the default filter style is Inline, neither check box is enabled.
- If the style is Explicit or Implicit, only the View as range fields check box is enabled.
- If the style is Range, only the Explicit check box is enabled.
Style Pane
You use this set of radio buttons to specify the default filter style, which defines how the AppBuilder visualizes the fields in the SmartFilter and applies the application user’s filter criteria to the query:
- Implicit—Generates a single list of fill-in fields in which the application user can specify filter data at run time. Each field is assigned the appropriate data type, thus restricting the filter data entered by the user to the correct data type. You specify in the associated combo box the implicit operator to be used with the filter data.
In some cases, other SmartFilter properties might override the default behavior of the Implicit style:
- If you check the BEGINS property, the AppBuilder uses the BEGINS operator for character fields regardless of your choice of operator. (This is the default.)
- If you check the CONTAINS property, the AppBuilder uses the CONTAINS operator for filter fields that are mapped to word-indexed database fields, regardless of your choice of operator. In addition, these fields are visualized as editors rather than fill-in fields, with their height and word-wrap capabilities regulated by the Number of Lines in Editors property.
See the "String Operators Pane" section for details on the BEGINS and CONTAINS properties. For details on the Number of Lines in Editors property, see the "Size & Position Pane" section.
The Implicit style supports wild cards, but only if you do not check the BEGINS property. There is one exception: a value that starts with a wild card always generates an expression with the Progress MATCHES keyword.
- Explicit—Shows, after a filter field, a list of selectable operators from which the application user can select at run time. The operator is visualized as either a combo box or a radio set, depending on how you set the properties in the Operator View as pane. For details, see the "Operator View as Pane" section.
Selecting the Explicit style disables the BEGINS property. (This is because BEGINS is in the operator list for character fields.) For details, see the "String Operators Pane" section.
- Range—Generates two lists of each filter field, allowing the application user to specify a range of inclusive values as filter data at run time. The left-hand set of fields support wild cards.
Selecting the Range style disables the BEGINS property. However, the CONTAINS string operator property might override the default behavior of the Range style. If you check this property, the AppBuilder uses the CONTAINS operator for filter fields that are mapped to word-indexed database fields, instead of a range of values. In addition, these fields are visualized as editors rather than fill-in fields, with their height and word-wrap capabilities regulated by the Number of Lines in Editors property.
See the "String Operators Pane" section for details on the BEGINS and CONTAINS properties. For details on the Number of Lines in Editors property, see the "Size & Position Pane" section.
- Inline—Generates a single list of fields for which the application user can enter the filter data and an operator at run time. All fields are represented as character fields to allow typing the operator names. The default operator, which the AppBuilder uses if the user does not enter an operator, is EQUALS.
In some cases, other SmartFilter properties might override the default behavior of the Inline style:
- If you check the BEGINS property, the AppBuilder uses the BEGINS operator as the default operator for character fields instead of EQUALS.
- If you check the CONTAINS property, the AppBuilder uses the CONTAINS operator for filter fields that are mapped to word-indexed database fields, regardless of the user’s choice of operator (or the default operator, if relevant). In addition, these fields are visualized as editors rather than fill-in fields, with their height and word-wrap capabilities regulated by the Number of Lines in Editors property.
See the "String Operators Pane" section for details on the BEGINS and CONTAINS properties. For details on the Number of Lines in Editors property, see the "Size & Position Pane" section.
The Inline style supports wild cards, but only if you do not check the BEGINS property. There is one exception: a value that starts with a wild card always generates an expression with the Progress MATCHES keyword.
String Operators Pane
You use these check boxes to specify certain overrides for the default filter styles, For details, see the "Style Pane" section.
- BEGINS—If checked, specifies the following:
- If the default filter style is Implicit, Progress uses the BEGINS operator for character fields instead of the implicit operator that you specify.
- If the default filter style is Inline, Progress uses BEGINS as the default operator for character fields. (The default operator is used when application users do not specify an operator.)
The BEGINS property is disabled for the Explicit and Range filter styles.
- CONTAINS—If checked, and the default filter style is Implicit, Range, or Inline, specifies that the AppBuilder uses CONTAINS as the operator for filter fields that are mapped to word-wrapped database fields, regardless of the operator specified for that style. In addition, these fields are visualized as editors rather than fill-in fields, with their height and word-wrap capabilities regulated by the Number of Lines in Editors property. For details, see the "Size & Position Pane" section.
Operator View as Pane
You use this set of radio buttons to specify how the AppBuilder visualizes the operator selection provided when you select Explicit as the default filter style. For details, see the "Style Pane" section.
These radio buttons are disabled if the default filter style is Implicit or Inline. However, they are enabled if the default filter style is Range, in case you choose to override the style for a specific field to Explicit with the Explicit operator property. For details, see the "Field Properties Pane" section.
Size & Position Pane
You use the instance properties in the Size & Position pane to define various aspects of filter fields:
- Width of Character Fields—Specifies the default width of character fields.
- Width of Other Fields—Specifies the default width of noncharacter fields.
NOTE: This is the position of the actual field and not the label.- Column—Specifies the column position of all fields.
- Number of Lines in Editors—When you check the CONTAINS property (see the "String Operators Pane" section), the AppBuilder visualizes certain filter fields as editors rather than fill-in fields. This property specifies the number of lines to use for these editors. If you specify 1, the editor has the same height as fill-in fields and word wrapping is disabled. If you specify 2, the editor shows two lines, word wrapping is enabled, and a vertical scroll bar appears.
View Property
If checked (the default), the View check box makes the SmartFilter visible.
Copyright © 2004 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |