Refresh contents in Theme Cosmos

Overview

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.

CaseInformation:

Refresh Condition on pyCaseInformation:

How the case stages and todo section is refreshed?

The refresh of stages(pxDisplayStages section) and todo section(pxAssignementView) is handled in the javascript. After processing the case in ajax containers we are handling the refresh of stages and todo section internally.

Below are the ways to refresh the contents in cosmos.

  • Refresh Condition
  • Refresh Section javascript API
  • Refresh Section
  • Refresh Harness
  • Data page refresh

Refresh Condition

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?
Please refer to the “Refresh Section javascript API”.

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”.

Refresh Section javascript API

The javascript API " pega.desktop.infinity.refreshCaseSections(SectionNames)" should be used only for the below uses case.

  • 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

  1. In the control actions tab, choose the run script action.
  2. 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.

Hi,

If Section A is the top section (in your example “CaseInformation”) and section B (“pyCaseInformation”) is the embedded section there are two problems:

-you can’t configure the refresh conditions for section A

-but you must configure and save the refresh condtion for section B in section A (and this is not the right place to store this information, if you are reusing section B somewhere else)

Is Pega going to add this function soon?

Would be great to hear from you,

Artur

@SakthiVickraman

Facing in one weird issue where for a case type on submission of an assignment, After FinishAssignment call there’s a reload section happening and its trying to reload pxAssignmentView and after pyCaseMainPageNotification and after doing a reload Harness.

As a result of above where the expected is to show Confirm Harness on Assignment submission its showing Review Harness because of above reloads.

Can suggest which configuration or rule resulting in above behaviour.

On submit there’s only FinishAssignment action so these are getting called via java-script after case processing. But happening for few case types and not for few.

So when traced can see Confirm Harness getting called in FinishAssignment activity but because of above reloads its overridden by Review Harness. In working scenario execution ends with FinishAssignment and there are no other reloads happening.

Any insights on above issue will be appreciated.