Class PromptObjectBrowsingXHTMLTransform
- java.lang.Object
 - 
- com.microstrategy.web.transform.AbstractTransform
 - 
- com.microstrategy.web.transform.AbstractLayoutTransform
 - 
- com.microstrategy.web.app.transforms.AbstractPromptObjectTransform
 - 
- com.microstrategy.web.app.transforms.AbstractPromptExpressionTransform
 - 
- com.microstrategy.web.app.transforms.PromptCartXHTMLTransform
 - 
- com.microstrategy.web.app.transforms.PromptObjectBrowsingXHTMLTransform
 
 
 
 
 
 
 
- 
- All Implemented Interfaces:
 EnumPromptsBeanEvents,LayoutTransform,Transform
public class PromptObjectBrowsingXHTMLTransform extends PromptCartXHTMLTransform
Renders prompt content in a "shopping cart" style with a browseable folder path.
It extends PromptCartTransform by adding a folder path above the prompt question and by allowing end-user to navigate to available subfolders. Also, it will only display objects that are defined in prompt definition; this means that if only templates are to be displayed then any instance will be displayed if found under given subfolder.
This transforms makes use ofTaginstances to render HTML output. See reference toTagsFactory. The output of this Transform generates well-formed XHTML, supports layout-xml, and it's designed to use external css files for all formatting.- Since:
 - MicroStrategy Web 8.0.0
 
 
