Oracle Fusion GL Controls: CVR vs Code Combination Sets vs Related Values

1. Introduction

Designing a robust Chart of Accounts (COA) in Oracle Fusion ERP is not just about defining segments but also, it’s about controlling how those segments interact and producing right accounting and avoiding correcting entries that accountants will need to do. Three key mechanisms are commonly used:

·         Value Sets (Independent and Related/Dependent)

·         Cross-Validation Rules (CVR)

·         Code Combination Sets

While they are often used together, misunderstanding their purpose leads to over-engineered solutions, high maintenance effort, and post go-live challenges.

This blog breaks down their differences, real-world usage, pros/cons, and best practices with examples.

2. Conceptual Overview

2.1 Value Sets (Independent & Related)

Value sets define the valid values for each segment in the COA.

·         Independent Value Set: Standalone list (e.g., Company)

·         Related (Dependent) Value Set: Values depend on another segment

  •    You can only use child (leaf node) segment values.
  •    Feature is direct comparison between segment values. No ranges, wildcards, or tree operators are supported 

 Purpose: Control what values are allowed and guide users during entry. You must define independent value sets for each Chart of account segments. Optionally you can define related value sets to control what values can be selected in dependent values set. Example Department values depend on Company.

Company Value Set: 100, 200 - Department Value Set (Dependent): - Company 100 → HR, FIN - Company 200 → OPS, IT  

 Setup:  

  • Task: Manage chart of account value sets, search for value set and then click on plus sign to create relation ship for related value set 
  •  Save and Click on plus sign to add values 
 

2.2 Cross-Validation Rules (CVR)

CVRs restrict invalid combinations of segment values. Cross Validation Rules define a complex relationship between segment values in two or more segments. Each rule consists of a condition and validation filter. The condition filter identifies which combinations of segment values are subject to the rule. The validation filter defines which dependent segment values are valid to combine with them. Situation when best to use CVR would be when the relationship between segment values applies to only a subset of the condition’s values. For example, for a few Companies, there are a limited number of valid Cost Centers. For the majority of Companies, all Cost Centers are valid also there are range that reflects the relationship between segment values example balance sheet account have range of values between 1000 to 3999.

Purpose: Prevent invalid combinations from being created or used. 

Example: Keep cost center as 0000 No department for Balance Sheet Accounts.

Setup:

  • Task:  Manage Cross-Validations 
  • Chose the Chart of Account and then click on Plus sign to add new rule    
  • You will need to provide condition and validation and then make sure the rule is enabled for it to apply on new or existing code combinations.
  • You can use parent values in CVR rule if you have defined hierarchy and linked to the chart of account instance, this simplifies rules and minimizes maintenance since many changes to a hierarchy will not impact Cross Validation Rules that use it. I will cover detail steps as how to load CVR and CCS in a separate blog.

 Avoid Cross validation rules when:

The relationship between two segments requires thousands of rules to define. Creating a new combination evaluates each Cross Validation Rule. A huge number substantially increases the time it takes to create new account combinations. When you wish to maintain your account combination validation rules in EDMCS that does not support complex validation rules.

2.3 Code Combination Sets (CCS)

Cross-Validation Combination Sets define up to five validation segments whose segment value combinations are allowed or disallowed. The validation segment order should mirror the chart of accounts definition.

For each allow Combination Set, you must define all valid (partial) combinations of segment values. Other combinations are considered invalid. Conversely, all undefined combinations for a disallow Combination Set are considered valid.  Best to use when account combination business rules don’t follow discernible patterns. There are just lists of valid or invalid combinations. When there are only limited number of combinations of allow and disallow combinations are there so that there would be ease in maintenance and performance will not be a problem.
 
 
Example: List of funds that can be used with specific entities. 
 
Setup: 
  • Task: Manage cross-validation ; select Chart of account and then click on plus sign to add combination of segments. You are required to select two and optionally max you can select 5 segments.
  
 
 
  •  You will have to load the allowed validation combination for segments through spreadsheet by downloading the template by clicking download combinations and then fill in spreadsheet and click on action and then upload followed by action->Manage to import unprocessed combinations. I will cover the details in my next blog.

Note: You must enable Auditing for cross validation rules and combination setups if you want to manage cross validation rules through FBDI otherwise you will get error while activating the combination sets. Setup Task: Manage Audit Policies

 

 Avoid Cross validation rules when:

When segment value hierarchy or range reflects the relationship between segment values. When the business rule depends on more than five segments. 
 

3. Key Differences with Real-World Perspective

Feature

Cross-Validation Rules (CVR)

Code Combination Sets (CCS)

Related Value Sets

Primary Purpose

Prevent invalid combinations and can disable bad combinations

Prevent invalid combinations and can disable bad combinations

Define valid values and relationships

Level

Across segments

Across combinations, max up to 5

Combination of two segment

When Applied

During entry/posting

During entry/posting

During value selection

Prevents Invalid Data

Yes, for new combinations but if combinations where created before the rule and are active then allowed to be used.

Yes, for new combinations but if combinations where created before the rule and are active then allowed to be used.

Yes, during entry only

Maintenance effort

High

Medium

Low

Debugging

Difficult

Moderate

Easy

Flexibility

Very flexible and allows range, pattern, parent and child. Inclusive and exclusive conditions.

Only child values are allowed with allowed and disallowed options.

Only child values are allowed in the related values with one-to-one relation and do not allow range etc.

 
 

4. Conclusion

 A well architect-ed Oracle Fusion COA control strategy is not about using more rules rather it’s about using the right tool for the right purpose.

Combination Sets and Cross validation rules are powerful method to validate your new account combinations and clean up or disable bad combinations. In many cases, they will simplify rule maintenance and improve performance. However, Related Value Sets has appeared to be good option for limiting users or guiding them to enter valid values during the data entry.

Ultimately, design it right with mix of above control options, and post go-live maintenance becomes significantly easier.

Comments

Popular posts from this blog

Project Centric Customer with budgetary control: Update expense report code combination based on project when project details are in chart of accounts.

Oracle Fusion GL Journal Conversion: Practical Approach and Best Practices