In this article we will look into the basics of Flexfields, types of it and their usage.
- What is a Flexfield?
- Types of Flexfields
- Differences between types of Flexfields
- How to find the flexfields available on a Business Object?
- List of Flexfields available for HCM
Table of Contents
What is a Flexfield?
Flexfields are placeholder fields associated with a specific business object. They’re designed for customers to store additional data in our apps with no coding changes. Each business object has been enabled with a list of flexfields which can be configured to have additional fields listed on the business object.
Types of Flexfields
There are three types of flexfields:
- Descriptive Flexfield (DFF)
- Extensible Flexfield (EFF)
- Key Flexfield (KFF)
Descriptive Flexfield (DFF):
Descriptive Flexfields provides a way to capture additional information on the predefined screens. This allows flexibility to capture customers specific information if there is no standard field to capture such information.
DFF’s are stored in attributes on the same business object base table, 15 Date, 20 Number and 50 Character attribute columns are reserved for the DFF’s data in each base table, these numbers could change for some business objects. With DFF, each segment is represented in the database as a single column.
While defining DFF, we can
- Define validation and display properties for each field
- Can specify if these fields are BI enabled to be used on OTBI analytics.
- Can specify if these fields are any context specific or global segments.
Descriptive flexfields have two different types of segments, global and context-sensitive, that you can decide to use in a descriptive flexfield structure.
Global Segment:
A global segment is basically those segments in DFF that is available throughout the enterprise (visible to every employee in the enterprise doesn’t matter to which legal employer or department or job they belong to).
Context-sensitive fields:
A context-sensitive segment is a segment that may or may not appear depending upon what other information is present in your form
Extensible Flexfield (EFF):
An extensible flexfield is similar to a descriptive flexfield, but with the following additional features:
–Attributes are grouped into contexts (or information categories) so they will always be presented together in the user interface.
–Values are stored in a separate database record related to a specific business object, like Job or Person, and this gives you greater flexibility :
- You can define as many contexts as you want, without any limitation
- You can define a multi row context in case of one to many relationship use cases
EFFs are also called Extra Information Fields (EITs).
- Number of configurable segments are not fixed unlike fixed number of segments in DFF, so we can add N number of custom fields without any limitation.
- Attributes can be grouped into one or more attribute groups rather one in DFF. This is mainly used to group fields and show them at single place on the page. We cannot group DFFs on a page.
Key Flexfield (KFF):
Key flexfields are configurable multi-part intelligent keys, where each element (segment) of the key may be individually meaningful, as well as the combination as a whole.
- For example general ledger accounts. Accounting Flexfield consists of various segments such as company code, cost center, account, product, product line, sub account.
- In Fusion HCM, KFFs are only used for People Group and Cost Allocation.
– Cost allocation is the payroll KFF and is defined so that you can book the payroll to GL
– People group is the HR KFF and is defined to group people into specific groups.
Differences between DFF, EFF and KFF:
How to find the flexfields available on a Business Object
Open the Business Object page from Navigator. Ex: Manage Jobs Under My Client Groups > Workforce Structures
Click on the User at the right top corner and select the Highlight Flexfields option as shown below:
And we can see that the flex fields have been highlighted.
If we click any of the settings icon for DFF or EFF, it will take us to a new page where we can configure the flex field and it will auto-populate the flex field code as we are navigating to it using the business object page.
I clicked the settings icon for DFF, and the new page appears like below:
We need to click the pencil icon to edit the flex field and add any new segments that we want to. After the changes are done, we need to get back to this page and then deploy the flex field for the changes to be visible for all users.
List of Descriptive Flexfields available in Fusion:
Business Object | Descriptive Flexfield |
Job | PER_JOBS_DFF |
Job Family | PER_JOB_FAMILY_DFF |
Position | PER_POSITION_DFF |
Department | PER_ORGANIZATION_UNIT_DFF |
Location | PER_LOCATIONS_DF |
Person | PER_PERSONS_DFF |
Worker | PER_PERSON_LEGISLATIVE_DATA_LEG_DDF |
PER_PERSONS_DFF | |
PER_PPS_LEG_DDF | |
PER_PPS_DF | |
PER_CONTRACT_LEG_DDF | |
PER_CONTRACT_DF | |
PER_ASG_LEG_DDF | |
PER_ASG_DF | |
Work Relationship and Assignment | PER_PPS_LEG_DDF |
PER_PPS_DF | |
PER_CONTRACT_LEG_DDF | |
PER_CONTRACT_DF | |
PER_ASG_LEG_DDF | |
PER_ASG_DF | |
Assignment | PER_CONTRACT_LEG_DDF |
PER_CONTRACT_DF | |
PER_ASG_LEG_DDF | |
PER_ASG_DF |
List of Extensible Flexfields available in Fusion:
Business Object | Extensible Flex Field |
Payroll Interface Inbound Records | ORA_HRY_PI_INBD_RECORDS_INFO_EFF |
Element | PAY_ELEMENT_INFORMATION_EFF |
Jobs | PER_JOBS_LEG_EFF |
PER_JOBS_EIT_EFF | |
Location | PER_LOCATION_INFORMATION_EFF |
PER_LOCATION_LEG_EFF | |
Organization | PER_ORGANIZATION_INFORMATION_EFF |
Person | PER_PERSON_EIT_EFF |
Assignment | PER_ASSIGNMENT_EIT_EFF |
Positions | PER_POSITIONS_EIT_EFF |
PER_POSITIONS_LEG_EFF |
List of Key Flexfields available in Fusion:
People Group KFF
Cost Allocation KFF
The above list is a sample list and not exhaustive list of all flex fields.
For more info on flexfields, refer the link https://docs.oracle.com/cd/E51367_01/globalop_gs/FAIGH/F1433097AN27C02.htm#OAWRK1433097
Tip: Flexfields provide an unique opportunity to customize the pages as per our needs without having to go through the ADF/OAF page customizations in a user friendly manner. Maintenance of Flexfields is also easy as we can load data into these flexfields using the business object HDL file.
Thanks
Nice Article
perfect article
Very Informative
Hi SaiCharan,
Very good information. Can we create Flex field to display Age of employee in yrs, months and days format?
Thanks
Vijay
Hi Vijay,
I don’t think it is possible to display in that format.Even if we create a flexfield we will have to add data to it on application or using HDL. By Age it should change everyday based on the birthdate, so it is not possible.
Thanks,
Sricharan
Nice Airticle with Good Explanination
Hi Sricharan,
We had created a Flex field which is Date type is Date in Work Relation ship page. I need to auto populate the termination date of employee in flexfled date field…is it possible?..If possible let me know, How can we achieve that.
Thanks
Viswa