JDeveloper 18.104.22.168.0 has a new tab in the View Objects Editor - Business Rules.
easily tend to make people misunderstand that this Editor can be used
for adding validation rules for the attributes in the View Object.
However, it is not true.
Lets check out what this editor is all about. As the online help for this page states
to create and maintain business rules based on Groovy Language
expressions and declarative validation rules for this view object
- Validators for transient attributes
- Bind variable default value expressions for SQL queries
- Bind variable value mappings for view accessors
- Transient attribute value expressions
- Transient attribute value expression recalculation conditions
- Attribute default value expressions
We'll see how we can use this editor to edit different types :
Transient Attributes :
We can use this editor for a. adding validation rules, b. edit default value expression
a. As like the Entity Attributes, we can add many validation rules for the transient attributes in VO as well.
the above image, EmpType is a transient attribute on Emp VO.We can see
there are two rules added. First one is a validation rule (List
Validator), restricting the user to enter either one of the value
specified for the attribute. Second one is the default value expression
for the attribute. Upon selecting the node, the default value groovy
expression would become editable in the Script Expression field below,
wherein we can modify it and test the syntax as well.
Note : We
can add the validation rule only for the transient attributes which are
Updatable. Also, we can edit only the default values which are script
expressions only. Not the literal values.Bind Variables :
to the transient attributes, we can use this editor for modifying and
testing the default value expression for the Bind Variables of the VO as
the above example image, we can see a Bind Variable (Bind_Hiredate)
added to the Query, which has the default value expression as
Using this editor, we can modify this expression and test the syntax.View Accessor :
we have a bind variable to the VO and use it as List Data Source for
any of the attributes in the VO, we can use this editor to change the
value of the bind variable in the View Accessor.
the above example image, we have couple of Bind Variables in the View
Accessors (they are used as Lists and Dependent Lists for this View
Object). Using this editor, we can edit the values of those bind
We can also use this editor for modifying and testing the default value expression on the VO attributes and the re-calculation conditions.