Question
Areteans
IN
Last activity: 30 Jul 2021 11:59 EDT
DataPage Sources from a Report Definition fetching data from a View throwing runtime exception
Our application is scratch build in 8.5.2 and we have a requirement to show the workbasket content filtered by skill and rating.
To implement the same we are following the below approach -
Implementation details:
pc_assign_workbasket table has been joined with pr_index_assignmentskills & pr_index_operatorskills to create a view. This is mapped with a new class (child class of Assign-WorkBasket) Assign-WorkBasket-SkillFiltered. This view is containing pxObjclass & pzInsKey to make the class as internal. Key has been defined on the class and it is showing it's instances as well.
OOTB Data page D_WorkBasket source was a final activity pzGetWorkBasket which was calling pyGetWorkBasket report of Assign-WorkBasket class.
pyGetWorkBasket has been created Assign-WorkBasket-SkillFiltered class and it is having a join with work class. Please note there are few ABAC policies present in the Assign-WorkBasket class and the work class which are applied while executing this report. There is no problem in fetch the data.
D_WorkBasket source has been modified with pyGetWorkBasket RD of Assign-WorkBasket-SkillFiltered class and Object type is also changed to this new class. Rest all data page configuration remains unchanged.
Outcome & Exception:
In the tracer we can see the report is fetching the result but while populating the D page with the result it is throwing PRRuntimeError. EXCP0001 alert is thrown and below exception is appearing.
Our application is scratch build in 8.5.2 and we have a requirement to show the workbasket content filtered by skill and rating.
To implement the same we are following the below approach -
Implementation details:
pc_assign_workbasket table has been joined with pr_index_assignmentskills & pr_index_operatorskills to create a view. This is mapped with a new class (child class of Assign-WorkBasket) Assign-WorkBasket-SkillFiltered. This view is containing pxObjclass & pzInsKey to make the class as internal. Key has been defined on the class and it is showing it's instances as well.
OOTB Data page D_WorkBasket source was a final activity pzGetWorkBasket which was calling pyGetWorkBasket report of Assign-WorkBasket class.
pyGetWorkBasket has been created Assign-WorkBasket-SkillFiltered class and it is having a join with work class. Please note there are few ABAC policies present in the Assign-WorkBasket class and the work class which are applied while executing this report. There is no problem in fetch the data.
D_WorkBasket source has been modified with pyGetWorkBasket RD of Assign-WorkBasket-SkillFiltered class and Object type is also changed to this new class. Rest all data page configuration remains unchanged.
Outcome & Exception:
In the tracer we can see the report is fetching the result but while populating the D page with the result it is throwing PRRuntimeError. EXCP0001 alert is thrown and below exception is appearing.
Caused by: java.lang.UnsupportedOperationException: UnSupported for rule
at com.pega.platform.executionengine.vtable.value.internal.ExpressionsVirtualTableCandidatesGroupImpl.throwForUnsupportedModes(ExpressionsVirtualTableCandidatesGroupImpl.java:172) ~[execution-engine.jar:?]
...
Detailed stacked trace has been attached.
Workaround:
1. Changing the Object type to Assign-WorkBasket is not making any difference
2. Created an activity similar to pzGetWorkBasket and running the RD from there but no luck
3. Only if the Data page is made editable it is working fine. Not sure whether Pega is internally trying to update anything but do not see any evidence of that neither in the tracer nor in the log. Anyway to update to the view is possible.
Note: This is an on premise application and database is MS SQL Server.
Ay help on this would be highly appreciated. Thanks!