Skip to main content

         This documentation site is for previous versions. Visit our new documentation site for current releases.      

This content has been archived and is no longer being updated.

Links may not function; however, this content may be relevant to outdated versions of the product.

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

Updated on September 10, 2021

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,, into a directory. In this example, the directory is <PEGA_HOME>.
  3. Edit the <PEGA_HOME>/scripts/utils/ 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 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 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:

[echo] PegaRULES Process Commander Expose Columns complete.

Total time: 1 minute 31 seconds
Exiting with NO Error

The JVM must be restarted for these changes to take effect.
  • Previous topic Database column population using the Column Populator utility
  • Next topic Importing data into a Postgres database

Have a question? Get answers now.

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

Did you find this content helpful?

Want to help us improve this content?

We'd prefer it if you saw us at our best. is not optimized for Internet Explorer. For the optimal experience, please use:

Close Deprecation Notice
Contact us