Complex Table Drop Down

The complex table drop down field edit type displays a drop down list of unique values from a defined complex table field. This screen field edit type is normally used in a cascade control series, allowing users to drill down through records within the table that have a parent-child relationship.

A cascade is a series of multiple fields all displaying the same complex table. Each cascade field displays a different complex table field. The records displayed in a field are the child records to the selected record in the field before it in the cascade. The parent-child relationship is determined by the structure of the indexes for the complex table being displayed.

The overall behavior of a cascade will force a user to make a selection in the first field in the cascade, which is a top-level parent record in the complex table. The next field in the cascade will not be enabled until this selection is made. At this point, the values listed in the second field will be only those complex table records that are children to the record selected in the first screen field.

This behavior repeats for each field in the cascade. Defining such a cascade requires that the complex table displayed by these fields have the needed parent-child indexes defined. Each cascade screen field must then have a matching child table index at the same level.

As an option to displaying the values of a complex table, this field type can display a complex table search dialog. Within this dialog the records of the complex table will be listed within multiple columns, one for each complex table field. The records displayed in this dialog will be dependent on the selections made in previous fields in the cascade control series. Also as definable behaviors in this dialog are options to specify which indexes to allow a user to search on and the specific complex table fields to display in the list.

This field edit type also supports scanning as input. When this behavior is enabled, the value scanned in must be one that can return a record using the index specified for the screen field.

Both the complex table drop down and complex table list field edit types support cascade behavior. Fields of both types may used in the same cascade series of fields on a given detail screen.

Complex Table Drop Down Attributes

Following are the attributes specific to fields with an edit type of complex table drop down. These are in addition to the common field attributes:
  • Complex Table: This attribute specifies the complex table the field is to display. In a cascade it is possible for each field to display a different complex table, provided the values selected in one can be used to search the next. This is not the recommended method for using cascades, as it is more efficient to use a single complex table for all cascade fields.
  • Table Index: This attribute specifies the complex table index that should be used to search that table. For the first field in a cascade, this index should be the top-level index, that is, an index that does not have a parent index. For subsequent cascade fields, the selected index should be the child index to the index selected in the field that precedes it in the cascade.
  • Cascade Parent: This attribute references another screen field on the same detail screen to use as the cascade parent for the field. If left set to Auto, the cascade will be determined based on the selected Table Index. The field whose Table Index is set to the parent index of the selected Table Index for the field will be treated as the cascade parent screen field. If the proper index structure is in place in the complex table, the cascade parent can be left set to auto.
  • Display Field: This attribute specifies the complex table field to display for the table records. Leaving this attribute set to Auto will display the field upon which the index selected in Table Index is defined. This is the recommended selection for this attribute. Only unique values of this field will be listed.
  • Return Field: This attribute contains the complex table field to return from the selected record. When left set to Auto, the return field will the field upon which the index selected in Table Index is defined. This is the recommended selection for this attribute, as this value will be the one passed to the next field in the cascade.
  • Selection Method: This attribute specifies how the records of the complex table being displayed by the screen field are displayed to the user. Following are the options for this attribute:
    • Always Drop Down Menu - Always list the records of the complex table in a drop down list.
    • Always Open Dialog - Always list the records in a popup dialog.
    • Always Open Dialog with Search - Always open a complex table search list dialog that provides the user with the ability to enter search text to locate the desired record. This dialog will list all fields, or only those selected in the Search Dialog Indexes list, for each record in the complex table.
    • Open Dialog if Needed - Allows to the specification of record threshold. For this option, the default is to display the records in a drop down list. If the number of records to list exceeds the defined threshold, a popup dialog is displayed listing the records in a list box control.
  • Open Threshold: This attribute can be set only of the Selection Method is set to Open Dialog if Needed. This attribute can be set to the Default, which will vary from one client device to another, or to a specific number of records. When the Open Threshold is exceeded, the popup dialog is displayed, listing the records from the table.
  • Scanning: This attribute, when set to true, will enable the client device’s scanner (if present). The user can scan a barcode value, which will be used to search the complex table by that value using the defined Table Index. If a single matching record is found, that will be the selection for the field. This attribute only has an impact if the client device has a scanner, and if the parent detail screen is used by a scanner platform.
  • Handle Special Value By: This attribute is available only if a special value has been defined for the screen field. This attribute specifies what to do when the cascade parent value changes. You can define the field to then set itself back to the special value, change to the default text of “Please select,” or to change to the “Please select text” only if the current selection is not the special value.

Search Dialog Indexes

For detail screen fields defined with an edit type of complex table drop down, 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. For complex table drop down lists the selected search indexes will only affect behavior when the Selection Method attribute is set to “Always Open Dialog with Search.” 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 drop down, 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. For complex table drop down lists the selected fields will only affect behavior when the Selection Method attribute is set to “Always Open Dialog with Search.” 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.