How to Model and Configure List Builders

26-30 Modeling and Implementation Guide for Oracle Business Process Management Figure 26–26 Specific List-Builder Configuration ■ Rules that define the list builder and the list-builder parameters. In this case, the list itself is built using rules. Figure 26–27 shows a sample configuration. Using Approval Management 26-31 Figure 26–27 List Builder and Parameters Configuration In the rule dictionary, rule functions are seeded to facilitate the creation of list builders. These functions are the following: ■ CreateResourceList ■ CreateSupervisoryList ■ CreateManagementChainList ■ CreateApprovalGroupList ■ CreateJobLevelList ■ CreatePositionList In Rules Designer, model your conditions and, in the action part, call one of the functions above to complete building your lists, as shown in Figure 26–28 . 26-32 Modeling and Implementation Guide for Oracle Business Process Management Figure 26–28 Modeling Conditions in Rules Designer The parameters for the rule functions are similar to the ones in JDeveloper modeling. In addition to the configurations in JDeveloper, some additional options are available in Rules Designer for the following attributes: ■ startingPoint and topApprover - In JDeveloper, starting point and top approver are specified as users. In Rules Designer, you can build a HierarchyPrincipal as the starting point and top approver. To build a Hierarchy Principal, use the HierarchyBuilder function, as shown in Figure 26–29 . Using Approval Management 26-33 Figure 26–29 HierarchyBuilder Function ■ autoActionEnabled and autoAction - From Rules Designer, you can configure that the users resulting from a particular list builder can act automatically on the task. ■ responseType - If the response type is REQUIRED, the assignee has to act on the task; otherwise, the assignment would be converted to an FYI assignment. ■ ruleName - Rule name is used to create an assignment reason. Rule set name + _ + rule name is used as a key to look up the resource bundle for a translatable reason for assignment. This resource is looked up first in the project resource bundle, then in the custom resource bundle, and last in the system resource bundle. ■ lists - This is an object that is a holder for all the lists that are built. Clicking this option shows a pre-asserted fact Lists object to be used as the parameter. Figure 26–30 and Figure 26–31 show examples of rules. Figure 26–30 Example Rules 1 26-34 Modeling and Implementation Guide for Oracle Business Process Management Figure 26–31 Example Rules 2

26.3.6.4.2 How to Make Approver Substitutions List substitution enables you to substitute

users, groups, and application roles that appear in a list. List substitution is available from Rules Designer and does not require any configuration in JDeveloper. In each rule dictionary there is a pre-seeded rule set named SubstitutionRules. Also in the rule dictionary, a Substitute rule function is seeded to configure list substitutions. Table 26–3 lists the Substitute functions and their parameters. Figure 26–32 shows a sample approver-substitution action. Note: If multiple rules fire, the list builder created by the rule with the highest priority is selected. If the rules have the same priority, they are fired in random order, the first one fired is selected. WARNING: An improper or incomplete rules definition in a list-creation rule set can cause run-time errors. Errors can be caused by the following: ■ No rule was defined in the rule set. ■ None of the conditions defined in the rule was met. Ensure that rules are properly defined to handle all conditions. Table 26–3 Substitute Function Parameters Parameter Description fromId The ID of the usergroupapplication role from which to substitute. toId The ID of the usergroupapplication role which to substitute to. ruleName Used to create an assignment reason. Rule set name + _ + rule name is used as a key to look up the resource bundle for a translatable reason for assignment. This resource is looked up first in the project resource bundle, then in the custom resource bundle, and last in the system resource bundle. substitutionRules An object that is a holder for all the substitutions. Clicking this option shows a pre-asserted fact SubstitutionRules object to be used as the parameter. Using Approval Management 26-35 Figure 26–32 Sample Approver-Substitution Action

26.3.6.4.3 How to Make List Modifications List modification enables you to extend or

truncate the Job Level and Position list builders from rules. List modification is applied after the list is created. This feature does not require any configuration from JDeveloper. In each rule dictionary there is a pre-seeded rule set named ModificationRules. This rule set is called only when the Job Level and Position list builders are asserted in the list that created the rule sets. Only the highest priority applicable rule is applied. In Rules Designer, rule functions are seeded to facilitate list modifications. These functions are the following: ■ Extend ■ Truncate These rule functions are shown in Figure 26–33 . Figure 26–33 Rule Functions Extend and truncate parameters are listed in Table 26–4 and Table 26–5 . 26-36 Modeling and Implementation Guide for Oracle Business Process Management Figure 26–34 shows a sample list-modification action. Figure 26–34 Sample List-Modification Action

26.3.6.4.4 How to Define Repeating-Node Attributes of a Business Rule Condition When

defining a business rule, you can base a rule condition on an attribute that comes from a repeating node. For example, there can be multiple line items for each purchase-order header in a purchase-order scenario. In this case, Table 26–4 Extend Function Parameters Parameter Description ifFinalApproverLevel The level at which final approver is at or below. extendBy The number of levels to add to the final job level. ruleName Used to create an assignment reason. Rule set name + _ + rule name is used as a key to look up the resource bundle for a translatable reason for assignment. This resource is looked up first in the project resource bundle, then in the custom resource bundle, and last in the system resource bundle. lists An object that is a holder for all the lists that are built. Clicking this option shows a pre-asserted fact Lists object to be used as the parameter. Table 26–5 Truncate Function Parameters Parameter Description afterLevel The level after which to truncate. ruleName Used to create an assignment reason. Rule set name + _ + rule name is used as a key to look up the resource bundle for a translatable reason for assignment. This resource is looked up first in the project resource bundle, then in the custom resource bundle, and last in the system resource bundle. lists An object that is a holder for all the lists that are built. Clicking this option shows a pre-asserted fact Lists object to be used as the parameter.