EBSintermediate
Flexfields: Key and Descriptive
Differentiate key flexfields from descriptive flexfields and explain their configuration and use
A flexfield extends EBS's data structures without changing the schema. There are two kinds and they do different jobs.
A key flexfield is like a postal address system — structured segments (street, city, zip) that together form one intelligent, validated key. A descriptive flexfield is like a customizable form footnote — you can add sticky-note-style extra fields depending on context, without redesigning the whole form.
Key Concepts
1
Key Flexfield (KFF) a structured, multi-part identifier
Descriptive Flexfield (DFF) extra attributes on a record2
A key flexfield is an identity. The Accounting Flexfield — the chart of accounts — is the standard
example:
3
01 . 200 . 5300 . 000
company cost centre account future4
Each segment is validated against a value set, and the whole combination is stored once in a combinations
table:
5
GL_CODE_COMBINATIONS
CODE_COMBINATION_ID 1042
SEGMENT1 '01' SEGMENT2 '200' SEGMENT3 '5300' ...6
Everything else in EBS stores CODE_COMBINATION_ID — a single number — rather than the four segments. That
is the design: a compact foreign key everywhere, with the structure and validation held in one place.
CODE_COMBINATION_ID
7
A descriptive flexfield adds attributes. Generic columns already exist on the table:
8
ATTRIBUTE_CATEGORY, ATTRIBUTE1, ATTRIBUTE2, ... ATTRIBUTE159
A DFF gives them names, prompts and validation for your installation. No column is added and no table is
altered.
10
Context sensitivity is what makes DFFs flexible. The category column selects which set of segments
appears:
11
context 'Domestic Supplier' ATTRIBUTE1 = GST number
context 'International Supplier' ATTRIBUTE1 = customs code
ATTRIBUTE2 = incoterms12
One set of columns serves many different attribute sets, chosen at data entry.
13
The cost of that design. ATTRIBUTE1 means different things in different rows, so a report has to know
the context before it can interpret the column. Querying a DFF column without filtering on
ATTRIBUTE_CATEGORY returns a mixture of unrelated values.
ATTRIBUTE1ATTRIBUTE_CATEGORY
14
Value sets validate segments, and the three kinds are asked about:
15
independent a fixed list of values you maintain
dependent valid values depend on another segment's value
table validated by a query against a table16
Flexfields must be compiled after definition changes. An uncompiled flexfield behaves as the previous
version, which is the standard reason a new segment does not appear.
17
The distinction to state. A KFF defines what something is — an account, an item. A DFF records extra
things about it. Structure against annotation.
18
What the interviewer is probing.1. "What is the difference between a key and a descriptive flexfield?" Probing: the
distinction. Stalls: "Nothing." Moves up: a key flexfield is a structured identifier such as the
accounting code combination; a descriptive flexfield adds optional attributes to a record.
19
2. "Where are DFF values stored?" Probing: the mechanism. Stalls: "A new table." Moves up:
in ATTRIBUTE columns already present on the base table, which is why the number available is
limited.
20
3. "What is a context-sensitive DFF?" Probing: the capability. Stalls: "Nothing." *Moves
up:* different segments appear depending on a context field, so one attribute set serves several
record types.
21
4. "Why are key flexfields hard to change later?" Probing: the practical warning. Stalls:
"They are not." Moves up: the accounting structure is embedded in data, reports and interfaces, so
adding or resizing a segment is a major project.