Table of Contents

How to use the Column Populator utility in PRPC 6.x to Pega 7.1.9

The Column Populator is a command-line utility that allows you to update rows in PegaRULES database tables after schema changes have been made that expose a property as a database table column.

The utility can populate values for a newly exposed column and expose values that were previously stored only in the Storage Stream (BLOB) column. In addition, you can rebuild database indexes and Index- instances defined by Declare Index rules for the newly populated column as part of the same operation.

Typically, run the Column Populator immediately after making changes to the database table, whether the changes were made with the Modify Database Schema tool or by a database administrator. Until the Column Populator finishes, data values in the table are "out of sync" because some properties might have null values when you look at the column values, but might have non-null saved values if the BLOB column (pzPVStream) is expanded into a clipboard page.

The Column Populator utility does not acquire a PRPC lock on the database table rows that it updates. Do not run the Column Populator when user activity or other activity might be updating the same tables that the Column Populator is updating.

Version usage information

Users of PRPC 5.1 - 5.5 can populate newly exposed database columns by using the Database Column Populator, which is part of the PRDBUTIL servlet.

Users of PRPC 4.1 - 4.2 can populate newly exposed database columns by using the Resaver servlet. For more information, see:

Suggested approach

In this example, a new data table (AlphaCorp-ItemList) has been created, and to support reporting needs, the scalar properties must be exposed as columns in the database.

To use the Column Populator utility:

  1. Identify the classes (tables) to be processed by the utility. The Column Populator utility can process specifically defined concrete classes and any child classes that are related by pattern inheritance.
  2. Extract the contents of the Process Commander software distribution file, PRPC_DistributionImage.zip, into a directory. In this example, the directory is <PEGA_HOME>.
  3. Edit the <PEGA_HOME>/scripts/utils/prpcUtils.properties file to provide database connection details. Enter the following properties in the COMMON PROPERTIES - DB CONNECTION (REQUIRED) section: Common properties section
  4. In the SETTINGS FOR EXPOSE TOOL section, complete the expose.classes.included line by listing the class for which columns will be exposed. Save the file.
    Settings for Expose Tool section

For information about the other properties, see the prpcUtils.properties file or the PRPC Developer Help.

  • pega.jdbc.driver.jar —The full path to the JDBC driver JAR file.
  • pega.jdbc.driver.class —The Java class name of the JDBC driver.
  • pega.database.type — Select the database vendor from the list of supported vendors.
  • pega.jdbc.url — The connection URL for your database. Refer to the examples in the prpcUtils.properties file.
  • pega.jdbc.username and pega.jdbc.password —The user name and password to use when connecting to your database
  • pega.user.username and pega.user.password — The PRPC user name and password to use for the run-time context of the operation. This user's Access Group will be used instead of the App Requestor's access group.
  1. At the command prompt, change the directory to <PEGA_HOME>/scripts/utils. Run the prpcUtils.bat file with the expose argument:

    As the utility runs, you will see output that ends with the following text:

expose:
[echo] PegaRULES Process Commander Expose Columns complete.

BUILD SUCCESSFUL
Total time: 1 minute 31 seconds
Exiting with NO Error

The JVM must be restarted for these changes to take effect.

100% found this useful

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.