Skip to main content

Optimizing properties for report performance 


8 Tasks

5 mins

Visible to: All users
Advanced English
This content is now archived and is no longer updated. Progress is not calculated. Pega Cloud instances are disabled, and badges are no longer awarded.


Front Stage wants to determine if they should outsource parking services to an external vendor. Jake Schofield, the Senior Vice President of Operations, asks you to develop a report to track parking data for every event during the last six months. The number of events can be large, especially during the summer months. Parking fees are a big source of revenue for Front Stage. Depending on the size of the event, Front Stage supplies up to 50 parking attendants for the event. These resources may be better allocated elsewhere in the organization.

Jake wants to have this information available as a line chart when he opens the Event Booking application each morning. You assign the task of creating this report to Joe, a system architect on your team. You want to make sure the parking report is not only accurate, but performs well so Jake can access the data he needs to make an informed business decision. You review Joe's work when he completes the report.

The following table provides the credentials you need to complete the exercise.

Role Operator ID Password


Admin@Booking rules

Review the configuration of the Parking History report. Using a production sized data set, ensure the report is displayed significantly faster after optimization. Provide a long-term recommendation on how to implement these type of reporting requirements. 

Detailed Tasks

1 Detailed steps

Import the Parking Report branch ruleset

  1. In your exercise system, log on as Admin@Booking.
  2. From the Related Contents panel in this lesson, download the Parking Reports branch ruleset file.
  3. Import the branch ruleset file.
  4. Add the branch ruleset to the Booking application.
  5. Save the Booking application rule.

2 Reset report data access defaults

For the purpose of the exercise, the report settings for the application allow the application to return up to 5000 records. The branch ruleset includes this change.

  1. In the App Explorer, select FSG-Booking-Work-Event > Reports > Report Definition > ParkingHistory to open the ParkingHistory report definition.
  2. On the ParkingHistory report definition, click the Data Access tab.
  3. Scroll to the General data access settings section.
  4. Click Restore defaults. This resets the default according to the report settings configuration.
  5. Save the report definition.
  6. Log off to update the settings.

3 Create Event Booking cases

  1. Log in as Admin.Booking.
  2. In the App Explorer, select Event > Technical > Activity > CreateEventBookings. The application displays the CreateEventBookings activity.
  3. In the record header, click Actions > Run. The parameters for the activity are displayed.
  4. For the maxRecords parameter, enter 2000 in the Value field.

  5. Run the activity again. This may take 1-2 minutes to complete. The application displays a green check mark when complete.
  6. In the App Explorer, click the Event class. The application displays the newly created event cases

Optimize Reporting
Note:  From the Related Contents panel in this lesson, download the Delete FSG cases .zip file. The file contains SQL commands you can use to delete this data from your environment after you have completed this exercise.


4 Record performance of the Parking History report

  1. From the App Explorer, open the ParkingHistory report.
  2. At the bottom of DEV Studio, click the Performance icon. The application opens the Performance tool in a new window.
  3. In the Performance tool, click Reset. The application sets all readings to zero.

    Add reading
  4. Return to the ParkingHistory report.
  5. Click Actions > Run to display report results.

  6. Return to the Performance tool.
  7. Click the Add Reading.

    A DELTA row is displayed. Note the RDB I/O Elapsed time.

5 Improve Parking History report performance

  1. Review the ParkingHistory report definition configuration. Note the report contains two unjustified warnings.
  2. Identify possible improvements to the report, such as optimizing columns included in the report.
  3. Check out the ParkingHistory report to your local ruleset.
  4. Implement improvements to this report.
  5. Rerun the Performance tool to determine if the report is running more efficiently after making the improvements.
Tip: Optimizing columns changes the database schema of the application. You can create a snapshot of your local virtual machine to compare the performance to compare the performance before and after optimizing columns.

6 Solution considerations

The computing resources needed to render the chart report can also be costly. Watch for browser interaction alerts during your testing. Removing the chart can also result in performance improvement.

If FSG expects the record set to be greater than 500 records, your long-term recommendation may include exporting parking data to an external warehouse and linking to that report instead of embedding the chart in the user's portal.

7 Verify your work

Optimizing columns should result in significantly smaller RDB I/O Elapsed readings.

8 Solution RAP

Available in the following mission:

We'd prefer it if you saw us at our best.

Pega Academy has detected you are using a browser which may prevent you from experiencing the site as intended. To improve your experience, please update your browser.

Close Deprecation Notice