Search

OracleDollars

Flexfields in Oracle Applications


What is a Flexfield?
As the name suggests, a Flexfield is a ‘flexible field’. A flexfield is a field made up of segments. Segments are nothing but columns of the base table. Each segment has a name that can be assigned and a set of valid values. There are two types of Flexfields in Oracle Applications and they are called as
• Key Flexfield
• Descriptive Flexfield
With both of these flexfields, users get the ability to customize their application to match their business needs without programming.


When and where are these flexfields used?
Descriptive Flexfields are used in places whenever the user feels a need of extra information apart from the Oracle supplied standard information in the forms.
Key Flexfields are used whenever there is a need for storing Key information related to the organization.

What is the difference between Key and Descriptive flexfields?

  • Key flexfield is used to store the key information about an organization whereas Descriptive flexfields are used to store any additional related information.
  • Key Flexfield values are stored in Segment columns in the base table whereas descriptive flexfield values are stored in the Attribute columns of the base table.
  • Key Flexfields are non-updatable and mostly have only restricted values as input (Attached Value sets) wheras a the fields in Descriptive Flexfield are updatable.
  • Key flexfields do not have any context sensitive segments whereas Descriptive flexfields can be made into context sensitive fields.
  • Key Flexfields are the mandatory fields whereas descriptive flexfields are not mandatory by default but can be made mandatory.

What are the Base Tables involved in Flexfields creation?
The tables involved are
FND_FLEX_VALUES_TL, FND_ID_FLEXS, FND_FLEX_VALUES, FND_FLEX_VALUE_SETS, FND_ID_FLEX_STRUCTURES

Query to find the number of oracle Supplied key flexfields in each application

SELECT fa.application_name application, COUNT (fif.application_id) flexfield_count
FROM fnd_id_flexs fif, fnd_application_tl fa
WHERE fif.application_id = fa.application_id
GROUP BY fa.application_name

A sample output of this query is as below:

These were some of the basics involved with Flexfields in Oracle Applications. The next post will be on how to enable a Descriptive Flexfield in Oracle Applications.

Please feel free to post your comments or queries




1 comment:

Anonymous said...

Which are the flex fields in AP?