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

Unable to retrieve column configured as Custom Search property

SA-104915

Summary



While performing an Advance Search with a Dedicated Index, unable to retrieve columns that are configured as Custom Search Properties.


Error Messages



Not Applicable


Steps to Reproduce



The Class structure is as below:

NAB-UWF-Work (class group)
NAB-UWF-Work-Service-NAS (BU class)
NAB-UWF-Work-Service-NAS-ClientInstruction (Case Type class)
  1. Create Custom Search Properties at a specific class (NAB-UWF-Work-Service-NAS).
  2. Add Embedded Page properties to the Custom Search Properties.
  3. Create a dedicated Index.
  4. Create an Advanced Search report definition at a specific class (according to Step 1).
  5. Invoke the report definition report class name, AdvanceSearch with NAB-UWF-Work-Service-NAS.


Root Cause



Since the NAB-UWF-Work-Service-NAS layer is not a class group, the second Java step in the pzSearchWorkIndex activity passes 'Equals' instead of 'Startswith' in the Elastic Search query which fails to extract results.

This issue was determined to be a product enhancement request.

Resolution



An enhancement request, FDBK-67211, is created for consideration by Pega Product Management.

Perform the following local-change:
  1. Create an activity
  2. In Pages and Classes tab, set the following: 

    pySearchResultsWork: Code-Pega-List
    Report: Rule-Obj-Report-Definition

    In the Parameters Tab, set the following:

    Clazz – type text

    Activity Steps:

    Step 1:

    Obj-Open with Step page as a Report with properties

    .pyStreamName = “SearchReport”    (Name of report definition)
    .pyClassname=”SSS-Elastic-Work”     (Work class where the SearchReport is created)

    Step 2:

    Set the Property Set with Step page as the Report.

    .pyContent.pyFields.pyListFields(<APPEND>).pyFieldName  = “.NasName” (Property present at nonclassgroup layer)
    .pyContent.pyFields.pyListFields(<APPEND>).pyFieldLabel = “NasName”  (Label)
    Param.clazz  = “SSS-Elastic-Work-Nas”  (To filter casetypes)

    Step 3:

    Property Set:

    Set values for the parameters which must be sent to pxRetrieveSearchData

    Param.pySearchString  =”o-“
    Param.pySearchMethod = STARTS
    Param.pyReportClassname = SSS-Elastic-Work
    Param.pyReportName = SearchReport
    Param.pyReportPageName = Report

    Step 4:

    Call Rule-Obj-Report-Definition.pxRetrieveSearchData and pass the current Parameter page.

    Step 5:

    Show page with pySearchResultsWork to view the Search results.


Suggest Edit

Published April 18, 2020 - Updated December 2, 2021

Did you find this content helpful? Yes No

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

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