- 
- 
Field Summary
Fields Modifier and Type Field Description FormalParametercssItemNameFormal parameter of the prefix to append to all css class names.- 
Fields inherited from class com.microstrategy.web.app.transforms.PromptCartXHTMLTransform
_imgBlank, availableSize, matchCase, searchAvailable, selectedSize 
- 
Fields inherited from class com.microstrategy.web.app.transforms.AbstractPromptExpressionTransform
attrFormTypeInAvailableList, defaultOperatorId, editMetricQualificationOutputLevel, inputFromTextFile 
- 
Fields inherited from class com.microstrategy.web.app.transforms.AbstractPromptObjectTransform
_blockCount, _calendar, _cssPrefix, _dataTypeForCalendar, _globalCss, _imagesFolder, cssPrefix, imgBackToTop, imgCalendar, imgError, isDhtmlMode, levelFlag, showRequired 
- 
Fields inherited from interface com.microstrategy.web.beans.EnumPromptsBeanEvents
ANSWER_SEPARATOR, EXPRESSION_SEPARATOR, ITEM_SEPARATOR, ITEM_SPECIAL_SEPARATOR, PROMPTS_EVENT_ADD_UNITS, PROMPTS_EVENT_ANSWER_ALL_PROMPTS, PROMPTS_EVENT_ANSWER_ANY_PROMPTS, PROMPTS_EVENT_ANSWER_CONSTANT_PROMPT, PROMPTS_EVENT_ANSWER_DIMTY_PROMPT, PROMPTS_EVENT_ANSWER_ELEMENTS_PROMPT, PROMPTS_EVENT_ANSWER_EXPRESSION_PROMPT, PROMPTS_EVENT_ANSWER_OBJECTS_PROMPT, PROMPTS_EVENT_ANSWER_PROMPTS_IN_ADVANCE, PROMPTS_EVENT_ARGUMENT_ACTION_ADD_UNITS, PROMPTS_EVENT_ARGUMENT_ACTION_ANSWER_PROMPT, PROMPTS_EVENT_ARGUMENT_ACTION_BROWSE_CHILD_FOLDER, PROMPTS_EVENT_ARGUMENT_ACTION_BROWSE_ELEMENT, PROMPTS_EVENT_ARGUMENT_ACTION_BROWSE_PARENT_FOLDER, PROMPTS_EVENT_ARGUMENT_ACTION_CANCEL_PROMPT, PROMPTS_EVENT_ARGUMENT_ACTION_CLEAR_EXISTING_AND_ADD_UNITS, PROMPTS_EVENT_ARGUMENT_ACTION_DRILL_WITHIN_HIERARCHY, PROMPTS_EVENT_ARGUMENT_ACTION_HIGHLIGHT_DIMENSION, PROMPTS_EVENT_ARGUMENT_ACTION_HIGHLIGHT_DIMENSION_ATTRIBUTE, PROMPTS_EVENT_ARGUMENT_ACTION_INCREMENTAL_FETCH, PROMPTS_EVENT_ARGUMENT_ACTION_REMOVE_UNITS, PROMPTS_EVENT_ARGUMENT_ACTION_SEARCH_BY_NAME, PROMPTS_EVENT_ARGUMENT_ACTION_SHOW_SUMMARY, PROMPTS_EVENT_ARGUMENT_ANSWER, PROMPTS_EVENT_ARGUMENT_ANSWER_FORMAT, PROMPTS_EVENT_ARGUMENT_ANSWER_MODE_OPTION, PROMPTS_EVENT_ARGUMENT_ANSWER_OPTIONS, PROMPTS_EVENT_ARGUMENT_ATTRIBUTE_ID, PROMPTS_EVENT_ARGUMENT_ATTRIBUTE_ID_AND_FORM_ID, PROMPTS_EVENT_ARGUMENT_BLOCK_BEGIN, PROMPTS_EVENT_ARGUMENT_BLOCK_COUNT, PROMPTS_EVENT_ARGUMENT_BROWSE_PATH, PROMPTS_EVENT_ARGUMENT_CALENDAR_BUTTON, PROMPTS_EVENT_ARGUMENT_CHILD_FOLDER_ID, PROMPTS_EVENT_ARGUMENT_DIMENSION_ID, PROMPTS_EVENT_ARGUMENT_DO_NOT_AUTO_REPROMPT, PROMPTS_EVENT_ARGUMENT_DRILL_TO_ATTRIBUTE_ID, PROMPTS_EVENT_ARGUMENT_EXEC_FLAGS, PROMPTS_EVENT_ARGUMENT_FILTER_STRING, PROMPTS_EVENT_ARGUMENT_FUNCTION, PROMPTS_EVENT_ARGUMENT_HIDDEN_ATTRIBUTE_ID, PROMPTS_EVENT_ARGUMENT_HIDDEN_DIMENSION_ID, PROMPTS_EVENT_ARGUMENT_INCREMENTAL_FETCH_GOTO_PAGE, PROMPTS_EVENT_ARGUMENT_LINK_ANSWERS, PROMPTS_EVENT_ARGUMENT_MATCH_CASE, PROMPTS_EVENT_ARGUMENT_MESSAGE_ALIAS, PROMPTS_EVENT_ARGUMENT_METRIC_ID, PROMPTS_EVENT_ARGUMENT_NAVIGATION, PROMPTS_EVENT_ARGUMENT_OBJECT_TYPE, PROMPTS_EVENT_ARGUMENT_ORIGIN_MESSAGE_ID, PROMPTS_EVENT_ARGUMENT_ORIGIN_SHORT_ANSWER_XML, PROMPTS_EVENT_ARGUMENT_PARENT_FOLDER_ID, PROMPTS_EVENT_ARGUMENT_PLAIN_ELEMENT_PROMPT_ANSWER, PROMPTS_EVENT_ARGUMENT_PLAIN_OBJECT_PROMPT_ANSWER, PROMPTS_EVENT_ARGUMENT_PLAIN_VALUE_PROMPT_ANSWER, PROMPTS_EVENT_ARGUMENT_PROMPT_POSITION, PROMPTS_EVENT_ARGUMENT_REOPEN_PROMPT, PROMPTS_EVENT_ARGUMENT_SAP_VARIABLE_EXCLUDE, PROMPTS_EVENT_ARGUMENT_SEARCH_NAME, PROMPTS_EVENT_ARGUMENT_SEARCH_ROOT, PROMPTS_EVENT_ARGUMENT_SRC_ANSWERS, PROMPTS_EVENT_ARGUMENT_SUB_ROOT_OPERATOR, PROMPTS_EVENT_ARGUMENT_SUBMIT_ANSWER, PROMPTS_EVENT_ARGUMENT_UNITS_TO_ADD, PROMPTS_EVENT_ARGUMENT_UNITS_TO_REMOVE, PROMPTS_EVENT_ARGUMENT_USE_SET_ANSWERS, PROMPTS_EVENT_ARGUMENT_USER_SEPARATOR, PROMPTS_EVENT_BROWSE_DIMENSION_ATTRIBUTE_ELEMENTS, PROMPTS_EVENT_BROWSE_ELEMENTS, PROMPTS_EVENT_BROWSE_HIERARCHICAL_CHILD_FOLDER, PROMPTS_EVENT_BROWSE_HIERARCHICAL_PARENT_FOLDER, PROMPTS_EVENT_CANCEL_ALL_PROMPTS, PROMPTS_EVENT_CANCEL_ANY_PROMPTS, PROMPTS_EVENT_CLEAR_EXISTING_AND_ADD_UNITS, PROMPTS_EVENT_CLEAR_HIERARCHICAL_SEARCH_EXPRESSION, PROMPTS_EVENT_DRILL_WITHIN_HIERARCHY, PROMPTS_EVENT_HIGHLIGHT_DIMENSION, PROMPTS_EVENT_HIGHLIGHT_DIMENSION_ATTRIBUTE, PROMPTS_EVENT_INCREMENTAL_FETCH, PROMPTS_EVENT_NAVIGATE_PROMPTS_BEAN, PROMPTS_EVENT_PROCESS_ALL_PROMPTS, PROMPTS_EVENT_PROCESS_ANY_PROMPTS, PROMPTS_EVENT_REMOVE_UNITS, PROMPTS_EVENT_SEARCH_BY_NAME, PROMPTS_EVENT_SHOW_ALL_PROMPTS_SUMMARY, PROMPTS_EVENT_SHOW_ANY_PROMPTS_SUMMARY, SIMPLE_SEPARATOR_CARET, SIMPLE_SEPARATOR_COMMA, SIMPLE_SEPARATOR_SEMICOLON, UNIT_SEPARATOR 
 - 
 
