Usage of D_CPMPortalRecents and D_CSRecents Data Pages in Pega Customer Service (8.1)

Hello everybody!

While we are having a conversation on a related topic on this thread, I found this Pega article:

I'm using Pega 8.1 with the Customer Service framework, and I see that the D_CPMPortalRecents data page, which I understand is meant to contain the cases opened as tabs in the portal, is always empty. But, the Data Page D_CSRecents Data Page actually contains items.

As can be seen in the screenshot, I have one tab opened in the Interaction Portal. This adds an item inside D_CSRecents, but not D_CPMPortalRecents. I have the two following questions:

  • Is D_CPMPortalRecents not in use anymore since Pega 8.1?
  • What is the usage of D_CSRecents?

Thanks in advance and have an awesome day!

***Edited by Moderator Marissa to update platform capability tags****


Keep up to date on this post and subscribe to comments

May 23, 2019 - 6:55pm


Recents functionality is completely revamped in Pega CS 8.1 release. The old recents infrastructure has been withdrawn.


D_CSRecents is the new data page added. This page is used to present service case recents in the interaction portal across all the channels. This new data page is light weight in design and supports all the existing features like queued tasks, maintain the order of recents, closing a recent/task etc.



May 23, 2019 - 7:12pm
Response to SusanLiu

Hello @SusanLiu!

Thank you so much for your answer! It is great to know this.

I'm currently working on an implementation to create a work object and open it in a new tab through an activity. I think when D_CPMPortalRecents was used (Pega 7.3) there were two data transforms used to add a new tab:

  1. CPMUpdatePortalRecents
  2. pyAddRecentListItem

Are these two rules also not in use anymore to add new tabs? If so, what is the OOTB procedure I have to follow as part of the framework to add a new tab through an activity? For my requirement I cannot use actions in UI.

Thank you!

May 23, 2019 - 7:41pm

We have two master utilities CSUpdateDriverRecents and CSUpdateDriverRecentsStatus which are responsible for updating the list.

CSUpdateDriverCaseRecents data transform -- Update intent recents whenever case is opened/closed
CSUpdateDriverRecentsStatus -- This DT is used to update  properties when service case switches
CSAddIntentToDriverRecents --  This updates D_CSRecents whenever a case is launched.It checks the existence of the case in the list or in driver or a new one. Once found, it'll append the entry and update the values.
CSDeleteFromDriverRecents -- This updates the status of case when completed or closed. Also, takes care of persisting the cases in interaction WO when interaction is closed.


May 24, 2019 - 3:35pm
Response to SusanLiu

Thank you so much for your reply.

I tried with the rules you mentioned but I wasn't able to see a new tab being opened in the Interaction Portal. However, the D_CSRecents has the work object I created.

I also traced the creation of an Interaction via the New+ menu and I see none of the rules you mentioned were executed. The append of the new case to D_CSRecents is happening on step 4 of CPMLoadInteractionLog.

Is there something else I need to execute besides appending the case to D_CSRecents in order to open a new tab in the Interaction portal?

Have a nice day!