Skip to main content

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.

Support Article

'SmartLabelForProperty' control does not display content

SA-2361

Summary



A column of repeat grid is configured to show additional details of the column values in a Smart Label. The control used for this purpose is 'SmartLabelForProperty'. If you hover over any value in this column, the functionality works fine. But when the filter overlay for this particular column is opened, the column values are shown in it. If you do a mouse over of the values a Smart Label is displayed which contains a message ' cannot render section'.

Error Messages



"Cannot Render Section"




Steps to Reproduce



1) Create a sample page list property, let’s say ‘MyPageListProp’.

2) Create a section and place a repeating grid inside it. Make the pagelist property created in step 1 as the source of this grid. Also, ensure that filtering is selected for the repeat grid.

3) Configure a column of this repeat grid to use 'SmartLabelForProperty’ control. This is an OOTB CPM UI control and belongs to PegaAppCA ruleset.
   Configure this control to display the content of a section.

4) Create a flow action that references the section created in step 2. Create a flow referencing this flow action and run the flow.
On mouse over of any of the row values for the column on which control was configured, we could see the configured text is displayed in a smart prompt.

5) Click on the filter icon for this column, the values are shown in the filter overlay. On mouse over of any of these values, we see the smart prompt is displayed with a message ‘cannot render section’.



Root Cause



'SmartLabelForProperty' control is an OOTB non-autogenerated CPM control which references OOTB PRPC 'SmartLabel' control. The issue occurs because the filter popover is hosted by grid bound to pyUniqueValues pagelist (Pega-ColumnFilterCriteria-UniqueValues-Text) and not the pagelist used as the source of the repeat grid. Hence the rule resolution tries to resolve the smart label section starting from Pega-ColumnFilterCriteria-UniqueValues-Text class. Since the section cannot be resolved through pattern / direct inheritance, 'cannot render section' error inside the SmartPrompt displayed on mouse over of filter pop-up values.

SmartLabel control is not supported in filter popover because of following reasons,

a) The filter popover is hosted by grid bound to pyUniqueValues pagelist. This is entirely different from the one user configured. Hence page context will never be the same.
b) There is no 1 to 1 mapping between the data shown in filter popover and the data shown in primary grid.

Resolution



One possible solution to the problem  here is to disable the smart prompt functionality inside filter popover. This way we won't get an empty SmartLabel showing 'Cannot render section' error. The SmartLabel will work normally on the repeat grid values though.

Implement the below work around to fix the issue:

1) Do a "Save as" of 'SmartLabelForProperty' control to the application ruleset with different name, say SmartLabelForProperty1.
2) Paste below code in HTML tab and save the control

<%

String partialTrigger = tools.getParamValue("partialTrigger");
if(partialTrigger!=null && !partialTrigger.equals("") && partialTrigger.startsWith("filterpopup")){
%>
<pega:reference name='$this-value' mode="NORMAL" />
<%} else{%>
<pega:include name="smartinfopopupinclude" type="Rule-HTML-Fragment"/>
<SPAN id="SI" class="smartInfo"
si_usingpage=''
si_headertext='<pega:reference name="param.HeaderText" />'
si_sectionname='<pega:reference name="param.SectionName" />'
si_clickable='<pega:reference name="param.Clickable"/>'
name="<pega:reference name='$this-name' mode="NORMAL" />" >
<pega:reference name='$this-value' mode="NORMAL" />
</SPAN>

<%}%>

3) Bind this new control to grid column.

Published January 31, 2016 - Updated December 2, 2021

Was this useful?

0% found this useful

Have a question? Get answers now.

Visit the Collaboration 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.

Pega Community 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
Contact us