Skip to main content


abstract class EnsPortal.Template.standardPage extends %CSP.Portal.Template, EnsPortal.Template.base

Base class for generic Ensemble pages.
This is used for pages that do fit into one of the other base class categories.

Property Inventory

Method Inventory


parameter APPLICATION = EnsPortal.Application;
Set this to the appropriate application class.
parameter AUTOLOGOUT = 0;
Don't use the Zen AutoLogout feature. Instead, we trigger a simple hyperevent reasonably often to ensure that users won't lose any work. We use the USEKEEPALIVE to control whether the KeepAlive is used.
parameter AUTONS = 0;
Do not switch namespace for the page based on $NAMESPACE; will stay in the original namespace.
parameter DOMAIN = Ensemble;
Inherited description: Domain used for localization.
Resource for subclasses to indicate whether further resources are needed to perform actions on pages.
parameter FAVORITEICON = portal/ensemble.ico;
Ensemble favorite icon.


property HelpAddress as %ZEN.Datatype.string [ InitialExpression = $select(..#PAGENAME '= "": "Ensemble, "_..#PAGENAME, 1: "") ];
The help address that links to the "Help" (next to the "Logout" link) documentation
Property methods: HelpAddressDisplayToLogical(), HelpAddressGet(), HelpAddressIsValid(), HelpAddressLogicalToDisplay(), HelpAddressLogicalToOdbc(), HelpAddressNormalize(), HelpAddressSet()
property canEdit as %ZEN.Datatype.boolean [ InitialExpression = ##class(EnsPortal.Utils).CheckResourceList(..#EDITRESOURCE) ];
Flag to indicate whether the user is permitted to make any changes on a given page.
Property methods: canEditDisplayToLogical(), canEditGet(), canEditIsValid(), canEditLogicalToDisplay(), canEditLogicalToOdbc(), canEditLogicalToXSD(), canEditNormalize(), canEditSet(), canEditXSDToLogical()
property msgNotPermitted as %ZEN.Datatype.caption [ InitialExpression = $$$TextJS("You are not permitted to perform this action") ];
Message to inform the user they may not perform a given action.
Property methods: msgNotPermittedDisplayToLogical(), msgNotPermittedGet(), msgNotPermittedIsValid(), msgNotPermittedLogicalToDisplay(), msgNotPermittedLogicalToOdbc(), msgNotPermittedNormalize(), msgNotPermittedSet()


Return the array of links to show in the locator bar.
method %OnDrawHTMLHead() as %Status
Add the EnsException error handling on the client.
method %OnGetSmallMenu(Output pMenu)
Get the contents of the small menu in the title area.
classmethod %OnPreHTTP() as %Boolean
Ensure that the user has the required privileges for the Ensemble Portal application.
Define any context links for the page. Sub-class to override.
classmethod GetHyperEventResources(pMethod As %String = "") as %String
Callback to return a list of resources required for a specific HyperEvent. The user must have sufficient privileges on one of the resource/permission pairs to be permitted to execute the hyperevent. An empty string implies the user already has sufficient privileges for the ZenMethod specified in pMethod.
classmethod GetNewURL(pNS As %String, pPage As %String = "%25CSP.Portal.Home.zen") as %String [ ZenMethod ]
Overrides super class method to be able to set custom web application if applicable when switching namespace.
classmethod OnPage() as %Status
Render the contents trapping for permission issue
classmethod OnPreHyperEvent(class As %String, method As %String) as %Status
Invoke the base OnPreHyperEvent() method, and then check whether the user is permitted to invoke the specified method by checking the resource returned by the GetHyperEventResources() callback.
clientmethod arrowClick(from, to) [ Language = javascript ]
*******************************************************************/// Used to move an item from one listbox to the other. The listboxes are side-by-side. The action moves a list item from one box to the next, then remove it from the original box. This method was originally in CSPX.Portal.Template which is no longer used. *******************************************************************///
clientmethod changeURLNamespace(nsVal) [ Language = javascript ]
The input value is the name of the new namespace to switch to. This method only works for EnsPortal classes whose URL is simple (no URL parameters). This method will need to be overridden for classes such as EnsPortal.EDIDocumentView which cannot work without a URL parameter provided.
clientmethod checkEdit() [ Language = javascript ]
clientmethod onPopupAction(popupName, action, value) [ Language = javascript ]
Returning from dialogs
clientmethod onServerMethodError(err, errObject) [ Language = javascript ]
Override onServerMethodError to funnel HyperEvent errors through the central Ensemble exception handling code. If session pollution occurs while in Studio mode, alert the user to the problem instead of reloading. The method sets zenPage._staleStudioSession to true to ensure that an alert is displayed only once and subsequent hyperevent failures will not trigger a reload of the page.
clientmethod onloadHandler() [ Language = javascript ]
This client event, if present, is fired when the page is loaded.

Inherited Members

Inherited Properties

Inherited Methods


FeedbackOpens in a new tab