How to embed Constellation view in Rule-PegaQ-Question rule

We’d like to reuse Constellation UI View rule in Questionnaire case type to collect address details of the customer. In Rule-PegaQ-Question rule we can only refer to custom section in Question layout and Answer mode.

We’re considering implementing approach described in the article Configuring a Constellation table in a Section when the Constellation view is added to a section displayed using pzLaunchView control.

Could you please comment on this approach, possible drawbacks and product plans when reuse of the existing views would be possible in Rule-PegaQ-Question rules?

Hi @Sergei Kart

Depending on the complexity of the embedded views, there could be performance implications, especially if the Constellation views are resource-intensive

@Sergei Kart

Could you please explore the option to leverage DX Component? Section rules may not look and feel the same as Constellation views.

The solution is found and is quite trivial.

Whenever new question page is being added the new rule Rule-PegaQ-QuestionGroup will be created OOTB and the sibling Rule-UI-View rule with the same name.

In order to embed existing Constellation View into the question page, open automatically generated Rule-UI-View, enable Mark as custom option and paste into pxViewMetadata field JSON with reference to existing view, for example:

{
 "name": "OrganisationContactDetails",
 "type": "View",
 "config": {
  "template": "DefaultForm",
  "ruleClass": Work-",
  "localeReference": "@LR WORK-!VIEW!ORGANISATIONCONTACTDETAILS"
 },
 "children": [
  {
   "name": "Fields",
   "type": "Region",
   "children": [
    {
     "type": "reference",
     "config": {
      "name": "OrganisationContactDetails_ContactDetails_1",
      "inheritedProps": [
       {
        "prop": "label",
        "value": "@L Contact Details"
       },
       {
        "prop": "showLabel",
        "value": true
       }
      ],
      "context": ".ContactDetails",
      "ruleClass": "Common-LDM-Entity-Contact",
      "type": "view"
     }
    },
    {
     "type": "TextInput",
     "config": {
      "value": "@P .ContactDetails.Name",
      "label": "@L Company Name",
      "required": true
     }
​​​​​​​.....