Skip to main content

%DeepSee.UI.CubeRegistry

class %DeepSee.UI.CubeRegistry extends %DeepSee.UI.standardPage

DeepSee CubeRegistry page. This UI allows you to register a "Group" by drag and drop: Drag a group from the tree and drop it on the header for the "Registered" groups. The tree reprsents Unregistered groups. The center table represents Registered groups. You can also register and merge at the same time: Drag a group from the tree and drop it on a registered group in the center table. A confirmation box will display. If confirmed the cubes from the tree will be merged into the registered group. To Unregister, click the "x" image. The map object will be saved immediately after a drag and drop or a unregister. To modify properties for a registered group and cubes, click a row from the center table and modify the properties on the right in the Details pane. After your modification is done, you can click the Save button. If you do a drag & drop or a unregister, these changes will also be saved automatically.

Property Inventory

Method Inventory

Parameters

parameter DEFAULTVIEWMODE = cube;
If this page has multiple views, this is its initial display mode.
parameter DOCBOOKID = D2IMP_current_cubemgr;
Inherited description: Docbook ID for this page.
parameter JSINCLUDES = zenMenusSMP.js;
Inherited description: Comma-separated list of additional JS include files for the page.
parameter PAGENAME = Cube Manager;
Displayed name of this page.
parameter RESOURCE = %DeepSee_Admin;
Inherited description: All Analytics pages require %DeepSee_Portal USE.

Properties

