Complex Table Search

The complex table search field edit type displays the records of a complex table in a searchable list. This field edit type displays a field with an ellipses button. When the ellipses button is clicked, the searchable list screen is displayed. By default users may search the records of the complex table on any defined top-level index for a string field. Alternately, a single search index may be specified as a part of the screen field’s definition. This field edit type also supports scanner functionality to select a record.

When scanner functionality is enabled, the scanned value will be used to search the complex table on the selected search index. Only those records that match will be listed and the user may make a selection from this filtered list.

Complex Table Search Attributes

Following are the attributes specific to the complex table search field edit type. These attributes are in addition to the common field attributes:
  • Complex Table: This attribute specifies the complex table whose records will be listed in the search screen.
  • Search Index: This attribute can be set to restrict the index used to search the complex table. If an index is selected for this attribute, the user will only be able to search the complex table using that index. By default, all top-level indexes on string fields can be used to search the records. The Search Index can be defined any index, parent or child, which will then be used for all searches of the complex table when using this field.
  • Parent Value: This attribute can be set to the value by which the records should be filtered when the Search Index is set to an index that is a child to another index.
  • Initial Value: This attribute can be set to a property of the definition. This will set the initial value of the field to the value of this property. The user can still select a complex table record to change this value. By default, there is no Initial Value.
  • Display Field: This attribute can be set to any field within the complex table and specifies the field value to display in the screen field for the selected table record. By default the value displayed in the screen field is the field upon which the complex table’s primary index has been defined, i.e., the field containing the unique value for each table record.
  • Return Field: This attribute can be set to any field within the complex table and specifies the table field to return to the screen field from the selected table record. By default the value returned is the table field upon which the complex table’s primary index has been defined, i.e., the field containing the unique value for each table record.
  • Allow Scanning as Input: This attribute can enable scanner functionality for the search screen. When enabled, the user can scan a value that will be used to search the complex table using the selected search index. Only those records matching this search will be listed. This attribute will only affect screen fields for detail screens used by a scanner platform displayed on client devices with barcode scanners.

Search Dialog Indexes

For detail screen fields defined with an edit type of complex table search, there are two lists of items shown in the properties view of the Editor. The first is the Search Dialog Indexes tab. Listed in this tab will be one item for each top-level index defined in the complex table the screen field is displaying. Each item contains a check box which, when selected, will display that index to the user as one that can be searched on. Those indexes not checked in this list will not be displayed to the user.

Search Dialog Fields

For detail screen fields defined with an edit type of complex table search, there are two lists of items shown in the Properties view of the Editor. The second is the Search Dialog Fields tab. Listed in this tab will be one item for each field defined in the complex table being displayed by the screen field. Each item contains a check box which, when selected, will display that field to the user in the list of records. Fields that are not selected will not be shown to the user, unless all fields are not selected, in which case all fields of the complex table are displayed as columns in the list.

This dialog also allows the developer to specify the order in which columns should be displayed in the list control of the search dialog. For the selected fields, a position value is assigned and can be adjusted by moving the field up or down in the list.