Skip to main content

%DeepSee.UI.Dialog.AdvancedFilter

Class %DeepSee.UI.Dialog.AdvancedFilter Extends %DeepSee.UI.Dialog.standardDialog [ System = 4 ]

This dialog lets the user create or edit an Advanced filter definition for a DeepSee pivot.
This can also be used to create or edit a Named Filter for a DeepSee Subject Area.

Parameters

APPLYBUTTON

Parameter APPLYBUTTON = 1;

Properties

cubeName

Property cubeName As %ZEN.Datatype.string(ZENURL = "CUBE");

Cube name.

expression

Property expression As %ZEN.Datatype.string(ZENURL = "EXPRESSION");

Initial filter expression.

filterNames

Property filterNames As %ZEN.Datatype.string;

List of possible filter (cube element) names (captions).

filterValues

Property filterValues As %ZEN.Datatype.string;

List of possible filter (cube element) values.

filterTypes

Property filterTypes As %ZEN.Datatype.string;

List of possible filter (cube element) types.

filterMsrTypes

Property filterMsrTypes As %ZEN.Datatype.string;

List of possible filter (cube element) subtypes (measures only)

selectedIndex

Property selectedIndex As %ZEN.Datatype.integer;

Index of current item.

searchKey

Property searchKey As %ZEN.Datatype.string;

Current search Key

isNamedFilter

Property isNamedFilter As %ZEN.Datatype.boolean(ZENURL = "NAMEDFILTER");

If true, this is a Named Filter

filterName

Property filterName As %ZEN.Datatype.string(ZENURL = "FILTERNAME");

For named filters, this is the filter name.

XDatas

CSS3Style

XData CSS3Style

Style

XData Style

dialogBody

XData dialogBody [ XMLNamespace = "http://www.intersystems.com/zen" ]

Contents of the dialog body.

Methods

%OnGetTitle

Method %OnGetTitle() As %String

Get the (localized) title string for the dialog. This should be implemented in a subclass.

%OnGetSubtitle

Method %OnGetSubtitle() As %String

Get the (localized) subtitle string for the dialog. This should be implemented in a subclass.

ondialogStart

ClientMethod ondialogStart() [ Language = javascript ]

This callback, if defined, is called when the dialog page is loaded.

ondialogFinish

ClientMethod ondialogFinish(action) [ Language = javascript ]

This callback, if defined, is called when the user presses the OK or Apply action buttons. If this returns false, then the action is cancelled.

getDialogValue

ClientMethod getDialogValue() [ Language = javascript ]

Get return value for dialog.

%OnAfterCreatePage

Method %OnAfterCreatePage() As %Status

GetFiltersBySearchKey

Method GetFiltersBySearchKey() As %Status [ ZenMethod ]

This method recalculates the available filters in this cube, taking into account a search key.

adjustSize

ClientMethod adjustSize() [ Language = javascript ]

Adjust sizes components on the page.

getFilterGraph

ClientMethod getFilterGraph() [ Language = javascript ]

Return the object graph that describes the filter.

renderCommandButtons

ClientMethod renderCommandButtons() [ Internal, Language = javascript ]

configureCommandButtons

ClientMethod configureCommandButtons(node, graph, undo) [ Internal, Language = javascript ]

renderCommandsHeader

ClientMethod renderCommandsHeader(node, graph) [ Internal, Language = javascript ]

renderCommandsOperatorPanel

ClientMethod renderCommandsOperatorPanel(node) [ Internal, Language = javascript ]

renderCommandsLiteralPanel

ClientMethod renderCommandsLiteralPanel(node) [ Internal, Language = javascript ]

renderCommandsMemberPanel

ClientMethod renderCommandsMemberPanel(node) [ Internal, Language = javascript ]

rbChanged

ClientMethod rbChanged() [ Internal, Language = javascript ]

User selected a radio button.

initializeSearchBoxControls

ClientMethod initializeSearchBoxControls(node, member, mbrType) [ Internal, Language = javascript ]

verifySearchBox

ClientMethod verifySearchBox() [ Internal, Language = javascript ]

updateSearchBoxControls

ClientMethod updateSearchBoxControls() [ Language = javascript ]

Update controls to match current state.

remapQueryToDisplayKey

ClientMethod remapQueryToDisplayKey(node) [ Internal, Language = javascript ]

renderCommandsKeyPanel

ClientMethod renderCommandsKeyPanel(node, ruleSearchBox) [ Internal, Language = javascript ]

renderCommands

ClientMethod renderCommands() [ Language = javascript ]

Update the command panel.

renderHelp

ClientMethod renderHelp() [ Language = javascript ]

Update the help box.

renderTree

ClientMethod renderTree() [ Language = javascript ]

Update the expression tree.

buildNodeIndex

ClientMethod buildNodeIndex(node, parent) [ Language = javascript ]

Build index of nodes Set _index and _parent as side effect.

renderNode

ClientMethod renderNode(node, level) [ Language = javascript ]

Get HTML for a node within the expression graph.

renderOperatorNode

