Tuesday, May 14, 2013

Cross-validation Rule in Oracle

Defining Cross-validation Rule
Limitation of Cross Validation Rule

Your flexfield checks cross-validation rules while attempting to create a new combination of flexfield values (for example, a new Accounting Flexfield combination). Your cross-validation rules have no effect on flexfield combinations that already exist. If you want to disable an existing combination, you must disable that combination specifically using the appropriate window.

For example, you can disable an existing Accounting Flexfield combination using the Define Accounting Flexfield Combinations window.

Using Include and Exclude Ranges

Consider the following basics of cross-validation rules:
    • Combinations must pass all cross-validation rules.
    • Within each rule, combinations must be in at least one include range.
    • Within each rule, combinations cannot be in any exclude ranges.
In summary, a key flexfield value must fall within at least one include range and outside all exclude ranges to pass your validation rule.
Include
Your user can enter any segment value combinations that fall in the following range.
Exclude
Your user cannot enter any segment value combinations that fall in the following range.


Oracle Applications provides many key flexfields, such as the Accounting Flexfield, Location Flexfield and System Items Flexfield. In this essay, we use the Accounting Flexfield to present suggestions for designing your cross-validation rules, but you can use cross-validation rules for any key flexfield structure that has cross-validation enabled.

Determine Your Error Messages

For example, if you use the Accounting Flexfield, an incorrect combination can result from the user entering an incorrect department or an incorrect account. Maybe you intended to enter 100-4500 instead of 000-4500. Or, maybe you intended to enter 000-3500.
If you expect that most of the time the department will be wrong, define an error message such as, "Enter departments other than 000 with revenue accounts." If you expect that either segment is just as likely to be incorrect, define an error message that does not imply a particular segment is in error.
For example, "You have entered an incompatible department/account combination. Please re-enter."

Determine Your Error Segment

For example, if your account segment is most likely to be in error, define your error message to be, "Please enter only balance sheet accounts with department 000," and specify the cursor to return to the account segment.

Define Simple Rules

Avoid rules that control cross-validation across more than two segments, where possible.
For example, if you use the Accounting Flexfield, you may want to prevent using department 000 with accounts greater than 3999 for all balancing segment values except 99.

While you can define cross-validation rules that span two or more segments, keep in mind that it becomes more difficult to interpret cross-validation error messages and correct invalid key flexfield combinations as your rules encompass more segments.  

Difference between Cross Validation Rule and Security Rules

Security rule is applied at a responsibility/User level whereas Cross validation rule is applicable for the given accounting combination. Secondly, Cross Validation rules applicable on the whole combination whereas security rule works on a single segment.