I’m working on a requirement in Pega Infinity '24.2.5 using Constellation UI, and I’m currently stuck trying to implement an Open View/Preview behavior for nested embedded data.
My data structure is roughly:
Case
└── Embedded List (Abstract Class)
├── Row 1
│ ├── Property A
│ ├── Property B <-- should be clickable
│ └── Another Embedded List
│ ├── Item 1
│ ├── Item 2
│ └── ...
├── Row 2
│ └── ...
└── ...
My requirement is to click a property in a row and Open/Preview another View displaying the nested embedded list for that selected row.
I’ve already tried creating the Table and adding the properties as columns, but when I configure the column, I don’t see any Open View / Preview or Display as link to object option.
I’m aware of similar Open View/Preview behavior when working with Insights. However, in this case, the data is embedded in the case and the classes involved are part of an existing abstract-class design that I am tasked to retain.
Is Open View/Preview supported for this type of embedded data? If not, what is the recommended Constellation pattern for displaying the nested list for the selected row?
You need to ensure that the abstract class’s single data page is created with a unique key of your record and “Is this page used for alternate key storage?” is set to true and a Linked Field is provided for the parameter as pyGUID.
Ensure that this single lookup data page will intake the unique ID parameter and returns you the matching record (From wherever it is fetching from. Could be an external integration, etc).
If the data is pulled from the Workcase (Single lookup page passing pyID) itself, then you also need to pass the pyID as well, so that you open the case to loop through the embedded page list and return the appropriate entry matching with the unique ID you have passed. Ensure to setup the linked field for this as well. pyID may be.
Ensure that the abstract class have this single lookup page configured in data designer under the Settings tab > Default Data Sources.
Under UX tab try to extend the Details view to show whatever fields you want to display for your data class.
The above setup should work for you. Let us know the outcome.
Hi JC, thanks for the explanation. I tried following the suggested approach, but when configuring the single-record Data Page/default data source for the abstract class, Pega prevents me from doing so with the validation error: “pyLookupClassName — Can not use abstract class as datasource.”
Since the class has to remain abstract in my existing design, could you clarify how the single lookup Data Page should be configured in this case? Also, does the pyGUID only need to be a unique property on each embedded page, or are you expecting it to be configured as an actual key on the data class?
I am guessing that the above mentioned setup might not be supported in 24. From v25, it seem that we should be able to do this.
Below is the setup for your reference. This is done in 26.1.1 in Community edition. Most probably you should be able to do the same setup in v25 as well, except the link in the table part. For that you might have to rely on a custom link component in table which accesses a view in data class using local action to show up more details in a modal dialog. But in v26, we already have that OOTB link functionality.
Alternatively for v25, you can use list view as well to fetch the records by passing the pyID to the data page but then, pega OOTB will not be able to pass the pyID to you single record data page and hence you will not be able to get the content for your case. So you will see the records in the table with link for your ID, but on Preview you will not be able to fetch the content.
I guess in v26, they have improved this functionality for embedded page list table and given link functionality and allowed us to pass additional params to fetch the content for a single record. May be it should have been extended from list view context as well.
Besides opening up that metaphorical can of worms, you’re need to is to see more details about embedded data? I have not seen anyone create a preview on embedded data (OOTB, without a DX Component) so I can only talk to ways you might achieve it in Constellation.
Prior to '26, I would be looking at using Insights and Embedded Data to show the data needed - it doesn’t give you all the UI View control you’d like but does at least get you the data. (see Some insights into Insights (and Explore Data)