Skip to main content

%CSP.UI.Portal.Utils

abstract class %CSP.UI.Portal.Utils extends %CSP.UI.Portal.Template, %CSP.UI.Portal.UtilsNav

Extend to this class for pages that use tablePane as main component and needs auto-refresh to be shown on the ribbon bar. For example, Home->Operations->Databases or Processes.

Property Inventory

Method Inventory

Parameters

parameter PAGENAME = Template with Auto-Refresh;
Displayed name of this page.

Properties

property CurrentColumn as %ZEN.Datatype.string;
Property methods: CurrentColumnDisplayToLogical(), CurrentColumnGet(), CurrentColumnIsValid(), CurrentColumnLogicalToDisplay(), CurrentColumnLogicalToOdbc(), CurrentColumnNormalize(), CurrentColumnSet()
property CurrentSort as %ZEN.Datatype.string [ InitialExpression = "asc" ];
Property methods: CurrentSortDisplayToLogical(), CurrentSortGet(), CurrentSortIsValid(), CurrentSortLogicalToDisplay(), CurrentSortLogicalToOdbc(), CurrentSortNormalize(), CurrentSortSet()
property captionLastUpdate as %ZEN.Datatype.string [ InitialExpression = $$$TextJS("Last update: ") ];
Property methods: captionLastUpdateDisplayToLogical(), captionLastUpdateGet(), captionLastUpdateIsValid(), captionLastUpdateLogicalToDisplay(), captionLastUpdateLogicalToOdbc(), captionLastUpdateNormalize(), captionLastUpdateSet()

Methods

method %OnAfterCreatePage() as %Status
Be sure to do ##super() when overriding.
classmethod BuildMeter(pLabel, pProperty, pWidth, pLink, pDetails) as %CSP.Util.HTMLValueMeter
Use this method to build a meter for Dashboard. (See example for usage in %CSP.UI.Portal.ProcessDetails.cls)
classmethod DrawAutoRefresh(pRefreshName)
***** Refresh Feature for tablePane pages in SMP *****

The following methods are used by pages that want to display Refresh on/off and allow to enter refresh rate (number of seconds.) Sub-classes may over-ride them but please do not modify them unless you take care of all pages that use them and test each page thoroughly. When used, the tablePane on your page may be refreshed at the rate you define, and will remember the state, rate, current column and sort order.

To use this feature, do the following (see %CSP.UI.Portal.OpDatabases.cls for example):

  • Class extend to %CSP.UI.Portal.Utils
  • Add the following code:

  • Use tablePane with id="table" and add event onheaderClick for column sort.

  • Add to %OnAfterCreatePage to get TableState and AutoRefreshRate set into timeout.

  • In method OnDrawRibbon, add Do ..DrawAutoRefresh(..%GetPageName())

  • Override updateView() if your class has Filter turned on for tableNavigatorBar.

This method can be called from OnDrawRibbon of your UI Zen page. Pass in the page name which should be consistent with how the temp global is saved.
classmethod LastUpdateTime() as %String [ ZenMethod ]
classmethod UpdateAutoRefreshRate(refreshrate As %Integer) [ ZenMethod ]
Save auto refresh rate (how many seconds user entered) to server.
classmethod UpdateAutoRefreshState(refreshstate) [ ZenMethod ]
Save auto refresh state (Refresh on or off) ito server.
classmethod UpdateTableState(currColumn As %String, sortOrder As %String) [ ZenMethod ]
Save current column and state to server so that when page is refreshed or reloaded the sort and state remain the same.
clientmethod columnSort(currColumn, sortOrder) [ Language = javascript ]
User clicked a column header to sort. Save that so we can come back to it when page is refreshed.
clientmethod getTime() [ Language = javascript ]
This method returns current date and time in $ZDT($ZU(188),3,,3) format
clientmethod onunloadHandler() [ Language = javascript ]
***** End of Refresh Feature for tablePane ***** ********************************************************/// If Refresh Feature is turned on, then clearTimer before exist.
clientmethod refreshHandler() [ Language = javascript ]
Table auto-refresh timer handler.
clientmethod refreshkeyUp(evnt, value) [ Language = javascript ]
Check if user hit [Enter] on refreshRate textbox.
clientmethod setRefreshMode(newMode) [ Language = javascript ]
Turn auto-refresh mode on and off.
clientmethod setRefreshRate(newRate) [ Language = javascript ]
User changed refresh rate. Validate it and save value to server.
clientmethod updateTime() [ Language = javascript ]
clientmethod updateView() [ Language = javascript ]
Update / Reload table. Subclass may override this method. Do not modify this method unless you are going to take care of all pages that use it.
clientmethod zeroFill(value) [ Language = javascript ]

Inherited Members

Inherited Properties

Inherited Methods

Subclasses

FeedbackOpens in a new tab