- 
Constructor Summary
Constructors Constructor Description PromptObjectBrowsingXHTMLTransform()Default no-args constructor, initialize all the formal parameters. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancanTransform(Transformable data)Indicates whether or not this component can be transformed.protected java.util.EnumerationgetAvailableItems()Returns an enumeration of all available items.java.lang.StringgetDescription()Indicates the description for this Transform.voidinitializeCss()Initialize the css information to be used by this transform.voidinitializePromptContent()Initializes prompt content information.booleanisSearchAvailable()Indicates whether or notCartinstance has 'search' area enabled or displayed.booleanisThereAnyFolderToRender()Determines whether there's a root folder as default point for browsing.booleanisUpAndDownAvailable()Indicates whether or notCartinstance has up/down arrows enabled.voidrenderBackParentButton(MarkupOutput out)Renders 'Back' button.voidrenderCart(MarkupOutput out)Renders a shopping cart output.voidrenderFoldersPath(MarkupOutput out)Renders folders formatted path text.voidrenderLabel(MarkupOutput out, java.lang.String labelName)Renders an HTML label.voidrenderParentPromptContent(MarkupOutput out)Renders prompt content defined in parent class.voidrenderPromptContent(MarkupOutput out)Renders the prompt question layout content.voidrenderSubFolderPullDown(MarkupOutput out)Renders subfolders pull down menu.protected voidupdateIncrementalFetchCartProperties()Updates incremental fetch properties in Cart object.protected voidwriteAncestors(MarkupOutput out, SimpleList ancestors, int currentAncestor)Recursevily renders folder anscestors names.- 
Methods inherited from class com.microstrategy.web.app.transforms.PromptCartXHTMLTransform
areThereAvailableSelections, createCart, getCart, getErrorMessage, getSearchPattern, getSelectedItems, initializeCart, initializeFormalParameters, initializeImages, isAnswerComplex, isIncrementalFetchAvailable, isSearchActive, isSearchPossible, isUpDownArrowsAvailable, onBeforeApplyDefaultDisplaySettings, processSelectedItems, renderAdd, renderAddAll, renderAvailable, renderDown, renderIncrementalFetch, renderLabel, renderLabel, renderRemove, renderRemoveAll, renderSearch, renderSelected, renderUp, setExtraArguments, supports, supports 
- 
Methods inherited from class com.microstrategy.web.app.transforms.AbstractPromptExpressionTransform
getDimtyAsString, getDimtyAttributesAsString, getOutputLevel, isBrowserIE6, isCart, isMQLevelEditingSupported, isNodeComplex, isNodeDimtyEmpty, renderHiddenInputsForMQEditor, renderOutputLevelLabel, renderPromptHiddenInputs, setMetricQualOutputLevelAndDimty 
- 
Methods inherited from class com.microstrategy.web.app.transforms.AbstractPromptObjectTransform
addFormalParameter, arePromptsLoadedFirstTime, checkLevel, getAnswerEvent, getArgumentName, getAttrElemBlockCount, getAvailableDisplayUnits, getCalendar, getContainerServices, getDescriptor, getDescriptor, getDescriptor, getDimensionAttribute, getDisplayHelper, getIntValue, getLocale, getMatchCaseSensitivity, getMultipleEvent, getMultipleEventArgumentString, getObjectsBlockCount, getPrompt, getPromptsAppContext, getPromptsBean, getPromptsList, getRequestKeys, getShowRequired, getStringValue, getSupportedBeanType, getTagsFactory, hasAnswer, initializePromptObject, isBackToTopAnchorEnabled, isDhtmlMode, isDimensionalPrompt, isForDefinition, isIFrameRequest, isItemKeptInCartAvailable, isLocked, isLockedForSearch, isPromptObjectInitialized, isPromptRequired, isPromptSummaryEnabled, isTrue, isXDA_CustomSQL_Report, isXDA_MDX_Report, isXDAReport, newHiddenInputBuilder, newNamespaceEncoder, processAvailableItems, processIncrementalFetch, renderLayout, renderMinMaxHiddenValues, renderPromptAnswerMeaning, renderPromptBackToTopAnchor, renderPromptDefaultAnswer, renderPromptErrorMessage, renderPromptIFrameRequest, renderPromptMeaning, renderPromptNoSelectionsAvailable, renderPromptNotAnswered, renderPromptQuestion, renderPromptRestrictions, renderPromptSummary, renderPromptSummaryAnswer, renderPromptSummaryTitle, renderPromptTitle, setArgumentValue, setAttrElemBlockCount, setEnableBackToTopAnchor, setIsItemKeptInCartAvailable, setLevelFlag, setLocale, setMatchCaseSensitivity, setObjectsBlockCount, setPromptSummary, setShowRequired, transform 
- 
Methods inherited from class com.microstrategy.web.transform.AbstractLayoutTransform
getLayoutContext, getLayoutDefinition, setLayoutDefinition, transformUsingLayout 
- 
Methods inherited from class com.microstrategy.web.transform.AbstractTransform
addFormalParam, getEvents, getFormalParams, getID, getPreview, isPreviewAvailable, isResolved, removeFormalParam, setAnnotation, setDeprecated 
- 
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
getFormalParams, getID, getPreview, getSupportedBeanType, isPreviewAvailable, isResolved, transform 
 - 
 
 - 
 