ClientMethod renderOperatorNode(node) [ Language = javascript ]

Get HTML for an operator node within the expression graph;

renderMeasureOperatorNode

ClientMethod renderMeasureOperatorNode(node) [ Language = javascript ]

Get HTML for a measure operator node within the expression graph;

renderOperatorSelector

ClientMethod renderOperatorSelector(node) [ Language = javascript ]

Get HTML for an operator selector the expression graph;

renderValueNode

ClientMethod renderValueNode(node) [ Language = javascript ]

Get HTML for a value selector the expression graph;

selectItem

ClientMethod selectItem(idx) [ Language = javascript ]

Mouse click on item in diagram.

changeSearchKey

ClientMethod changeSearchKey() [ Language = javascript ]

Change of search key.

applyLiteral

ClientMethod applyLiteral() [ Language = javascript ]

Change of literal value.

changeMember

ClientMethod changeMember(idx, ctrl) [ Language = javascript ]

The user has selected a new item in the *member* select list.

changeKey

ClientMethod changeKey(idx) [ Language = javascript ]

Change of key type.

changeNode

ClientMethod changeNode(idx, type, value, text) [ Language = javascript ]

Change of node type.

clearNodes

ClientMethod clearNodes(render) [ Language = javascript ]

Reset the expression graph.

addBranch

ClientMethod addBranch() [ Language = javascript ]

Add a new branch.

addCondition

ClientMethod addCondition() [ Language = javascript ]

Add a new condition.

removeCondition

ClientMethod removeCondition() [ Language = javascript ]

Remove the current condition.

convertToMDX

ClientMethod convertToMDX() [ Language = javascript ]

Convert the expression graph to an MDX clause.
This is used to convert the current graphical expression into the MDX that will be used as a %FILTER clause.

convertNodeToMDX

ClientMethod convertNodeToMDX(node) [ Language = javascript ]

Convert the expression to an MDX clause. Return an object containing: {text, hasSet, levelName}

keyToMDX

ClientMethod keyToMDX(key) [ Language = javascript ]

Convert a key value to MDX.

BuildFilterGraph

Method BuildFilterGraph(ByRef pParameters, Output pMetaData, Output pData) As %Status

Return the initial filter graph for a given cube and MDX expression.
pParameters("cube") = cube name
pParameters("expression") = MDX expression

TEST

ClassMethod TEST(pExpression = "", pCube = "") [ Internal ]

Convert the given filter expression to a graph.

%ConvertExpressionToGraph

ClassMethod %ConvertExpressionToGraph(Output pData, pCubeName As %String, pExpression As %String) As %Status [ Internal ]

Convert the given filter expression to a graph.

%ConvertAxisNodeToGraph

ClassMethod %ConvertAxisNodeToGraph(pLVN As %String, pCubeName As %String, pNode As %DeepSee.Query.node) As %Status [ Internal ]

Convert the given DeepSee Axis Node to a graph.
pLVN is the name of the local variable in which results are placed.

%ConvertSearchKeyToGraph

ClassMethod %ConvertSearchKeyToGraph(pLVN As %String, pCubeName As %String, pKey As %String) As %Status [ Internal ]

Convert a measure search key to a graph. "[Measures].[X].100"
pLVN is the name of the local variable in which results are placed.

%GetSpecInfo

ClassMethod %GetSpecInfo(pCubeName As %String, pSpec As %String, Output pMemberSpec As %String, Output pMemberCaption As %String, Output pKey As %String, Output pKeyCaption As %String, Output pIsNot As %Boolean, Output pIsRange As %Boolean) As %Status [ Internal ]

Utility. Get information on the given member spec.
pSpec takes the form: "dim.hier.level.member"
On return, pMemberSpec contains: "dim.hier.level", pMemberCaption contains the caption for the member, pKey contains the key value for the member, and pKeyCaption contains the caption for the member.

GetMemberList

Method GetMemberList(ByRef pParameters, Output pMetaData, Output pData) As %Status

Return the list of members for a given cube and dimension.
pParameters("cube") = cube name
pParameters("dimension") = cube element
pParameters("search") = search key

canUndo

ClientMethod canUndo() [ Language = javascript ]

Return true if it is possible to undo an action

undo

ClientMethod undo() [ Language = javascript ]

Undo the most recent change.

clearUndoBuffer

ClientMethod clearUndoBuffer() [ Language = javascript ]

addUndoAction

ClientMethod addUndoAction() [ Language = javascript ]

Remember the current state in the undo buffer.

cloneObject

ClientMethod cloneObject(obj, clone) [ Language = javascript ]

Create a clone of the given object.

SaveNamedFilter

ClassMethod SaveNamedFilter(pCube As %String, pFilterName As %String, pTooltip As %String, pSpec As %String) As %String [ ZenMethod ]

Save a named filter.

LookupMemberByKey

ClassMethod LookupMemberByKey(pCubeName = "", pLevelSpec = "", pKey = "") As %String [ ZenMethod ]

Given a complete reference to a key, look up the display text.