Accounting Flexfield Setup and Usage
This
paper will provide detailed steps for creating value sets, segments and
accounting flexfield structures. It will also provide steps on how to
add new values to existing segments and how to create code combinations.
1. How to create an Accounting Flexfield Structure
Steps:
1. Create value sets
2. Create new accounting flexfield structure
3. Create segments
4. Add Segment Values
5. Freeze Flexfield Structure
6. Compile Flexfield Structure
7. Attach accounting flexfield structure to a set of books or Ledger
Note: Steps 1 through 4 MUST be performed in that order.
Step 1- Create Value Sets
Responsibility: General Ledger Super User
Navigation: Setup > Financials > Flexfields > Validation > Sets
Navigation: Setup > Financials > Flexfields > Validation > Sets
· Value Set Name - Enter a unique name.
· Security Available - Check this if you want to use security rules. This can be changed at anytime.
· Enable Longlist
- Check this if your value set should provide the Longlist feature,
where a user must enter a partial segment value before the list of
values retrieves all available values.
· Format Type - You MUST specify a format type of Char.
If you want to use numbers, choose Char and allow alphanumerics. The
Accounting Flexfield does not support format types other than Char.
· Right-justify Zero-fill Numbers
- Check this. If not checked, then this could cause problems with data
entry later. This automatically adds zeroes on the left of a number to
complete the field size; e.g. you enter "99" and it is stored as
"00099".
· Validation Type
- This must be Independent, Table, or Dependent-type value sets. Do not
use value sets with a validation type of None, Pair, or Special for the
Accounting Flexfield.
If you are using a Table-validated value set:
If you are using a Table-validated value set:
o Do not specify a hidden ID column.
o Do not use a WHERE clause and/or ORDER BY clause.
Note:
You should create all the value sets for the accounting flexfield
structure prior to performing step 2. However, you should not define any
values for your value sets until the structure has been defined.
Step 2- Creating Accounting Flexfield structure
Responsibility: General Ledger Super User
Navigation: Setup > Financials > Flexfields > Key > Segments
Navigation: Setup > Financials > Flexfields > Key > Segments
· Application - Oracle General Ledger
· Flexfield Title - Accounting Flexfield
· Structure Title - enter the title for your new accounting flexfield structure.
· Segment Separator - select the separator from the list of values. After setting this do not change it. It may cause inconsistencies.
· Enabled - Check this flag to enable your accounting flexfield structure.
· Notice this is where you enable the following:
o - Cross Validation Rules with 'Cross-Validate Segments'
o - Dynamic Insertion with 'Allow Dynamic Inserts'
Note:
If you want to create code combinations automatically, check Allow
Dynamic Inserts however, make sure you create cross validation rules to
prevent incorrect combinations from being created.
Step 3- Create segments
Click the Segments button on the Key Flexfield Segments form.
You can define up to 30 segments for your account structure. You must define at least 2 segments, one for the balancing segment and one for the natural account segment (the two required flexfield qualifiers). Please note that some Oracle subledgers require a third qualifier, that being the cost center.
Enter all your segments in order.
· Number
- The Accounting Flexfield requires consecutive segment numbers
beginning with 1 (such as 1, 2, 3, ...). Gaps in numbering like 10,20,30
... will cause problems.
· Name
- Enter a unique name for the segment. The name should begin with a
letter and use only letters, numbers, spaces or underscores. The name
cannot be changed after saving.
Do not use SQL keywords or reserved words as it will cause errors.
Do not use SQL keywords or reserved words as it will cause errors.
· Window Prompt - this is viewed by the end-user and can be changed.
· Column - Do not use any columns other than those named SEGMENT1 through SEGMENT30.
· Indexed -
if the expect number of different segment values is small, do not
select the Indexed option. If the number is high then select the Indexed
option. This will determine if the GL Optimizer program will create
separate index for this segment or not.
IMPORTANT: In Accounting Flexfield ALL segments must have the Enabled and Displayed checkbox checked.
Assign your flexfield qualifiers. With the cursor on the segment you are going to designate as your balancing segment, click on the Flexfield Qualifiers button. Check the Enabled checkbox on the Balancing Segment line.
Do the same for the natural account segment. With the cursor on the segment you are going to designate as your natural account segment, click on the Flexfield Qualifiers button. Check the Enabled checkbox on the Natural Account line.
Cost Center and Intercompany Segment are optional.
Be sure you create these segments and qualifiers carefully. You are not allowed to change them once they are defined. Changing them is unsupported and data inconsistency and corruption will occur.
Click on the Open button for each of the segments to create the segment and associated information.
Assign your flexfield qualifiers. With the cursor on the segment you are going to designate as your balancing segment, click on the Flexfield Qualifiers button. Check the Enabled checkbox on the Balancing Segment line.
Do the same for the natural account segment. With the cursor on the segment you are going to designate as your natural account segment, click on the Flexfield Qualifiers button. Check the Enabled checkbox on the Natural Account line.
Cost Center and Intercompany Segment are optional.
Be sure you create these segments and qualifiers carefully. You are not allowed to change them once they are defined. Changing them is unsupported and data inconsistency and corruption will occur.
Click on the Open button for each of the segments to create the segment and associated information.
Suggestion: If you have spare segments (for future use), enable and display them (this is mandatory for all segments in accounting flexfield). In the value sets for the spare segments, define only one segment value, which will be the default value.
On the Segments form, set the Default Type to Constant and Default Value to the value created in the segment values form (FNDFFMSV). This would typically be zeros.
Use the Flexfield Qualifiers button to assign the existing qualifiers to the segment:
Step 4 - Add Segment Values
Responsibility: General Ledger Super User
Navigation: Setup > Financials > Flexfields > Key > Values
Navigation: Setup > Financials > Flexfields > Key > Values
Enter the following parameters:
· Application - in 11i use "Oracle General Ledger" and in R12 use "General Ledger".
· Title - "Accounting Flexfield". In R12 do not use the "GL Ledger Flexfield" as this is to be maintained by the system.
· Structure - The name of the structure created in Step 2.
· Segment - Defined in Step 3.
· Click on Find button.
· Enter segment values for each segment you created.
After entering the value, you cannot change or delete it. However, you can uncheck the Enable button. Alternatively, you can put a start and end dates (from / to) on the value.
Note: If you disable a segment, the existing code combinations are not automatically disabled. To disable existing code combinations manually query the code combinations on the GL Accounts form and uncheck the Enabled box or end date the code combination.
You can use the Segment Value Inheritance program to do the same automatically.
Setup the required segment qualifier values.
Note: Make sure you tab through to the segment qualifiers box even if you want to use the default qualifiers.
Below is the standard segment qualifier box for all segments except the natural segment.
Below is the standard segment qualifier box for the natural account segment.
Make sure you set the account type correctly. If not, you will experience problems in the first period of a new year with your retained earnings account. The account type determines whether an account's ending balance closes into retained earnings or becomes a beginning balance in the new year.
Note: If you discover that your account type is set incorrectly and you have already posted or already created code combinations, then reference your Oracle General Ledger User's Guide for the process to correct misclassified accounts (also see Document 1050920.6).
Note: The Reconciliation qualifier is setup differently in 11i and R12.
- For 11i please review Document 1041211.6.
- For R12 the Setup of Journal Reconciliation is standard functionality.
Step 5- Freeze Flexfield Structure
Responsibility: General Ledger Super User
Navigation: Setup > Financials > Flexfields > Key > Segments
Navigation: Setup > Financials > Flexfields > Key > Segments
Freeze your flexfield definition and save your changes. When you do, your flexfield compiles automatically.
Step 6 - Compile Flexfield Structure
Click
on Compile button to compile flexfield. You must recompile your
flexfield every time you make changes using this form, including
enabling or disabling cross-validation rules. You must also recompile
your flexfield after you enable or disable shorthand entry using the
Shorthand Aliases window.
When the compilation completes please check the Concurrent Request output for any possible errors.
When the compilation completes please check the Concurrent Request output for any possible errors.
Step 7- Attach accounting structure to a Set of Books or to a Ledger
Responsibility: General Ledger Super User
Navigation 11i: Setup > Financials > Books > Define
Navigation 11i: Setup > Financials > Books > Define
Navigation R12: Setup > Financials > Accounting Setup Manager > Accounting Setups
· Chart of Accounts - Enter the name of your accounting flexfield structure.
· The
first time you are using this chart of accounts, you must have Dynamic
Insertion enabled for the accounting flexfield structure when you enter
the required accounts for Retained Earnings, Suspense or Intercompany.
2. How to Change Segment Values in Existing Value Sets
Steps:
1. Unfreeze flexfield definition
2. Update segment values on the segment value form
3. Freeze flexfield definition
4. Compile flexfield structure
Step 1- Unfreeze Flexfield Definition
Responsibility: General Ledger Super User
Navigation: Setup > Financials > Flexfields > Key > Segments
Navigation: Setup > Financials > Flexfields > Key > Segments
Uncheck Freeze Flexfield Definition.
Step 2- Modify segment values on the segment value form
Follow
the steps described in previous Step 4 - Add Segment Values to navigate
to the Segment Values form. Query the values. Make the necessary
changes.
Note: you cannot change or delete the segment value itself. You can change the description, enabled flag, end date, etc.
If you cannot make changes after you unchecked "Freeze Flexfield Definition", then there are other flexfield structures using the same value set, which are still frozen. Document 1015950.6 contains scripts to find the flexfields that use the value set.
Note: you cannot change or delete the segment value itself. You can change the description, enabled flag, end date, etc.
If you cannot make changes after you unchecked "Freeze Flexfield Definition", then there are other flexfield structures using the same value set, which are still frozen. Document 1015950.6 contains scripts to find the flexfields that use the value set.
Step 3- Freeze flexfield definition
This step is identical to previous Step 5 from How to create an Accounting Flexfield Structure (see above).
Step 4- Compile flexfield structure
This step is identical to previous Step 6 from How to create an Accounting Flexfield Structure (see above).
3. How to create a new code combination
There are two ways to create code combinations.:
1. Manually
2. Automatically (with Dynamic Insertion enabled)
3.1. Manually
Responsibility: General Ledger Super User
Navigation: Setup > Financial > Accounts > Combinations
Navigation: Setup > Financial > Accounts > Combinations
Enter the Account, and set the Allow Posting and Allow Budgeting flag. Optionally enter the date range.
In this screen, in R12, you can also enter an Alternate Account, which is a replacement combination to use instead by the Journal Import program and the Create Accounting program in Subledger Accounting to replace the original account combination when disabled or end-dated..
3.2. Automatically
2. Optionally define Cross Validation Rules.
3. Compile the Flexfield Structure.
Step 1 - Check Allow Dynamic Inserts on the Key Flexfield Segments form.
Responsibility: General Ledger Super User
Navigation: Setup > Financials > Flexfields > Key > Segments
Navigation: Setup > Financials > Flexfields > Key > Segments
Step 2 - Optionally define Cross Validation Rules.
Responsibility: General Ledger Super User
Navigation: Setup > Financials > Flexfields > Key > Rules
Navigation: Setup > Financials > Flexfields > Key > Rules
Step 3 - Compile the Flexfield Structure.
This step is identical to previous Step 6 from How to create an Accounting Flexfield Structure (see above)
4.1. Defining your Account Structure
The
Accounting Flexfield has several special requirements and limitations
for its definition. Follow these recommendations carefully, since an
incorrectly-defined Accounting Flexfield will adversely affect your
chart of accounts, and application features:
1. Define your Accounting Flexfield value sets using the Define Value Set form.
1. Define your Accounting Flexfield value sets using the Define Value Set form.
· You
must specify a format type of Char for the segment value format type.
If you want to use numbers, choose Char and allow alphanumerics. The
Accounting Flexfield does not support format types other than Char.
· We recommend that you set Right-justify Zero-fill Numbers to Yes for value sets you use with the Accounting Flexfield.
· Value
sets for the Accounting Flexfield must be independent, table, or
dependent-type value sets. Do not use value sets with a validation type
of None, Pair, or Special for the Accounting Flexfield.
· We
recommend that you allow parent values for segments in your Accounting
Flexfield. Parent values are used to create summary accounts and to
increase the productivity of Oracle Applications.
2.
Set the Allow Dynamic Inserts option. If you want to allow adding new
accounts automatically as you enter them in transactions, including when
you define a set of books, set this option set to Yes. To require users
to define all accounts manually, set this option to No.
3. Define your Accounting Flexfield segments. You can define up to 30 segments for your account structure. You must define at least two segments for your account structure, one for the balancing segment and one for the natural account segment (the two required flexfield qualifiers).
3. Define your Accounting Flexfield segments. You can define up to 30 segments for your account structure. You must define at least two segments for your account structure, one for the balancing segment and one for the natural account segment (the two required flexfield qualifiers).
· When
specifying the column you want to use for your Accounting Flexfield
segment, do not use any columns other than those named SEGMENT1 through
SEGMENT30.
· You
must enter a value set in the Value Set field for each segment of the
Accounting Flexfield. Value sets for the Accounting Flexfield must be
independent, table, or dependent-type value sets. Do not use value sets
with a validation type of None for the Accounting Flexfield.
· You must check the Required check box for each segment.
· You must check the Display check box for each segment.
· The segment you use as a balancing segment must be an independent segment (it cannot use a dependent value set).
4.
Define your flexfield qualifiers for your Accounting Flexfield. Oracle
Applications uses flexfield qualifiers to identify certain segments in
your Accounting Flexfield. You specify your flexfield qualifier values
in the Qualifiers zone of the Define Key Flexfield Segments form.
· You
should never change the flexfield qualifier of one segment once it has
been saved. This may cause major inconsistencies with the existing data.
5.
Define the natural account segment. A natural account segment contains
values representing account types, such as cash, accounts receivable,
product revenue and salary expense. Check the Natural Account checkbox
to indicate the segment you are defining is your natural account
segment. You define only one natural account segment in your account.
6. Define the balancing segment. Oracle Applications uses your balancing segment to ensure that all journals balance for each value of your balancing segment. Oracle Applications also use your balancing segment to ensure that entries that impact more than one balancing segment use the appropriate intercompany or interfund accounting
6. Define the balancing segment. Oracle Applications uses your balancing segment to ensure that all journals balance for each value of your balancing segment. Oracle Applications also use your balancing segment to ensure that entries that impact more than one balancing segment use the appropriate intercompany or interfund accounting
· Indicate
whether the segment you are defining is a balancing segment. You can
define only one balancing segment for an account. The segment you use as
a balancing segment must be an independent segment (it cannot use a
dependent value set).
7.
Define the Cost Center segment. Cost centers indicate functional areas
of your organization, such as Accounting, Facilities, Shipping, and so
on. Check the Cost Center checkbox to indicate the segment you are
defining is a Cost Center segment.
8. Define your Accounting Flexfield segment values. Be sure to enter parent, rollup group and level information, and hierarchy details, if appropriate, for your segment values. Be sure you do not assign overlapping ranges of child values to the same parent value. You use rollup groups to create summary accounts.
8. Define your Accounting Flexfield segment values. Be sure to enter parent, rollup group and level information, and hierarchy details, if appropriate, for your segment values. Be sure you do not assign overlapping ranges of child values to the same parent value. You use rollup groups to create summary accounts.
· Decide
your segment hierarchy before you create parent and child segment
values. You cannot change a child value to a parent at a later time or a
parent value to a child, as it could cause program errors or balances
corruption.
9. You can use the Account Hierarchy Manager to manage the hierarchies with a graphical tool.
Responsibility: General Ledger Superuser
Navigation: Setup > Financials > Accounts > Manager
Responsibility: General Ledger Superuser
Navigation: Setup > Financials > Accounts > Manager
4.2. Changing the flexfield definition
Changing
your flexfield definition once you have used it to acquire data can
cause serious inconsistencies with the existing data.
In general, once you have setup and begun to use a flexfield, you should never change anything about its structure or its value sets (other than defining, enabling, and disabling values, shorthand aliases, and cross-validation and security rules). You need to make sure not to invalidate your existing flexfield data. Before you make such a change, you should back up all of your existing data, including Oracle Application Object Library data, before attempting any value set changes.
Oracle Applications prevents you from inadvertently invalidating your flexfield value set data by preventing you from deleting an existing value set under some conditions. If you define and save a value set, and then, immediately re-query it, you can delete the value set.
However, you cannot delete the value set if you have:
In general, once you have setup and begun to use a flexfield, you should never change anything about its structure or its value sets (other than defining, enabling, and disabling values, shorthand aliases, and cross-validation and security rules). You need to make sure not to invalidate your existing flexfield data. Before you make such a change, you should back up all of your existing data, including Oracle Application Object Library data, before attempting any value set changes.
Oracle Applications prevents you from inadvertently invalidating your flexfield value set data by preventing you from deleting an existing value set under some conditions. If you define and save a value set, and then, immediately re-query it, you can delete the value set.
However, you cannot delete the value set if you have:
· assigned it to a key or descriptive flexfield segment.
· assigned one or more values to it (even if it is not assigned to a segment)
· assigned a security rule to it (through the segment to which your value set is attached).
· assigned it to a FlexBuilder parameter.
4.3. Changing between Independent and Table Value set
You
can make these changes as long as you ensure that the new value set
contains every single value that the old value set contained. If you are
missing any values that had been in the original value set, you will
get error messages upon querying up old code combinations whose values
are now missing.
You can make the following changes:
You can make the following changes:
· Independent to Table
· Table to Independent
4.4. Changes you should never make
You should never make these types of changes because you will corrupt your existing flexfield combinations data:
· Independent to Dependent
· Dependent to Independent
· None to Dependent
· Dependent to Table
· Table to Dependent
Please
remember to back up all of your existing data, including Oracle
Application Object Library data, before attempting any value set
changes.
Document the detailed steps for setting up the Accounting Flexfield:
· creating value sets,
· segments
· accounting flexfield structures
· adding new values to existing segments
· creating code combinations.
No comments:
Post a Comment