This document provides information about the refresh strategy for Theme-Cosmos. By default, the summary panel and the case processing area will be refreshed on each and every step/stage processing. For the utils and tab contents, the below refresh strategy should be used which will give better performance improvement for the application.
What contents will be auto-refreshed while case processing in an ajax container?
In the Summary panel,the sections Caseheader, CaseActionHeader, CaseAssocication and vertical tabs are auto refreshed.
The CaseInformation section below the todo section is auto refreshed.
The stages(pxDisplayStages section) and todo section(pxAssignementView) is auto refreshed.
These sections are auto refreshed and how that is happening?
It is one of the features of PEGA, Refresh condition of Dynamic Layout.
Now, let’s see how the refresh condition has been used.
Refresh of the Summary panel:
The main section for the WO is pyCaseMainInner which uses the design template “Main case page UI template”. In the template, the refresh condition is added to the parent dynamic layout of the summary panel, so the full content which is placed in the summary panel is being refreshed. The property .pxUpdateDateTime is used for refresh. This property will be updated whenever a WO is reopened or updated. Since the summary panel consists of case associations data which can be updated in any steps/stage we use this property. Also, we do not want developers to change this behavior, so we have added this refresh condition inside the design template
How the CaseInformation is auto refreshed?
In the case information section, the Main case information section is included which has the refresh condition.
Refresh Condition on pyCaseInformation:
How the case stages and todo section is refreshed?
Below are the ways to refresh the contents in cosmos.
Data page refresh
The case processing in theme cosmos uses ajax container which runs in a different thread. In order to refresh the contents in the main area or utils region use refresh conditions.
Note: Refresh condition will be triggered only after save or submit of the form.
Refresh conditions can be applied to the Dynamic layout properties panel.
Refresh condition can be applied to Section includes properties panel.
How to choose the property for a refresh?
Always choose a property from the clipboard page which is relevant for the section and add the condition accordingly.
For eg, A application needs to refresh the description section once it is updated in the pyWorkPage. In case processing, it uses the property .pyDescription.
So the user should use this property in the refresh condition.
Suppose if there are many properties in the section which are unpredicted on which step it get updates. For this kind of scenario, users can use the .pxUpdateDateTime property which will get an update on each and every save/submit in case processing. Note: Use this property only when there are no other properties available for a refresh.
How to refresh the section from ajax container before save/submit of the form data?
How to refresh the section which uses the property list/data page for fetching the values? or how to refesh the utility widget?
Please refer to the "Refresh Section" or "Data page refresh".
When a section needs to be updated before save/submit of the Form in ajax container.
And the section needs to refresh is outside of processing ajax container.
How to configure this API
In the control actions tab, choose the run script action.
Pass the section names as parameters.
Note: This API will refresh the section only when it is available/visible in DOM.
Refresh Section/Refresh Harness
These are the usual way to refresh the section when the section needs to refresh on same context/threads. Either the refresh condition or this approach can be used to refresh the utility widgets.
Once the flow action is completed , user can use Refersh section/Refresh Other section for refreshing
Data page refresh
If a section displays table/rdl of data which are referenced from the data page, Then use this approach. In DataPage enable the reload per interaction. And in the included section add a refresh condition which refreshes. Then the content will appear in the list.
***Edited by Moderator: Pooja Gadige to add Developer Knowledge Share tag***