Class Reference
IRIS for UNIX 2024.1.2
InterSystems: The power behind what matters   
Documentation  Search
  [USER] >  [EnsPortal] >  [LookupSettings]
Private  Storage   

class EnsPortal.LookupSettings extends EnsPortal.Template.devPage, EnsPortal.Template.scUtils

Zen based Lookup Table UI

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
3 13 66


Summary

This is a Zen Page class. It belongs to the application EnsPortal.Application.

Properties
%condition %controller %import %includeFiles
%page %resource HelpAddress ISREADONLY
LocatorHeader ParentURL StdTitle aboutPage
align aux backgroundTimerInterval canEdit
canViewFileSystem cellAlign cellSize cellStyle
cellVAlign children composite contactPage
containerStyle controller controllerId cssLevel
currSortMode currStep currViewMode currentNamespace
currentProject currentRow currentUser disabled
dragAndDrop dragEnabled dropEnabled enableAutoRefresh
enclosingClass enclosingStyle error groupClass
groupStyle hasSCOutput height hidden
hint hintClass hintStyle home
homePage id index keepAliveInterval
label labelClass labelDisabledClass labelPosition
labelStyle layout lblTitle limitPopups
lookupTable msgDocReadOnly msgNotPermitted name
needProject onafterdrag onbeforedrag onclick
ondrag ondrop onhide onnotifyView
onrefresh onshow onupdate pageModified
parent readOnly readOnlyReason renamed
searchKey showLabel slice sourceControlEnabled
sourceControlManagerDialog sourceControlNewlineFormat sourceControlOutputDialog sourceControlVisible
studioMode tipCSVWizard tipCompile tipContractAll
tipDelete tipExpandAll tipExport tipGen
tipImport tipImportLegacy tipNew tipOpen
tipSave tipSaveAs title tuple
useSVG useSoftModals valign visible
width window writePERMISSION zenPersistentPopup