- 
- 
Field Detail
- 
cssItemName
public FormalParameter cssItemName
Formal parameter of the prefix to append to all css class names. 
 - 
 
- 
Method Detail
- 
initializePromptContent
public void initializePromptContent() throws WebObjectsExceptionInitializes prompt content information.
Extends initializePromptContent() by calling processIncrementalFetch and processSelectedItems. It also initialize the Cart object associated.- Overrides:
 initializePromptContentin classPromptCartXHTMLTransform- Throws:
 WebObjectsException- if something goes wrong when processing Available items.
 
- 
initializeCss
public void initializeCss()
Initialize the css information to be used by this transform.
It invokes parent method so all shared CSS are also initialized.- Overrides:
 initializeCssin classPromptCartXHTMLTransform
 
- 
updateIncrementalFetchCartProperties
protected void updateIncrementalFetchCartProperties()
Updates incremental fetch properties in Cart object.
Mostly, the total of units is calculated after processing available units, hence, we need to reflect this in Cart incremental fetch properties only if Incremental fetch is enabled (isIncrementalFetchAvailable() is invoked). Incremental Fetch object is obtained from Prompt's cart infrastructure. This function updates its Block Count, Block Begin and Total count properties.- Overrides:
 updateIncrementalFetchCartPropertiesin classPromptCartXHTMLTransform
 
