How to create a Declare Index rule for an embedded property with the Property Optimization tool
By default, Pega Platform™ stores properties that are embedded in a Page List or Page Group property in a BLOB ("Binary Large OBject") column in the database. In order to make these properties available for reports, and to optimize them for processing in other operations, the Property Optimization tool optimizes ("exposes") the values of an embedded property by creating a concrete Index- class, properties for the new class, and a Declare Index that allow Pega Platform fast access to the property values without having to process the entire BLOB entry.
You can access the Property Optimization tool from the context menu for a property in the Application Explorer. Right-click the property that you want to expose, select Optimize for reporting from the context menu, and Process Commander manages the appropriate processing as a background task.
Step-by-step instructions for exposing an embedded property are detailed below.
Prerequisites
To use the Property Optimization tool, your Pega Platform environment must be configured as follows:
- The prconfig.xml setting
database/AutoDBSchemaChanges
must not be set to FALSE.- By default, this property is not set in the proconfig.xml file.
- If your site wants to limit this type of operation,
database/AutoDBSchemaChanges
may have been added and set to FALSE in prconfig.xml.
- The production level of your system is 1 or 2.
- The database user used to access the PegaRULES database must have ALTER TABLE and CREATE TABLE permissions.
This user's username and password are specified in the data source definition defined in your application server for the jdbc/AdminPegaRULES JNDI location, if defined, or else the base user specified in the data source associated with jdbc/PegaRULES.- If the Admin user is defined, Process Commander attempts to use it for this operation. If the Admin user is not defined, Process Commander attempts to use the base user.
- If neither user is defined with the appropriate permissions, an error is generated.
- For more information, see the section Create JDBC Resources in your Process Commander Installation Guide, and How to provide CREATE TABLE and ALTER TABLE database privileges in an Admin database account.
How to expose an embedded property
To expose an embedded property:
- In the Application Explorer, locate the property.
- Right-click the property and select Optimize for reporting from the context menu.
- If multiple classes are available, the wizard lets you select the class in which to work:
If only one option is available, the option is selected automatically. - At the bottom of the same form, select the ruleset and version in which to save the declare index for the optimized property.
- Click
Note the warning message indicating that proceeding will begin optimization of the property that you selected. to proceed to the next step where you can review the class in which you are optimizing the property: - Click to optimize the property.
- When the process is complete, a completion message appears. Click to close the message.
The property is now optimized for use in reporting, filtering, and other processes.