property %model as %RegisteredObject;
Local copy of cube map model object.
Property methods: %modelGet(), %modelGetSwizzled(), %modelIsValid(), %modelNewObject(), %modelSet()
property DocumaticPage as %String;
Property methods: DocumaticPageDisplayToLogical(), DocumaticPageGet(), DocumaticPageIsValid(), DocumaticPageLogicalToDisplay(), DocumaticPageLogicalToOdbc(), DocumaticPageNormalize(), DocumaticPageSet()
property SavedTime as %ZEN.Datatype.string;
Last cube save time when the cube is loaded.
Property methods: SavedTimeDisplayToLogical(), SavedTimeGet(), SavedTimeIsValid(), SavedTimeLogicalToDisplay(), SavedTimeLogicalToOdbc(), SavedTimeNormalize(), SavedTimeSet()
property activeRegistryExists as %Boolean;
Property methods: activeRegistryExistsDisplayToLogical(), activeRegistryExistsGet(), activeRegistryExistsIsValid(), activeRegistryExistsLogicalToDisplay(), activeRegistryExistsLogicalToXSD(), activeRegistryExistsNormalize(), activeRegistryExistsSet(), activeRegistryExistsXSDToLogical()
property canWrite as %ZEN.Datatype.boolean [ InitialExpression = 1 ];
If true, user can modify (non-read-only) cube definitions, otherwise they can only view.
Property methods: canWriteDisplayToLogical(), canWriteGet(), canWriteIsValid(), canWriteLogicalToDisplay(), canWriteLogicalToOdbc(), canWriteLogicalToXSD(), canWriteNormalize(), canWriteSet(), canWriteXSDToLogical()
property currItem as %ZEN.Datatype.integer [ InitialExpression = -1 ];
ID (index number, 0-based) of current selected item.
Property methods: currItemDisplayToLogical(), currItemGet(), currItemIsValid(), currItemLogicalToDisplay(), currItemLogicalToOdbc(), currItemNormalize(), currItemSet()
property currItemType as %ZEN.Datatype.string;
Type of the current selected item.
Property methods: currItemTypeDisplayToLogical(), currItemTypeGet(), currItemTypeIsValid(), currItemTypeLogicalToDisplay(), currItemTypeLogicalToOdbc(), currItemTypeNormalize(), currItemTypeSet()
property detailCubeGroupName as %String;
Group name for the currently selected cube.
Property methods: detailCubeGroupNameDisplayToLogical(), detailCubeGroupNameGet(), detailCubeGroupNameIsValid(), detailCubeGroupNameLogicalToDisplay(), detailCubeGroupNameLogicalToOdbc(), detailCubeGroupNameNormalize(), detailCubeGroupNameSet()
property expandAll as %Integer [ InitialExpression = 1 ];
Whether to expand all elements under each type. When user clicks Collapse All then this is set to 0. At end of renderTable it is set to 2.
Property methods: expandAllDisplayToLogical(), expandAllGet(), expandAllIsValid(), expandAllLogicalToDisplay(), expandAllNormalize(), expandAllSet(), expandAllXSDToLogical()
property hlpDropTooltip as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Schedule %1") ];
Property methods: hlpDropTooltipDisplayToLogical(), hlpDropTooltipGet(), hlpDropTooltipIsValid(), hlpDropTooltipLogicalToDisplay(), hlpDropTooltipLogicalToOdbc(), hlpDropTooltipNormalize(), hlpDropTooltipSet()
property hlpMoveDown as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Move this group down") ];
Property methods: hlpMoveDownDisplayToLogical(), hlpMoveDownGet(), hlpMoveDownIsValid(), hlpMoveDownLogicalToDisplay(), hlpMoveDownLogicalToOdbc(), hlpMoveDownNormalize(), hlpMoveDownSet()
property hlpMoveUp as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Move this group up") ];
Property methods: hlpMoveUpDisplayToLogical(), hlpMoveUpGet(), hlpMoveUpIsValid(), hlpMoveUpLogicalToDisplay(), hlpMoveUpLogicalToOdbc(), hlpMoveUpNormalize(), hlpMoveUpSet()
property hlpRemove as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Remove this item") ];
Property methods: hlpRemoveDisplayToLogical(), hlpRemoveGet(), hlpRemoveIsValid(), hlpRemoveLogicalToDisplay(), hlpRemoveLogicalToOdbc(), hlpRemoveNormalize(), hlpRemoveSet()
property hlpShowHide as %ZEN.Datatype.caption [ InitialExpression = $$$Text("Hide or show the properties box") ];
Property methods: hlpShowHideDisplayToLogical(), hlpShowHideGet(), hlpShowHideIsValid(), hlpShowHideLogicalToDisplay(), hlpShowHideLogicalToOdbc(), hlpShowHideNormalize(), hlpShowHideSet()
property imgArrow1D as %String [ InitialExpression = ..Link("/csp/broker/images/arrow1D.gif") ];
Property methods: imgArrow1DDisplayToLogical(), imgArrow1DGet(), imgArrow1DIsValid(), imgArrow1DLogicalToDisplay(), imgArrow1DLogicalToOdbc(), imgArrow1DNormalize(), imgArrow1DSet()
property imgArrow1R as %String [ InitialExpression = ..Link("/csp/broker/images/arrow1R.gif") ];
Property methods: imgArrow1RDisplayToLogical(), imgArrow1RGet(), imgArrow1RIsValid(), imgArrow1RLogicalToDisplay(), imgArrow1RLogicalToOdbc(), imgArrow1RNormalize(), imgArrow1RSet()
property isLocked as %ZEN.Datatype.boolean [ InitialExpression = 0 ];
The cube is currently locked by someone when the cube is opened in Architect
Property methods: isLockedDisplayToLogical(), isLockedGet(), isLockedIsValid(), isLockedLogicalToDisplay(), isLockedLogicalToOdbc(), isLockedLogicalToXSD(), isLockedNormalize(), isLockedSet(), isLockedXSDToLogical()
property msgInvalid as %ZEN.Datatype.caption [ InitialExpression = $$$TextHTML("Cube Register map is empty.") ];
Property methods: msgInvalidDisplayToLogical(), msgInvalidGet(), msgInvalidIsValid(), msgInvalidLogicalToDisplay(), msgInvalidLogicalToOdbc(), msgInvalidNormalize(), msgInvalidSet()
property msgMerge as %ZEN.Datatype.caption [ InitialExpression = $$$TextJS("Are you sure you want to merge cube %1 to group %2?") ];
Property methods: msgMergeDisplayToLogical(), msgMergeGet(), msgMergeIsValid(), msgMergeLogicalToDisplay(), msgMergeLogicalToOdbc(), msgMergeNormalize(), msgMergeSet()
property msgSystemUpdates as %ZEN.Datatype.caption [ InitialExpression = $$$Text("This update schedule is managed by an external application") ];
Property methods: msgSystemUpdatesDisplayToLogical(), msgSystemUpdatesGet(), msgSystemUpdatesIsValid(), msgSystemUpdatesLogicalToDisplay(), msgSystemUpdatesLogicalToOdbc(), msgSystemUpdatesNormalize(), msgSystemUpdatesSet()
property readOnly as %ZEN.Datatype.boolean [ InitialExpression = 0 ];
If true, user cannot modify the current cube definition.
Property methods: readOnlyDisplayToLogical(), readOnlyGet(), readOnlyIsValid(), readOnlyLogicalToDisplay(), readOnlyLogicalToOdbc(), readOnlyLogicalToXSD(), readOnlyNormalize(), readOnlySet(), readOnlyXSDToLogical()
property reloadMap as %Boolean [ InitialExpression = 0 ];
Set to 1 if server should reload json map after merge.
Property methods: reloadMapDisplayToLogical(), reloadMapGet(), reloadMapIsValid(), reloadMapLogicalToDisplay(), reloadMapLogicalToXSD(), reloadMapNormalize(), reloadMapSet(), reloadMapXSDToLogical()
property tree as %ZEN.Datatype.string;
Data source. This is a copy of the value in the cube model.
Property methods: treeDisplayToLogical(), treeGet(), treeIsValid(), treeLogicalToDisplay(), treeLogicalToOdbc(), treeNormalize(), treeSet()

