As your application project develops, it is sometimes useful to recombine assets from several RuleSets into a single RuleSet. The RuleSet Maintenance wizard helps you do this efficiently and accurately, and helps update all data instances that referred to the original RuleSets so that they will refer to the new one.
A distributed development team has been assembling marketing assets for different divisions of one company, using separate RuleSets for each division. The company wants to simplify asset management and eliminate duplication by combining the marketing resources into a single RuleSet.
Here is the process for merging RuleSet versions, or whole RuleSets. (This example shows merging RuleSet versions, but the same procedure holds for whole RuleSets):
- Make sure that the RuleSets or RuleSet versions you want to merge are not locked, and that none of the rules they contain are checked out. Use the Checked Out Rules gadget to review the rules that are currently checked out: Click the Pega button ( ) and select Application > Development > Checked Out Rules.
- Make a zip file of the RuleSets or RuleSet versions, so you can reimport them if it turns out the merge was not a good idea.
- Click the Pega button ( ) and select System > Tools > Refactor RuleSets > Copy / Move / Merge RuleSet.
- In the first set of radio buttons, select the Merge button.
- In the second set of radio buttons, choose Entire RuleSets or RuleSet Versions. If you choose Entire RuleSets, the Available Source RuleSet(s) list displays the RuleSets to which you have access. If you choose RuleSet Versions, the list displays the available RuleSet versions.
- Move the source RuleSets or RuleSet versions that you want to merge into the Order of Precedence... list. You can do this by double-clicking entries in the left list, by highlighting one or more entries and using the arrow control between the lists, or by dragging and dropping your selection from list to list.
- The order of the source RuleSets or RuleSet versions is very important. The wizard accepts the rules that it finds in the top source in the list. It discards all rules of the same name in the following RuleSets or RuleSet versions, even if they have a higher version number. Verify that the order of precedence is as you want it before proceeding.
- At the right of the form, select or create the target RuleSet name, and specify a version to merge into. Note that merging into an existing RuleSet version automatically overwrites any rules in the target that have the same name as the rules coming from the source(s). This is different from the behavior when you copy or move RuleSets or RuleSet versions: in those cases you can specify whether or not to overwrite target RuleSet rule instances with the same name as source rules.
- At the bottom right, direct the wizard to delete or retain the source RuleSets or RuleSet versions, once the merge operation is complete. The default option is to retain the sources.
- When you are working with RuleSet versions, the Copy missing RuleSet Prerequisites checkbox appears at the bottom of the first screen of the wizard:
Check this checkbox to have the wizard copy any prerequisite RuleSets that the RuleSet version that results from your process will require.
- If you are merging RuleSet versions, a display at the bottom of the screen lets you select the non-versioned rules you want to modify as a result of this process (see above). Click the Get Counts button to review how many non-versioned rules of each type are affected by merging the RuleSet versions you have placed in the second list. Click on any non-zero number in the Count column to see a detailed list of the affected rules in that category. If you change the selection of RuleSet versions, click Get Counts again to update the display.
You can direct the wizard to ignore one or all of the categories by unselecting the checkboxes to the left of the Type entries. The wizard will not refactor rules in types that are not checked.
- Click Next >> to continue to the next screen, or Cancel to abandon the operation. The confirmation screen appears:
Verify that the settings target and source RuleSets are correct.
- You have the option of running the wizard as a background process: this can be useful when moving or merging RuleSets containing a large number of rules, as the process may take several minutes to complete. To select this option, click the Yes radio button beside the Run as a background processlabel.
Process Commander sends an email notifying you when the process is complete. If no email server has been set up for Process Commander and you select this option, you will see a message like this:
You can still run the wizard as a background process, but if your email system is not yet set up for it, Process Commander will not be able to send you an email when the process is complete. The wizard screen, however provides you with the ID of the process so you can review it at any time, and displays a completion report at the end of the process.
- Click Merge. The wizard performs the merge you have specified, and then adjusts references to the source RuleSet versions in the following rules or data instances throughout the system to match the versions that exist after the merge:
- RuleSet Versions (in the “prerequisite” field)
- Rule-Application (in lists in the General tab)
- Organization data instance (although it is possible to list RuleSet versions here, this practice is deprecated)
- Access group data instances
Use the links provided to review the lists of processed rules and data instances. To exit the wizard, click Done.