The complex
table list field edit type displays the records of a complex table
in a list control on the detail screen. Definable behaviors include
the complex table fields to display, the complex table field value
to return when a record is selected, and an action to execute when
a record is double-clicked. This field edit type is normally used
in a cascade control, though this is not a requirement.
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.
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 List Attributes
Following
are the attributes specific to the complex table list field edit
type. These attributes 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.
- Fields to Display: This attribute can contain the name
of each complex table field to display in the list. Each table field
name is listed here, separated by a comma. If no fields are listed
here, all fields are displayed in the list. Each field displayed
in the list is represented by a list column.
- 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.
- Double-Click Action: This attribute references an action
to execute if the user double-clicks a record in the list. The target
of this action will always be the object instance the parent detail
screen is displaying. The complex table record the user double-clicks
is the current record and can be accessed as such through the target
browser. This attribute can only be set when the field is displayed
on an object detail screen and will have no affect on a wizard detail
screen for a transaction or fetch instance.
- Handle Special Value By: This attribute is available
only if a special value has been defined for the Field. In this
case, 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.