- 
canTransform
public boolean canTransform(Transformable data)
Indicates whether or not this component can be transformed.
Extends canTransform() by returning true only if the prompt is of typeEnumWebPromptType.WebPromptTypeObjects- Specified by:
 canTransformin interfaceTransform- Overrides:
 canTransformin classPromptCartXHTMLTransform- Parameters:
 data- object (PromptObject) to transform- Returns:
 - true if the data is a PromptObject of a Expression WebPrompt.
 
 
- 
isThereAnyFolderToRender
public boolean isThereAnyFolderToRender()
Determines whether there's a root folder as default point for browsing.
This is determined only if there are folder objects in available units.- Returns:
 - boolean true if there's a starting point for browsing.
 
 
- 
getAvailableItems
protected java.util.Enumeration getAvailableItems()
Returns an enumeration of all available items.
It gets all available display units and creates an Enumeration instance which is returned.- Overrides:
 getAvailableItemsin classPromptCartXHTMLTransform- Returns:
 - Enumeration of available elements.
 
 
- 
getDescription
public java.lang.String getDescription()
Indicates the description for this Transform.- Specified by:
 getDescriptionin interfaceTransform- Overrides:
 getDescriptionin classPromptCartXHTMLTransform- Returns:
 Stringwith the description for the transform.
 
- 
writeAncestors
protected void writeAncestors(MarkupOutput out, SimpleList ancestors, int currentAncestor)
Recursevily renders folder anscestors names.- Parameters:
 out-MarkupOutputwhere to write the output of the method.ancestors- SimpleList list of folder ancestorscurrentAncestor- int current ancestor being rendered.
 
- 
renderPromptContent
public void renderPromptContent(MarkupOutput out)
Renders the prompt question layout content.
This is accomplished by calling therenderCart()method. If there are no folders to render then it will simply call the parent'srenderPromptContentmethod.- Overrides:
 renderPromptContentin classPromptCartXHTMLTransform- Parameters:
 out-MarkupOutputinstance where the output HTML will be stored.
 
- 
renderParentPromptContent
public void renderParentPromptContent(MarkupOutput out)
Renders prompt content defined in parent class.
It delegates responsability of rendering prompt's content to parent method renderCart().- Parameters:
 out-MarkupOutputwhere to write output.
 
- 
renderCart
public void renderCart(MarkupOutput out)
Renders a shopping cart output.
This is accomplished by calling different methods that will render the individual sections of the prompt layout. The output is organized with a series ofDIVHTML tags created.
The methods used for the cart output are listed below, whereoutis aMarkupOutputinstance where the HTML generated by these calls is saved.- Overrides:
 renderCartin classPromptCartXHTMLTransform- Parameters:
 out-MarkupOutputinstance where the output HTML will be stored.
 
- 
isUpAndDownAvailable
public boolean isUpAndDownAvailable()
Indicates whether or notCartinstance has up/down arrows enabled.- Returns:
 - boolean true if enabled.
 
 
- 
isSearchAvailable
public boolean isSearchAvailable()
Indicates whether or notCartinstance has 'search' area enabled or displayed.- Overrides:
 isSearchAvailablein classPromptCartXHTMLTransform- Returns:
 - boolean true if enabled.
 
 
- 
renderFoldersPath
public void renderFoldersPath(MarkupOutput out)
Renders folders formatted path text.
The output is organized with a series ofDIVHTML tags created.
The methods used for the cart output are listed below, whereoutis aMarkupOutputinstance where the HTML generated by these calls is saved.- Parameters:
 out-MarkupOutputinstance where the output HTML will be stored.
 
- 
renderBackParentButton
public void renderBackParentButton(MarkupOutput out)
Renders 'Back' button.
THis button will enable end-user to navigate the different folders available to the parent one.- Parameters:
 out-MarkupOutputinstance where the output HTML will be stored.
 
- 
renderSubFolderPullDown
public void renderSubFolderPullDown(MarkupOutput out)
Renders subfolders pull down menu.- Parameters:
 out-MarkupOutputinstance where the output HTML will be stored.
 
- 
renderLabel
public void renderLabel(MarkupOutput out, java.lang.String labelName)
Renders an HTML label.- Parameters:
 out-MarkupOutputinstance where the output HTML will be stored.labelName- string of label to be displayed.
 
 - 
 
 -