Order of Precedence for Format Rules
It's possible to have multiple rules specified in the same location on a form which could impact how formatting is displayed. For example, a form could include a Groovy rule, a data validation rule, Web form styles, and a format rule all at the same location. Therefore, there's an order of precedence for displaying rules in forms.
The order of precedence is as follows:
-
(P1) Groovy rule
-
(P2) Data Validation rule in the Format/Data Validation Rule Builder
Note:
For a cell that inherits data validation rules that are defined in multiple places (grid, row, column, or cell level), the rule that is closest to the location of the rule definition wins priority. So if there is a rule applied at the cell level, that rule wins. Next is column level, then row level, and then grid level.
-
(P3) Oracle Smart View for Office cell styles
-
(P4) Format rule in the Format/Data Validation Rule Builder
Note:
Same as the note above. For a cell that inherits rules that are defined in multiple places (grid, row, column, or cell level), the rule that is closest to the location of the rule definition wins priority. So if there is a rule applied at the cell level, that rule wins. Next is column level, then row level, and then grid level.
-
(P5) Smart View Custom formatting (not applicable on Web forms)
Considerations When Merging Rules
When merging formats from different rules (format and data validation rules), the rule with merged formatting is uplifted to the priority of a data validation rule (P2). In other words, if there is a P4 format rule, a P2 data validation rule, and a P3 style defined for the same cell, the formatting for the P4 format rule will display instead of the P3 style because the merging of the formatting and validation rules uplifted the format rule to a P2 priority level.
Tooltips and valid flags will be that of the higher priority data validation rule. Only formats are merged.
If a format is not set for a property, it will take on the properties of an incoming format regardless of the type of rule it is (format only or data validation). For example, if a left border is not set, it will be set with the incoming left border value. Each border is treated as a separate property. Also, left border thickness/style count as the same property.