Release 10.1A: OpenEdge Development:
ADM and SmartObjects

> ## SmartFilters

> A SmartFilter is an ADM filter-class SmartObject that comprises a frame containing data fields that are used to gather user-specified selection criteria for filtering the data in a SmartDataObject. It follows the query-by-fields model and is implemented as a dynamic SmartObject; that is, the selection criteria (the filter) are specified at run time rather than at design time.

> Because the SmartFilter is implemented as a dynamic SmartObject, it does not have a wizard. At design time, it opens as a frame that contains only three visual objects: buttons labeled Apply, Blank, and Reset. You then use the Link Advisor specify a SmartDataObject as a data source for the SmartFilter instance. You also specify its filter fields: the data-source fields in which the application user can specify selection criteria. You do this by modifying instance properties in its instance properties dialog box.

> At run time, the user specifies selection criteria in the filter fields, using the buttons as needed:

> - The Apply button applies the currently specified filter to the base query.

> - The Blank button removes the currently specified filter, leaving the selection fields undefined.

> - The Reset button resets the selection fields to the most recently applied filter.

> Table 2–11 lists the SmartDataObject files.

> Table 2–11: SmartFilter files
> File type | Filename / SmartLinks
> --- | ---
> Master file (Because a SmartFilter’s fields are defined at design time and its selection criteria are defined dynamically at run time, a template is not necessary.) |
>     src/adm2/dynfilter.w
> Primary include file |
>     src/adm2/filter.i
> ADM/Progress Advisor-supported SmartLinks | Filter-Source
> Instance properties dialog box | `src/adm2/support/filterd.w` (source code) `gui/adm2/support/filterd.r` (compiled code)

Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095