Class FilterExpressionTransform
- java.lang.Object
-
- com.microstrategy.web.transform.AbstractTransform
-
- com.microstrategy.web.transform.AbstractLayoutTransform
-
- com.microstrategy.web.app.transforms.AbstractAppTransform
-
- com.microstrategy.web.app.transforms.ExpressionGenericTransform
-
- com.microstrategy.web.app.transforms.FilterExpressionTransform
-
- All Implemented Interfaces:
AppTransform
,LayoutTransform
,Transform
public class FilterExpressionTransform extends ExpressionGenericTransform
The FilterExpressionTransform is the transform that is used to render the view and base filters in the MicroStrategy Web GUI. It can transform aFilterElementBean
object. Note that this transform extends theExpressionGenericTransform
, which transforms on aExpressionBean
. This is because this transform reuses a vast amount of the rendering methods from that transform, and only overrides filter editor-specific functionality.- Since:
- MicroStrategy Web 9.0.0
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.microstrategy.web.app.transforms.ExpressionGenericTransform
ExpressionGenericTransform.Context
-
-
Field Summary
-
Fields inherited from class com.microstrategy.web.app.transforms.ExpressionGenericTransform
_allowAQElemsSearchParam, _allowAQFormElemsToggleParam, _allowAQSingleMultiFormToggleParam, _allowMQSingleMultiQualToggleParam, _applyEvent, _clearFilterImageTxtParam, _cssAddConditionNonEditable, _cssBranchOperatorEditable, _cssBranchOperatorNonEditable, _cssConstant, _cssConstantInError, _cssConstantNonEditable, _cssContent, _cssEditableSubexpTable, _cssFilterActionType, _cssGlobal, _cssGlobalContent, _cssObjectName, _cssObjectNameInError, _cssObjectNameNonEditable, _cssOperator, _cssOperatorInError, _cssOperatorNonEditable, _cssText, _cssTextEditable, _cssTextNonEditable, _cssTitle, _defaultAttrQualModeParam, _dynamicDateDisplayParam, _expandEmbeddedFiltersParam, _formName, _formsCollectionParam, _helpTopicNameParam, _hideIDFormsParam, _multiEvent, _separatorParam, _showAddConditionButton, _showDottedLineParam, _showInlineAcceptCancelButtonsParam, _stackSubexpressionsParam, _submitButtonNameParam, _titleParam, DISPLAY_DYNAMIC_DATES_AS_DYNAMIC, DISPLAY_DYNAMIC_DATES_AS_STATIC, helpTopic, helpType, PARAM_NAME_OLD_EDIT_MODE, renderForm
-
Fields inherited from class com.microstrategy.web.app.transforms.AbstractAppTransform
_bean, _componentBlock, _cssPrefix, _imgBlank, _imgWait, _selfOutput, _subOutput, appliesTo, CLASS_INPUT, CLASS_MESSAGE, contextMenus, cssFile, cssPrefix, debugErrorFlags, debugFlags, dragMode, extraInput, extraUrl, FP_APPLIES_TO, FP_CONTEXT_MENUS, FP_CSS_ERROR_MESSAGE, FP_CSS_ERROR_TITLE, FP_CSS_FILE, FP_CSS_PREFIX, FP_DEBUG_ERROR_FLAGS, FP_DEBUG_FLAGS, FP_DRAG_MODE, FP_EXTRA_INPUT, FP_EXTRA_URL, FP_HEIGHT, FP_IFRAME_ENABLED, FP_IMG_WAIT, FP_INITIAL_INDENT, FP_ORIENTATION, FP_ORIENTATIONS_ALLOWED, FP_PARTIAL_IFRAME_UPDATE, FP_PROCESSING_BUTTONS_FLAGS, FP_PROCESSING_INFO_FLAGS, FP_RESIZE_LEVEL, FP_SCRIPT_CLASS, FP_TYPE, FP_USE_DHTML, FP_WIDTH, globalCssErrorMessage, globalCssErrorTitle, height, iframeEnabled, imgWait, indent, initialIndent, isDHTML, orientation, orientationsAllowed, partialIframeUpdate, PROCESSING_BUTTONS_ALL, PROCESSING_BUTTONS_CANCEL, PROCESSING_BUTTONS_HISTORY_LIST, PROCESSING_BUTTONS_REFRESH, PROCESSING_BUTTONS_VIEW_DETAILS, PROCESSING_INFO_ALL, PROCESSING_INFO_DESCRIPTION, PROCESSING_INFO_LAST_UPDATE, PROCESSING_INFO_NAME, PROCESSING_INFO_NONE, PROCESSING_INFO_STATUS, processingButtonsFlags, processingInfoFlags, RESIZE_ALL, RESIZE_HORIZONTAL, RESIZE_NONE, RESIZE_VERTICAL, resizeLevel, scriptClass, scriptEndTagEncoder, type, useDHTML, width
-
-
Constructor Summary
Constructors Constructor Description FilterExpressionTransform()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addClickOnAttrSelectorButton(InputTag inputTag, WebEvent toggleSingleExprEvent, boolean isMultiFormQual)
protected void
addClickOnMetricSelectorButton(InputTag inputTag, WebEvent toggleMode, boolean isMetricExprQual)
protected void
addEventHiddenInputs(java.util.ArrayList eventList)
protected void
checkStatus(MarkupOutput out)
Once the shell is rendered, this method checks the bean'sgetXMLStatus
and calls the corresponding transform method, based on its value:AbstractAppTransform.transformForRequestCanceled(MarkupOutput)
AbstractAppTransform.transformForRequestInError(MarkupOutput)
AbstractAppTransform.transformForRequestNotInited(MarkupOutput)
AbstractAppTransform.transformForRequestProcessing(MarkupOutput)
AbstractAppTransform.transformForRequestSuccessful(MarkupOutput)
AbstractAppTransform.transformForRequestWaitingForUserInput(MarkupOutput)
boolean
getAutoApply()
Returns whether the auto-apply functionality is enabled.java.lang.String
getDescription()
Returns a textual description of the transform.protected java.lang.String
getEmptyFilterMessage()
Returns the message that should be used if the filter is empty.java.lang.Class
getSupportedBeanType()
Returns the supported bean type for this transform.void
initializeTransform(Transformable data)
Overrides the initializeTransform method with type-specific initialization data.boolean
isEditable()
This method is to return whether the expression should be considered to be editable or not.boolean
isUpdateManagerEnabled()
This method can be overridden by child classes to signal whether or not to send all multiple event requests through the update manager.protected void
renderAQQualifyUnit(MarkupOutput out, WebNode node, WebEvent acceptEvent)
void
renderButton(MarkupOutput out, WebEvent event, java.lang.String desc)
protected void
renderMQUnitComparison(MarkupOutput out, java.lang.String metricID, WebEvent acceptEvent)
This method will render the unit comparison list for a metric-to-metric qualfication that is currently being edited..void
renderSaveCancelButtons(MarkupOutput out)
protected void
setBoneProperties(JsonGenerator boneProps)
Sets the necessary properties to the bone assigned to this transform (based on theAbstractAppTransform.scriptClass
formal parameter)
Usually called byAbstractAppTransform.renderRegisterBone(MarkupOutput)
Can be overwritten to add or modify bone properties.protected boolean
supportsPromptEditor()
void
transformForRequestSuccessful(MarkupOutput out)
Generates the output when the bean's status isEnumRequestStatus.WebBeanRequestSuccessful
.-
Methods inherited from class com.microstrategy.web.app.transforms.ExpressionGenericTransform
addAttDetails, addAttrsToTag, addOption, buildFlattenedList, calculateBlockBegin, canEditOperator, canEditSubexpression, canFilterOnUnit, canMoveDown, canMoveUp, canSelectElements, canShowMetricTextOperators, canToggleAQFormElements, generateAnchor, generateDeleteSubExpressionClickJS, generateMultiEventArgumentString, generateMultiEventArgumentString, generateOptionTag, generateUpdateManagerEventJSString, getAddConditionEvent, getAddElementsEvent, getAddEmbeddedPromptEvent, getApplyEvent, getAttributesForAcceptButton, getAttributesForPromptButton, getAvailableObjectsFolder, getBeanName, getBeanPath, getBeanStateLevel, getBeginJavaScriptCall, getBoneId, getCancelAllEvent, getCancelEvent, getClearAllEvent, getCloseEvent, getConstantValue, getContentTableAttributes, getContentTableClass, getCreateSubexpressionEvent, getCssName, getDeleteEvent, getDisplayName, getEditEmbeddedPromptEvent, getEditEvent, getEditExpressionJS, getEditor, getElemsSearchEvent, getEventTargetExpressionBean, getExpBeanPath, getExpressionBean, getFilterType, getFirstPageEvent, getFlattenedContexFolderList, getFlattenedContextFolderPath, getFormName, getForms, getHelpEvent, getImageFolder, getLastPageEvent, getMainDivAttributes, getMetricName, getMetricShortuctNode, getMQAcceptEvent, getNextPageEvent, getObjectAlias, getOnClickJavaScript, getOperatorName, getPreferenceIntegerReplaceNull, getPrevPageEvent, getPromptButtonSourcePath, getRemoveElementsEvent, getRemovePromptEvent, getRestoreStateEvent, getSeparator, getSpecailBeginJavaScriptCall, getToggleAQFormElemsEvent, getToggleOperatorEvent, getToggleQualExprEvent, getTooltipReportObjects, getValidateJavaScript, getWorkingSet, includeOwnerInfo, includeTimeInfo, initExpressionBeanTransform, initializeCartSettings, initializeCartSettings, initializeCss, isAddWizardRequested, isApplyCancelEnabled, isAutoSynchronizeEnabled, isFilterEditorFrameEmpty, isFilterEmpty, isItemKeptInCartAvailable, isMetricDimtyTooltipEnabled, isNotDhtml, isObjectInTemplate, isShowObjectTags, isStackedSubexpEnabled, isSubexpressionInError, isViewFilter, isViewReport, newCart, newContext, newFet, renderAcceptButton, renderAddWizard, renderAddWizardButtons, renderAddWizardDropdown, renderAddWizardTransition, renderApplyCancelButtons, renderAQEditMode, renderAQListCart, renderAQListEditMode, renderAQListFirstRow, renderAQOperatorOption, renderAQOperatorOptions, renderAQQualifyAttrForms, renderAQQualifyAttrForms, renderAQQualifyConstantTextbox, renderAQQualifyConstantTextbox, renderAQQualifyEditMode, renderAQQualifyFunctions, renderAQQualifyFunctions, renderAQQualifyUnitComparison, renderCancelButton, renderCloseButton, renderConstantPromptArea, renderContent, renderDescendantOptions, renderDottedLine, renderDownButton, renderEditorTitle, renderEmptyFilterMessage, renderErrorMessage, renderEventHiddenInputs, renderExpression, renderFilterNode, renderFilterTree, renderGenericValidationErrorMessage, renderHeader, renderHeaderAddCondition, renderHeaderAutoApply, renderHeaderClearAll, renderHelpButton, renderJavascript, renderMeNodeEditMode, renderMeNodeQualFunctions, renderMeNodeQualOperatorOptions, renderMQConstantTextbox, renderMQEditMode, renderMQFunctions, renderMQOperatorOption, renderMQOperatorOption, renderMQOperatorOptions, renderOperator, renderOperator, renderOperatorEditMode, renderOperatorViewMode, renderPromptButton, renderPromptButton, renderRemoveSubexpressionButton, renderSeparator, renderSpecificValidationErrorMessage, renderSubExpression, renderSubexpressionBodyViewMode, renderSubexpressionBodyViewMode, renderSubExpressionEditMode, renderSubExpressionViewMode, renderTitle, renderUpAndDownButtons, renderUpAndDownButtons, renderUpButton, renderUpButton, renderXDAMetricSelectorButton, setFormName, shallRenderAcceptCancell, shallRenderForm, shouldShowObject, showCloseButton, useWorkingSetForFormLookup
-
Methods inherited from class com.microstrategy.web.app.transforms.AbstractAppTransform
addContactInfo, addDynamicScriptClass, addDynamicScriptFile, addFormalParameter, checkLevel, checkProcessingButtonsFlag, checkProcessingInfoFlag, displayError, displayError, displayError, emptyCell, excludeStaticTags, generateAnchorForExport, generateHiddenInputsForEvent, generateIFrameTag, getAppContext, getArgumentName, getAttributesShellDiv, getClientSideHelper, getContainerServices, getContext, getContextMenu, getContextMenuManager, getContextMenuManagerName, getContextMenusDefinition, getCssPrefix, getDateFormat, getDebugOut, getDescriptor, getDescriptor, getDescriptor, getDescriptor, getDisplayMode, getErrorMessage, getErrorMessage, getErrorTitle, getErrorTitle, getEventManager, getFirstDayOfWeek, getFloatValue, getHelpPath, getID, getIntValue, getJSNameSpace, getLayoutContext, getLocale, getLocale, getPreferenceValue, getProjectID, getRefreshEvent, getRequestKeys, getResourcesFolder, getScriptClass, getStringValue, getStyleRequestContext, getStyleShellDiv, getTagsFactory, getTimeFormat, getUnitsLabel, getWebBeanErrorInfo, hasSubBlock, initHeightAndWidthFromPreferences, initializeImages, initializeWebComponent, is508, isBlockMode, isContextMenusEnabled, isDhtml, isDialog, isDormant, isFeatureAvailable, isIFrameDisplayMode, isIFrameEnabled, isIFrameRequest, isJobExpired, isModal, isOpen, isPortlet, isTrue, localIsIFrameDisplayMode, newHiddenInputBuilder, newNamespaceEncoder, newURIBuilder, redirectToDisplayError, renderBean, renderBean, renderBean, renderBean, renderContextMenus, renderCssLink, renderDescriptor, renderDescriptor, renderErrorButton, renderHiddenInputFromRequest, renderImage, renderLayout, renderProcessingButton, renderProcessingButton, renderProcessingButton, renderProcessingButtonForGet, renderProcessingButtonForGet, renderProcessingButtons, renderProcessingInfo, renderProcessingInfoData, renderProcessingInfoImage, renderProcessingInfoSubtitle, renderProcessingInfoTitle, renderProcessingObjectName, renderRefreshButton, renderRegisterBone, renderSelf, renderShell, renderSubBlock, renderUserHelpAnchor, setDisplayMode, setHasSubBlock, setHeight, setIFrameDisplayMode, setIsDormant, setRenderSubBlock, setShellAttributeOnClosedComponent, setWidth, shouldDisplay, transform, transformForRequestCanceled, transformForRequestInError, transformForRequestNotInited, transformForRequestProcessing, transformForRequestWaitingForUserInput
-
Methods inherited from class com.microstrategy.web.transform.AbstractLayoutTransform
getLayoutDefinition, setLayoutDefinition, transformUsingLayout
-
Methods inherited from class com.microstrategy.web.transform.AbstractTransform
addFormalParam, canTransform, getEvents, getFormalParams, getPreview, isPreviewAvailable, isResolved, removeFormalParam, setAnnotation, setDeprecated, supports, supports
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.microstrategy.web.transform.LayoutTransform
getLayoutDefinition, setLayoutDefinition
-
Methods inherited from interface com.microstrategy.web.transform.Transform
canTransform, getFormalParams, getID, getPreview, isPreviewAvailable, isResolved, supports, supports, transform
-
-
-
-
Method Detail
-
getDescription
public java.lang.String getDescription()
Description copied from interface:Transform
Returns a textual description of the transform.- Specified by:
getDescription
in interfaceTransform
- Overrides:
getDescription
in classExpressionGenericTransform
- Returns:
- The textual description of the transform.
-
initializeTransform
public void initializeTransform(Transformable data)
Overrides the initializeTransform method with type-specific initialization data. This MUST be overridden by any classes which extend this transform if they do not transform on a FilterElement object, because this initializeTransform method assumes that the Transformable passed to it is of type FilterElement.- Specified by:
initializeTransform
in interfaceAppTransform
- Overrides:
initializeTransform
in classExpressionGenericTransform
- Parameters:
data
- The object that is being transformed.
-
setBoneProperties
protected void setBoneProperties(JsonGenerator boneProps)
Description copied from class:AbstractAppTransform
Sets the necessary properties to the bone assigned to this transform (based on theAbstractAppTransform.scriptClass
formal parameter)
Usually called byAbstractAppTransform.renderRegisterBone(MarkupOutput)
Can be overwritten to add or modify bone properties.- Overrides:
setBoneProperties
in classExpressionGenericTransform
- Parameters:
boneProps
- the JsonGenerator object that contains the collection of bone properties.
-
renderSaveCancelButtons
public void renderSaveCancelButtons(MarkupOutput out)
-
renderButton
public void renderButton(MarkupOutput out, WebEvent event, java.lang.String desc)
-
addEventHiddenInputs
protected void addEventHiddenInputs(java.util.ArrayList eventList)
- Overrides:
addEventHiddenInputs
in classExpressionGenericTransform
-
checkStatus
protected void checkStatus(MarkupOutput out)
Description copied from class:AbstractAppTransform
Once the shell is rendered, this method checks the bean'sgetXMLStatus
and calls the corresponding transform method, based on its value:AbstractAppTransform.transformForRequestCanceled(MarkupOutput)
AbstractAppTransform.transformForRequestInError(MarkupOutput)
AbstractAppTransform.transformForRequestNotInited(MarkupOutput)
AbstractAppTransform.transformForRequestProcessing(MarkupOutput)
AbstractAppTransform.transformForRequestSuccessful(MarkupOutput)
AbstractAppTransform.transformForRequestWaitingForUserInput(MarkupOutput)
- Overrides:
checkStatus
in classAbstractAppTransform
- Parameters:
out
- output by this transform- See Also:
AbstractAppTransform.renderShell(com.microstrategy.web.beans.MarkupOutput)
-
transformForRequestSuccessful
public void transformForRequestSuccessful(MarkupOutput out)
Description copied from class:AbstractAppTransform
Generates the output when the bean's status isEnumRequestStatus.WebBeanRequestSuccessful
. This is the main entry point to generate the output for those Transforms that just want to render the "regular" bean case.
This is an abstract method. All classes need to implement it.- Overrides:
transformForRequestSuccessful
in classExpressionGenericTransform
- Parameters:
out
- output by this transform- See Also:
AbstractAppTransform.checkStatus(com.microstrategy.web.beans.MarkupOutput)
-
isEditable
public boolean isEditable()
This method is to return whether the expression should be considered to be editable or not. If this is true, then the transform may render the expression with editing capabilities. If this is false, then the transform should render the expression in a view-only mode.- Overrides:
isEditable
in classExpressionGenericTransform
- Returns:
- True if the expression should be editable, false otherwise.
-
getAutoApply
public boolean getAutoApply()
Description copied from class:ExpressionGenericTransform
Returns whether the auto-apply functionality is enabled. If this is true, the transform will render the GUI such that it expects that every operation will apply changes to the original expression automatically.- Overrides:
getAutoApply
in classExpressionGenericTransform
- Returns:
- Whether auto-apply is enabled.
-
getSupportedBeanType
public java.lang.Class getSupportedBeanType()
Description copied from class:ExpressionGenericTransform
Returns the supported bean type for this transform.- Specified by:
getSupportedBeanType
in interfaceTransform
- Overrides:
getSupportedBeanType
in classExpressionGenericTransform
- Returns:
- A Class object representing the bean type this transform supports.
-
getEmptyFilterMessage
protected java.lang.String getEmptyFilterMessage()
Description copied from class:ExpressionGenericTransform
Returns the message that should be used if the filter is empty.- Overrides:
getEmptyFilterMessage
in classExpressionGenericTransform
-
isUpdateManagerEnabled
public boolean isUpdateManagerEnabled()
Description copied from class:ExpressionGenericTransform
This method can be overridden by child classes to signal whether or not to send all multiple event requests through the update manager. By default, this is false, meaning that the update manager should not be used.- Overrides:
isUpdateManagerEnabled
in classExpressionGenericTransform
- Returns:
- True if the update manager is enabled, false otherwise.
-
supportsPromptEditor
protected boolean supportsPromptEditor()
- Overrides:
supportsPromptEditor
in classExpressionGenericTransform
-
addClickOnAttrSelectorButton
protected void addClickOnAttrSelectorButton(InputTag inputTag, WebEvent toggleSingleExprEvent, boolean isMultiFormQual)
- Overrides:
addClickOnAttrSelectorButton
in classExpressionGenericTransform
-
addClickOnMetricSelectorButton
protected void addClickOnMetricSelectorButton(InputTag inputTag, WebEvent toggleMode, boolean isMetricExprQual)
- Overrides:
addClickOnMetricSelectorButton
in classExpressionGenericTransform
-
renderMQUnitComparison
protected void renderMQUnitComparison(MarkupOutput out, java.lang.String metricID, WebEvent acceptEvent)
Description copied from class:ExpressionGenericTransform
This method will render the unit comparison list for a metric-to-metric qualfication that is currently being edited..- Overrides:
renderMQUnitComparison
in classExpressionGenericTransform
- Parameters:
out
- The MarkupOutput object to render the output to.metricID
- The metric ID of the currently selected object in the pulldown.acceptEvent
- The event that is used to accept the qualificiation.
-
renderAQQualifyUnit
protected void renderAQQualifyUnit(MarkupOutput out, WebNode node, WebEvent acceptEvent)
- Overrides:
renderAQQualifyUnit
in classExpressionGenericTransform
-
-