In last post he have seen most businesses use codes made up of meaningful segments (intelligent keys) to identify accounts, part numbers and other business entities. For example a company might have a part number 'PAD-NR-GRN' indicating a Notepad, Narrow Ruled and Green. Another might have a different code structure for the same Notepad, Narrow Ruled and Green as 'GRN-NR-PAD'. Hence KFF provides the flexibility to define the code structure of any business entity in the customer-desired format without reprogram the application.
We all know , oracle GL uses a KFF called Accounting flex field to uniquely identity a GL account. Oracle have customized this KFF to include 6 segments like Company Code, Cost Center, Product, Product Line and sub account. Valid values are available to each segment and cross validation rules are provided for segment combinations. This KFF can be customized depends upon the business needs.
When to use a KFF
- Used to uniquely identify an application entity with an intelligent key, where the key can be multipart and each part can have some meaning.
- Use KFF that Oracle Applications provides to integrate your applications seamlessly with Oracle Applications.
What End Userâ€™s want there business Perspective
These are the things normally any business user want if implementation team and management avoiding any customization.
- Customize the Flex fields Appearance
- Flexfield title
- Number and order of segments
- Value sets, values, and value description.
- Use Flexfield Functionality for Validation
- Individual segment validation
- Cross-segment validation
- Customize to the Situation
- Flexfields allow the application to adjust to fit specific business needs.
- Use multiple structures to match different needs in different situations.
The good things is that the above can be easily control and managed from screen, without any extra(Ordinary) skill ;)
Types of Key Flexfield Forms
In oracle application key Flexfield appears on three different types of application form :
- Combinations Form
- Foreign Key Form
- Range Form
These form types correspond to the types of tables that contains key flexfield data.
Create Key Flexfield Combinations
A combination is a particular complete code or combination of segment values that makes up the code that uniquely identifies an object. For example, each part number would be a single combination, and if you had ten parts you would define ten combinations. A valid combination is simply a combination that may currently be used.
Each key Flexfield has one corresponding combinations table, known as the Combinations table, where the flexfield stores a list of the complete codes, with one column for each segment of the code, together with the corresponding unique ID number(a code combination id number or CCID) for the code. Then the other tables in the application have a column that stores just the unique ID for the code
Foreign Key Form
Use the flex field code combinations from a form with a foreign key reference to the combinations table.
Internally the underlying Table Uses a Foreign Key
The unique ID primary key column of the combinations table serves as a foreign key column here.
Often the foreign key table contains a structure ID column as well. It can be best represented as figure below,
Here table Contains Two Columns For Each Possible Segment
Often the table contains a structure ID column as well.
This form does not require actual combinations, and so does not need a foreign key link to the combinations table.
Perform operation on ranges of combinations using this form.
Create New Combinations Dynamically
Allow the defination of new flexfield combinations from forms with a foreign key references, as mention in the following diagram.
Describe The Values In A Segment
A segment qualifier is like the segment asking each value a question â€œWhat type of value are you?â€
For example, assign an account type of â€œExpenseâ€ to the Account segment value 3003.
Uses Segment Qualifiers with the Accounting Flexfield
Detail Budgeting Allowed.
Detail Posting Allowed.
Account Type: Asset, Expense, Liability, Ownership/Stockholdeâ€™s Equity, or Revenue.
Dynamically Insert Allowed
- Set and change this property while defining the flexfield structure on the Define
- Key Flexfield Segments form.
- Sometimes this property is not technically feasible
- If the combinations table includes mandatory columns that can not be filled by the flexfield.
- Who columns, CCID columns, and enabled/activation date information can be filled by the flexfield.
This is all about the key flex field. Hopefully it would be good to start with , If you want to learn more about the concept, please do refer Flexfield user guide. Next will take another deep drive for DFF.