Methods
%AddCSPShareHyperevents %AddChild %AddChildAfter %AddChildBefore
%AddComponent %AddEnsExceptionHandler %AddImportedComponents %AddLocatorLinks
%AddToSaveSet %ApplyURLParms %Attr %BindExport
%ClassIsLatestVersion %ClassName %ConstructClone %DispatchClassMethod
%DispatchGetModified %DispatchGetProperty %DispatchMethod %DispatchSetModified
%DispatchSetMultidimProperty %DispatchSetProperty %DrawAutoLogout %DrawClassDefinitions
%DrawComponentHTML %DrawHTML %DrawHTMLPage %DrawJSStrings
%DrawObjectDefinitions %DrawSourceControlCommands %DrawSourceControlHead %DrawSourceControlJS
%DrawSourceControlStyle %EnclosingDivId %EndBackgroundMethod %EndScript
%Eval %EvalC %Extends %ForceClientRender
%GetChildIndex %GetComponent %GetComponentById %GetComponentByName
%GetEventHandlers %GetHomePage %GetHomeParam %GetLinks
%GetLocatorLinks %GetPageName %GetParameter %GetProductName
%GetRootLink %GetValueById %GetValueByName %GetXMLName
%IsA %IsModified %Link %LinkCSS
%LinkScript %MakeId %New %NormalizeObject
%ObjectModified %OnAddToPageAfter %OnAddToPageBefore %OnAfterCreatePage
%OnBeforeCreatePage %OnCreateApplication %OnCreatePage %OnDetermineCSSLevel
%OnDrawEnclosingDiv %OnDrawHTMLBody %OnDrawHTMLHead %OnDrawHTMLMeta
%OnDrawObjectProperties %OnFinishBackgroundTask %OnGetPageName %OnGetProductName
%OnGetSmallMenu %OnGetTitle %OnMonitorBackgroundTask %OnMutateChildren
%OnObjectSynch %OnPreHTTP %OnSubmit %OnUseSoftModals
%OnZENDeserialize %OriginalNamespace %PackageName %QuoteValue
%QuoteValueL10N %Register %RemoveChild %RemoveChildren
%RemoveComponent %RemoveFromSaveSet %RunBackgroundMethod %Self
%SerializeObject %SetBackgroundMethodStatus %SetErrorById %SetErrorByName
%SetModified %SetValueById %SetValueByName %SetValuesByName
%StartScript %ValidateObject %ZENVersion AfterUserAction
AppendSourceControlOutput BuildMenu CheckAllBlanks CheckContextLinks
CheckEnterpriseManager CheckFilename ClearSourceControlOutput ConvertParameter
CreateDirectory CreateProject CreateSourceControl Decrypt
DoLogout DocumentLoad DocumentSave DrawDescription
DrawLocator DrawRibbon DrawTitle Encrypt
EscapeHTML EscapeURL EvalResult Export
GetCSPURL GetContextLinks GetCurrentProject GetDefaultDir
GetDocURL GetFullProjectName GetHomePage GetHyperEventResources
GetInternalName GetLookupTableProxy GetNewURL GetQuickLinks
GetSourceControlClass GetSourceControlCommands GetTimestamp HaveSourceControlOutput
HyperEventCall HyperEventHead Import ImportLegacy
Include InsertHiddenField InsertHiddenFields IsDocReadOnly
IsEnabled IsNameReadOnly IsPrivate IsProjectRequired
IsSourceControlReadOnly JavaInstalled Link LoadLookupTable
LoadProject NameCheck OnDrawRibbon OnGetRibbonInfo
OnHTTPHeader OnPage OnPageError OnPostHTTP
OnPostHyperEvent OnPreHTTP OnPreHyperEvent Page
QuoteJS RegisterRecent RewriteURL SaveLookupTable
SetCurrentProject SetDefaultDir SetProjectRequired ShowError
SimpleKeepAlive StartTimer StopTimer ThrowError
UnescapeHTML UnescapeURL UpdateSCMenus UserAction
XMLDTD XMLExport XMLExportToStream XMLExportToString
XMLNew XMLSchema XMLSchemaNamespace XMLSchemaType
addChild addChildAfter addChildBefore addPopupSuffix
addUndoAction adjustSizes alphaSort appendServerOutput
applyChanges arrowClick canUndo canUserModify
cancelPopup changePassword changeURLNamespace checkEdit
checkName checkStudioHyperEvents checkTextControls childrenMutated
chooseSCMenu chooseSCProject clearSCOutput clearUndoBuffer
clearValues clientKeepAlive cloneObject correctIELayering
createComponent createComponentNS createSCMenuItem createSCProject
createSCSubMenu createTimeWarning deleteComponent deleteTable
deleteTableAfterConfirmation disableCommandButton displayCountDown doExport
doImport doImportLegacy dragFinishHandler dragHandler
dragNotifyHandler dragStartHandler drawTableDetails dropHandler
dropStartHandler enableCommandButton endModal escapeCData
exportTable exposeComponent findElement fireOnResizeEvent
fireOnUnloadEvent fireOnUpdateEvent firePopupAction fixDocumentTitle
getChildIndex getClientModel getComponent getComponentById
getController getCurrentExtension getCurrentName getEnclosingDiv
getHidden getHintElement getIsReadOnly getLabelElement
getOpener getPageTitle getProperty getReadOnlyReason
getSaveAction getSettings getTableObject getTableValues
getTitleAreaHeight getType goHome goMenu
gotoNamespace gotoPage grayOutButtons hideCommandButton
hideTimeoutWarning hideWarnContinue importTable importTableLegacy
inResizeLoop initPopupSuffix initializeSourceControl initializeTextMonitor
invokeAfterUserAction invokeSourceControl invokeSuper isOfType
launchPopupWindow loadDetails loadDocument logout
makeId manualKeepAlive modSort navigate
newTable onCreate onDelete onDisplayHandler
onDocumentLoad onDocumentLoadComplete onDocumentReload onDocumentSave
onDocumentSaveComplete onEndModalHandler onPopupAction onRefreshContents
onSerialize onServerMethodCall onServerMethodError onServerMethodReturn
onStartModalHandler ondisabledHandler onhandleAutoLogoutWarn onkeydownHandler
onkeyupHandler onlayoutHandler onloadHandler onlogoutHandler
onoverlayHandler onresizeHandler onunloadHandler onupdateHandler
openTable popupActionHandler processDeleteReturn raiseEvent
refreshContents reloadDocument removeChild removePopupSuffix
removeRow renameSave render renderContents
renderRow renderSVG saveDocument saveTable
saveTableAs searchBlur searchBoxHandler searchFocus
searchKeyDown searchKeyPress selectRow sendEventToController
setComponentId setConnectivityStatusMsg setControllerId setHidden
setModified setOverlayMode setPageTitle setProperty
setPropertyAll setReadOnly setResultsDiv setSCProject
setSortMode setSortModeHandler setTraceOption setViewMode
setViewModeHandler setWarnInnerHTML showAbout showCommandButton
showContact showDocumentation showHelp showSCMenu
showSCOutput showTimeoutWarning startKeepAlive startModal
startProgressBar stopKeepAlive stopProgressBar switchNamespace
textControlKeyDown textControlKeyUp toggleButton toggleFormButtons
toggleReadOnly toggleSVGElements toggleUndoIcon undo
updateDocumentState updateJSONSCReadOnly updateSCIndicator warnclickListener


Parameters