Methods

method %OnAfterCreatePage() as %Status
This class method callback is called just before the server-side page object is created.
method %OnGetPageName() as %String
Get the (localized) name of the page.
method %OnGetProductName() as %String
Get the product name for the page.
method %OnGetTitle() as %String
Get the (localized) title string for the page. This should be implemented in a subclass.
method DrawTableHeader(pSeed As %String) as %Status
Draw the contents of the Table Header (the region between the diagram and the table).
classmethod FetchCubeStatistics() as %String [ ZenMethod ]
Return an object which contains the most recent vital statistics for all cubes on the system which have recorded at least one update. Statistics are returned as a serialized JSON object organized as
  return = {
  "cubeStats":[stats1,stats2,...],
  "lookup":{CubeKey:statsLocation}
  }
  
classmethod FetchScheduleDefault() as %String [ ZenMethod ]
Fetch a serialized JSON object which contains all of the current defaults as defined by the %DeepSee.CubeSchedule.Group.
method GetMapDefinition(ByRef pParms, Output pObject As %RegisteredObject) as %Status
Get Registry Map definition for JSON provider.
method GetTitle() as %String [ ZenMethod ]
classmethod GetTreeInfo(pRoot As %String, Output pTree, ByRef pParms) as %Status
Provide contents of the data source tree.
method OnDrawRibbon() as %Status
Draw additional stuff in the ribbon bar
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
Get information to display in the ribbon bar.
classmethod ShowMap(showTable=0)
CHUI quick view
method SubmitMap(pCommand As %String, pProvider As %ZEN.Auxiliary.jsonProvider, pSubmitObject As %RegisteredObject, ByRef pResponseObject As %RegisteredObject) as %Status
Object submit handler JSON provider. This is called when the client submits the current schedule to save into a %DeepSee.CubeSchedule.RegistryDefinitionSuper class
method SwitchActiveRegistry(pClassName="") as %Status [ ZenMethod ]
Client-side call to switch the active registry
clientmethod addGroupDetailTimeInput(customId) [ Language = javascript ]
Place an HTML time selection control on the page that is available in the Group details pane.
clientmethod adjustSizes() [ Language = javascript ]
Adjust sizes of components on the page.
clientmethod applyDescription(what) [ Language = javascript ]
Set textarea description back into the text description field.
clientmethod applyDetails() [ Language = javascript ]
Apply changes from detail form.
clientmethod applyScheduleToCube(sourceSchedule, targetCubeObj) [ Language = javascript ]
Copy a sourceSchedule to a targetcube object. This will reference the registered defaultSchedule on the page and will only set properties from the source which exist in the default. If a property in the default is missing from the source, the default will be used.
clientmethod applyTreeSearch(searchStr) [ Language = javascript ]
Searches the cube list for cube keys which match the search string. If the searchStr is non-null, all cube keys which are not an inclusion match are hidden. A null search string will reveal all available cubes. Due to the fact all cube keys are always upper case, the search is not case sensitive to searchStr.
clientmethod buildAllRegisteredGroups() [ Language = javascript ]
clientmethod buildOneRegisteredGroup() [ Language = javascript ]
clientmethod canUserModify() [ Language = javascript ]
Test if the user has write privilege.
clientmethod cloneObject(obj, clone) [ Language = javascript ]
Create a clone of the given object.
clientmethod confirmSyncExemption() [ Language = javascript ]
Exempting the synchronize from relationship dependencies is not recommended. When the user attempts to turn this setting off, inform that this is not recommended and confirm that this is really what the user wants to do.
clientmethod createCubeStatsTable(cubes) [ Language = javascript ]
Create a table for the details pane which contains
clientmethod createNewCubeGroup(name, cube) [ Language = javascript ]
Create a new group with defaults
clientmethod createNewRegistry() [ Language = javascript ]
Launch a popup window to create a new Cube Registry document.
clientmethod doApplyGroupChange() [ Language = javascript ]
Commit the currently selected group schedule to all of the cubes organized within it.
clientmethod doMerge() [ Language = javascript ]
User clicked Merge from "Merge to Group..."
clientmethod doMergeLoadList() [ Language = javascript ]
User checked the Merge checkbox. We now load the registered groups into the drop-down and show it.
clientmethod doRegister() [ Language = javascript ]
User clicked "Register Group" button to register all cubes for a group when view mode is "table".
clientmethod editDescription(what) [ Language = javascript ]
Toggle to show/hide Description textarea; set what's in text into textarea.
clientmethod enableItem(row, flag) [ Language = javascript ]
Enable/disable a row in the table.
clientmethod filterChanged(value) [ Language = javascript ]
User entered something in to the filter. Re-load the table with filter value.
clientmethod findRowForItem(item) [ Language = javascript ]
Find the row number in the table for the given model item. This must be called after the table has been rendered.
clientmethod findTableItem(cubeName) [ Language = javascript ]
clientmethod formatDurationForDisplay(duration, unit, scale) [ Language = javascript ]
Given an input duration in units of unit, convert this time duration to a human-readable localized display value. If unit is not specified, it is assumed duration is in seconds. The scale parameter allows the caller to request precision of the fractional seconds reported. If not supplied, this defaults to 2.
clientmethod formatOdbcToDate(odbc) [ Language = javascript ]
Takes an ODBC string of the form 'YYYY-MM-DD hh:mm:ss[.sss]' in whole or in date/time part and converts it to a javascript Date object.
clientmethod formatOdbcToLocale(odbc) [ Language = javascript ]
Formats an ODBC date (YYYY-MM-DD), time (hh:mm:ss[.sss]), or dateTime (YYYY-MM-DD hh:mm:ss[.sss]) string to human-readable format in the client's locale.
clientmethod getCSSForType(type) [ Language = javascript ]
Find the css class for the given row type.
clientmethod getCubeStatistics() [ Language = javascript ]
Fetch the cube statistics and place them in the _cubeStatistics property on the page.
clientmethod getDayOf(item) [ Language = javascript ]
return what to display for day of month or day of week in center pane
clientmethod getMapObject() [ Language = javascript ]
Return the cube definition object.
clientmethod getPageTitle() as %String [ Language = javascript ]
Get the title string to add to the locator row. This should be implemented in a subclass.
clientmethod getScheduleDefault() [ Language = javascript ]
Fetch a copy of what defines a default schedule from the server and store it in the _scheduleDefault on the page.
clientmethod getSelectedItem() [ Language = javascript ]
Return the current selected item.
clientmethod isClosed(map, item) [ Language = javascript ]
clientmethod loadCubeDetails(item, systemLock) [ Language = javascript ]
clientmethod mergeCubeToGroup(cubeObj, toGroupLocation, map) [ Language = javascript ]
Move a cube from its current unregistered location into a registered group.
clientmethod mergeGroups(mergeFromText, mergeTo, map, index) [ Language = javascript ]
Preparation for Merging two groups
clientmethod moveItemDown(type, row, index) [ Language = javascript ]
Move a group down one space in the list of Groups within the schedule Map. If this is called on the last group this will have no effect. If the target group can be moved, the map will get reordered, saved, and redrawn. If an item in the schedule is currently selected, that selection will be confirmed after the reordered schedule is redrawn.
clientmethod moveItemUp(type, row, index) [ Language = javascript ]
Move a group up one space in the list of Groups within the schedule Map. If this is called on the first group this will have no effect. If the target group can be moved, the map will get reordered, saved, and redrawn. If an item in the schedule is currently selected, that selection will be confirmed after the reordered schedule is redrawn.
clientmethod onPopupAction(popupName, action, value) [ Language = javascript ]
This client event is fired when the a popup page launched from this page fires an action.
clientmethod onlayoutHandler(load) [ Language = javascript ]
Adjust sizes of components on the page.
clientmethod onloadHandler() [ Language = javascript ]
This client event, if present, is fired when the page is loaded.
clientmethod removeCubeFromGroup(cubeKey, map) [ Language = javascript ]
Remove a cube from an existing group. If the target cube is the only cube in the group, remove the group also.
clientmethod removeItem(type, row, index) [ Language = javascript ]
Remove a row from the table.
clientmethod renderTable() [ Language = javascript ]
Update the contents of the model table.
clientmethod repairBuild(cubeKey) [ Language = javascript ]
clientmethod rowClick(type, row) [ Language = javascript ]
User click on a row in the table.
clientmethod rowMouseOut(div) [ Language = javascript ]
method for when mouse out
clientmethod rowMouseOver(element, div) [ Language = javascript ]
method for when user mouse over a row in the table
clientmethod save() [ Language = javascript ]
Save the map.
clientmethod saveMap() [ Language = javascript ]
Do save now.
clientmethod selectItem(type, row, force, fromTree) [ Language = javascript ]
Select a row in the table.
clientmethod selectTableItem(cubeName) [ Language = javascript ]
User selected a row from the table view
clientmethod setCubeStatsTable(cubes, targetDivId) [ Language = javascript ]
Return an html table displaying statistics for the cubes array. If a specific targetDivId is provided, the table will be appended to that predefined html div element. If no targetDivId is provided, a containing div element will be created to hold the table and returned.
clientmethod setScheduleControls() [ Language = javascript ]
Manage the visibility of the schedule controls based on a user selection, and send the new settings to be saved to the open schedule.
clientmethod setViewModeHandler(mode As %Library.String, oldmode As %Library.String) [ Language = javascript ]
Do the actual work of updating the view to match the current view mode.
clientmethod sortCubeGroup(cubeGroup) [ Language = javascript ]
Consult the cube dependencies to reorder scheduled cubes in the build order sent from the server. This sort will reorder according to the cube's NaturalBuildOrder within its NaturalGroup.
clientmethod sortCubeList(cubes) [ Language = javascript ]
Consult the cube dependencies to reorder an arbitrary list of cubes in a valid build order. This sort will reorder according to each cube's NaturalBuildOrder within its NaturalGroup.
clientmethod tableDropHandler(dragData) [ Language = javascript ]
Drop handler for model table. dragData.text is the GroupName; dragData.value is "group" or "cube" to indicate what is dragged here.
clientmethod toggleDisclosure(key) [ Language = javascript ]
User click on disclosure icon in table.
clientmethod toggleExpand(flag) [ Language = javascript ]
user clicked Expand All (flag=1) or Collapsed All (flag=0).
clientmethod toggleSettings() [ Language = javascript ]
Toggle display of settings (property tabs) box.
clientmethod toolMenu(pageName) [ Language = javascript ]
Show a selected tool in a new window. pageName="Analyzer", "Architect", "MDXQuery", or "ModelBrowser".
clientmethod updateMap(reloadMap) [ Language = javascript ]
This method will save changes and reload tree. If reloadMap is set to 1 then reload content from server for table. reloadMap is 1 for drag&drop merge and remove.
clientmethod updateTable() [ Language = javascript ]
Update the contents of the model table.

Inherited Members

Inherited Properties

Inherited Methods

FeedbackOpens in a new tab