Key flexfields appear on three different types of application form:
• Combinations form
• Foreign key form
• Range form
These form types correspond to the types of tables that contain key flexfield data.
Combinations form
A combinations form is a form whose only purpose is to maintain key flexfield
combinations. The base table of the form is the actual combinations table. This table is
the entity table for the object (a part, or an item, an accounting code, and so on). The
table contains a unique ID column (also called the code combination ID column) as
the primary key, as well as individual segment columns, a structure ID column, and
other flexfields-related columns. The combinations form contains hidden fields for
each segment column in the table, as well as displayed fields for the concatenated
segment values (the combination) and any other fields (and columns) that the entity
requires, such as a concatenated description field. A combinations form is sometimes
also called a maintenance form.
Example of a combinations form
Foreign key form
A foreign key form is a form whose underlying base table contains only one or two
columns that contain key flexfield information, and those columns are foreign key
columns to the combinations table (usually a foreign key to the CCID column of the
combinations table and sometimes a structure ID column as well). The purpose of a
foreign key form often has very little to do with the key flexfield itself, and that the key
flexfield appears on the form is essentially incidental. For example, if you have a key
flexfield that represents a part number, you would use the combinations form to define
new parts and maintain existing part numbers. You would then have many foreign key
forms that you use to manipulate your parts. You might have a form where you take
orders for parts, another form where you receive parts, and yet another form where you
ship parts. The fact that your part number happens to be a key flexfield is not important
to your taking orders for your parts, for example.
Example of a foreign key form
Range form
A range form displays a range flexfield, which is a special pop-up window that contains
two complete sets of key flexfield segments. A range flexfield supports low and high
values for each key segment rather than just single values. Ordinarily, a key flexfield
range appears on your form as two adjacent flexfields, where the leftmost flexfield
contains the low values for a range, and the rightmost flexfield contains the high
values. A user would specify a range of low and high values in this pop-up window. For
example, you might choose a range of part numbers for which you want to run a report.
The range form uses a special table as its base table. This table contains one or more
(usually two) columns for each segment column that appears in the combinations
table. However, these columns do not necessarily contain actual segment values, and
a row in the table does not necessarily contain actual valid combinations. Usually
this table contains two columns for each segment, called SEGMENTn_LOW and
SEGMENTn_HIGH (where n is the segment column number), that store the range of
values for each segment.
In Oracle Applications, we use a key flexfield range to help you specify cross-validation
rules for key flexfield combinations.
Some forms use a variation of a range flexfield to capture information for each key
flexfield segment that is not necessarily a segment value. For example, the form might
capture a "Yes" or "No" value for each segment (the Assign Function Parameters form
displays a pop-up flexfield window where you choose Yes or No to specify whether you
want to assign a value to each particular segment).Example of a form with a range exeld
Related Topics
Intelligent Key, page 2-1
Combination, page 2-2
Combinations Table, page 2-3
Qualifiers, page 2-4
Dynamic Insertion, page 2-8
Other Key Flexfield Features, page 2-10
Planning your Key Flexfield, page 2-10
Key Flexfield Structure Planning Diagram, page 2-11
Dynamic Insertion
Dynamic insertion is the insertion of a new valid combination into a combinations table
from a form other than the combinations form. If you allow dynamic inserts when you
set up your key flexfield, a user can enter a new combination of segment values using
the flexfield window from a foreign key form. Assuming that the new combination
satisfies any existing cross-validation rules, the flexfield inserts the new combination
into the combinations table, even though the combinations table is not the underlying
table for the foreign key form.