• parameter EDITRESOURCE = "%Ens_LookupTables:WRITE";
User needs WRITE permissions on the %Ens_LookupTables resource to make changes on this page.
• parameter PAGENAME = "Lookup Tables";
Displayed name of this page.
• parameter RESOURCE = "%Ens_LookupTables:READ";
User needs READ permissions on the %Ens_LookupTables resource to access this page.

Properties

• property canViewFileSystem as %Boolean [ InitialExpression = $system.Security.Check("%Ens_ViewFileSystem","USE") ];
Is the user permitted to access the fileSelect popup.
• property currentRow as %ZEN.Datatype.integer [ InitialExpression = -1 ];
The position (0-based) of the currently selected row.
• property lookupTable as %ZEN.Datatype.string(MAXLEN=220,ZENURL="LookupTable");
The name of the lookup table.
• property msgDocReadOnly as %ZEN.Datatype.caption [ InitialExpression = $$$TextJS("This lookup table is read only.") ];
• property tipDelete as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Delete the currently selected lookup table") ];
• property tipExport as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Export the currently selected lookup table to a file in XML format") ];
• property tipImport as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Import lookup tables from a file") ];
• property tipImportLegacy as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Import lookup tables from a file that was exported in legacy format (older version)") ];
• property tipNew as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Create a new lookup table") ];
• property tipOpen as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Open an existing lookup table") ];
• property tipSave as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Save the current lookup table") ];
• property tipSaveAs as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Save the current lookup table with a different name") ];
• property writePERMISSION as %ZEN.Datatype.boolean [ InitialExpression = $System.Security.GetGlobalPermission($namespace,"Ens.LookupTable") [ "WRITE" ];

Methods

• method %OnAfterCreatePage() as %Status
Normalize the value of lookupTable.
• method %OnGetPageName() as %String
Get the (localized) name of the page.
• method %OnGetTitle() as %String
Get the (localized) title string for the page.
• classmethod CheckFilename(filename As %String) as %String [ ZenMethod ]
Check whether the specified file already exists or is in a non-existent directory.
• classmethod CreateDirectory(filename As %String) as %String [ ZenMethod ]
• method DrawDescription(pSeed As %String) as %Status
Draw the contents of the description panel.
• classmethod Export(Filename As %String, Tablename As %String) as %String [ ZenMethod ]
Export a lookup table in Tablename to file Filename.
• classmethod GetDefaultDir() as %String [ ZenMethod ]
• 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.
• method GetInternalName() as %String
Return the internal name of the current document.
• classmethod GetLookupTableProxy(pLookupTable As %String = "", Output pProxy As %ZEN.proxyObject) as %Status
Helper method to create a Zen proxyObject instance to represent the specified lookup table.
• classmethod Import(Filename As %String) as %String [ ZenMethod ]
Import lookup tables from file Filename. Other types of documents, if any, are skipped.
• classmethod ImportLegacy(Filename As %String) as %String [ ZenMethod ]
Import lookup tables from file Filename, using legacy XML format, compatible with older versions.
• classmethod IsNameReadOnly(pName As %String) as %Boolean [ ZenMethod ]
• method LoadLookupTable(ByRef pParms, Output pObject As %ZEN.proxyObject) as %Status
Main method to get a JSON-ready representation of the current lookup table.
• classmethod NameCheck(newName) as %String [ ZenMethod ]
• method OnDrawRibbon() as %Status
Add to the contents of the tool ribbon.
• method OnGetRibbonInfo(Output pDisplay As %Boolean, Output pViewIcons As %List, Output pSortOptions As %List, Output pSearchBox As %Boolean, Output pRibbonTitle As %String, Output pCommands As %List) as %Status
This callback, if implemented returns information used to display the standard ribbon bar.
pDisplay is true if the ribbon should be displayed.
pViewIcons is an array describing "view" buttons to display: pViewIcons(n) = $LB(id,help,icon)
pSortOptions is an array describing "sort" options to display: pSortOptions(n) = $LB(id,caption,help)
pSearch is true if a search box is displayed.
pRibbonTitle is a title to display.
pCommands is an array of command buttons to display: pCommands(n) = $LB(id,caption,help,onclick)
• method SaveLookupTable(pCommand As %String, pProvider As %ZEN.Auxiliary.jsonProvider, pSubmitObject As %ZEN.proxyObject, Output pResponseObject As %RegisteredObject) as %Status
Save the supplied lookup table.
• classmethod SetDefaultDir(pPathname As %String) [ ZenMethod ]
• method addUndoAction(setModified) [ Language = javascript ]
Add a copy of the current table state to the undo stack.
• method adjustSizes() [ Language = javascript ]
Adjust sizes of components on the page.
• method alphaSort(a, b) [ Language = javascript ]
strict alphabetical sort used to sort rows in UI.
• method applyChanges() [ Language = javascript ]
Apply changes from the form back to the JSON model.
• method canUndo() [ Language = javascript ]
Helper method to indicate whether there is any data on the undo stack.
• method checkName(newName) [ Language = javascript ]
Check to see if the new name for this table is already in use before saving. If the new name is already in use, confirm that the user wishes to overwrite the old table of that name.
• method chooseSCMenu(menuName, commandName, saveFlags) [ Language = javascript ]
Handle a source control menu selection.
• method clearUndoBuffer() [ Language = javascript ]
Clear the undo stack.
• method clearValues() [ Language = javascript ]
Reset the form programmatically.
• method cloneObject(obj, clone) [ Language = javascript ]
Create a clone of the given object. Used in the undo logic.
• method deleteTable() [ Language = javascript ]
User clicked the Delete button for a table.
• method deleteTableAfterConfirmation() [ Language = javascript ]
Add intermediary Are You Really Sure popup
• method doExport(filename) [ Language = javascript ]
Actually perform the export to the specified file.
• method doImport(filename) [ Language = javascript ]
Import
• method doImportLegacy(filename) [ Language = javascript ]
Import legacy
• method drawTableDetails() [ Language = javascript ]
Render the contents of the detail table.
• method exportTable() [ Language = javascript ]
Launch a dialog so the user can choose a file to export the current lookup table to.
• method getClientModel() [ Language = javascript ]
Get the JSON model on the client.
• method getCurrentExtension() [ Language = javascript ]
Return the extension used by Studio for the class/object
• method getCurrentName() [ Language = javascript ]
Return the current name of the class/object being modified
• method getTableObject() [ Language = javascript ]
Get the main table Javascript object.
• method getTableValues() [ Language = javascript ]
Get the list of lookup values.
• method importTable() [ Language = javascript ]
Launch a dialog so the user can choose a file to import a lookup table from.
• method importTableLegacy() [ Language = javascript ]
Launch a dialog so the user can choose a file to import a lookup table from, in legacy format (exported from an older version).
• method loadDetails(loadFromServer) [ Language = javascript ]
Initialise the table rendering of the page.
• method modSort(a, b) [ Language = javascript ]
Modified sort, which sorts new, modified, deleted, and then unchanged rows, with alphabetical sorting within each group. A weight is given to each state so it is easy to produce a sort order. The weights are as follows:
  • 0 - new entry
  • 1 - modified entry
  • 2 - deleted entry
  • 3 - unchanged entry
• method newTable() [ Language = javascript ]
Prompt the user for the name of a new table to edit.
• method onDocumentReload(reason) [ Language = javascript ]
Ensure we redraw the diagram if a reload was requested
• method onPopupAction(popupName, action, value) [ Language = javascript ]
Handle various dialogs.
• method onlayoutHandler(load) [ Language = javascript ]
This client event is fired when the page is resized.
• method openTable() [ Language = javascript ]
Launch a dialog to choose a different table to open.
• method removeRow(row, addBack) [ Language = javascript ]
User clicked the Delete button for a row. addBack should be used to indicate that a previously deleted key should be added back to the table.
• method renameSave(newName) [ Language = javascript ]
• method renderRow(html, pos, index, values) [ Language = javascript ]
Add the HTML for a row in position pos using the data from position index in the list of values.
• method saveTable() [ Language = javascript ]
Save the current lookup table.
• method saveTableAs() [ Language = javascript ]
Launch popup window to begin 'save as' process
• method selectRow(row) [ Language = javascript ]
User selected a row in the lookup table.
• method setReadOnly(readOnly) [ Language = javascript ]
Set readOnly to the value of readOnly. Subclasses MUST implement this method to update the controls on the page so that the page's behaviour actually matches the value of the readOnly flag.
• method showSCMenu() [ Language = javascript ]
Call UpdateSCMenu() first in case the document has been modified elsewhere, then display the source control menu based on the contents of the _sourceControlMenu data created by UpdateSCMenu().
• method toggleButton(zenId, enable) [ Language = javascript ]
Toggle whether the button with Id zenId is enabled or disabled.
• method toggleFormButtons(enable) [ Language = javascript ]
Helper method to ensure that the two buttons in the right hand side of the page are toggled together.
• method toggleUndoIcon(show) [ Language = javascript ]
Toggle whether the undo icon should be shown or not.
• method undo() [ Language = javascript ]
If the current action can be undone, do so.
• method updateDocumentState(alertOnReadOnly) [ Language = javascript ]
Helper method to ensure that documentTimestamp and readOnly are up to date on the client.


Copyright (c) 2025 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.