Class SaveAsTransform

    • Field Detail

      • folderBrowserStyle

        public FormalParameter folderBrowserStyle
        Indicates the style to use when rendering the contents of the folder to save the object to.
      • showCreateFolderButton

        public FormalParameter showCreateFolderButton
        Indicates if the create folder toggle button is to be shown or not. The value can true or false. If the value is false, the button to open the create folder dialog will not be shown. If the value is set to false and the value of the showCreateFolderDialog formal parameter is set to true, the create folder dialog will always be shown open on the save page. This formal parameter is applicaable only in DHTML mode as in HTML mode the create fodler dialog is always open.
      • showCreateFolderDialog

        public FormalParameter showCreateFolderDialog
        Indicates if the create new folder dialog is to be shown or not. The value can true or false. If the value is false, then the user will never be able to see the create new folder dialog and he will never see the toggle button used to open the create folder dialog either. Please note the the toggle button is available only in the DHTML mode.
      • createFolderJS

        public FormalParameter createFolderJS
        Formal parameter: The JavaScript code to execute when clicking on the create Folder Button
        Since:
        MicroStrategy Web 9.0.0
      • saveButtonLabelID

        public FormalParameter saveButtonLabelID
        Indicates the descriptor Id for the save button.
      • saveLabelID

        public FormalParameter saveLabelID
        Indicates the descriptor Id for the save as label.
      • newFloderHelpTopic

        public FormalParameter newFloderHelpTopic
        Indicates the help topic for inner new folder dialog.
        Since:
        MicroStrategy Web 9.0.0
      • confirmOWHelpTopic

        public FormalParameter confirmOWHelpTopic
        Indicates the help topic for inner confirm overwrite dialog.
        Since:
        MicroStrategy Web 9.0.0
      • FP_CREATE_FOLDER_JS

        public static final java.lang.String FP_CREATE_FOLDER_JS
        Name for the formal parameter: createFolderJS
        Since:
        MicroStrategy Web 9.0.0
        See Also:
        Constant Field Values
      • FP_FOLDER_BROWSER_STYLE

        public static final java.lang.String FP_FOLDER_BROWSER_STYLE
        Constant for the name of the folderBrowserStyle Formal Parameter.
        See Also:
        folderBrowserStyle, Constant Field Values
      • FP_SHOW_CREATE_FOLDER_BUTTON

        public static final java.lang.String FP_SHOW_CREATE_FOLDER_BUTTON
        Constant for the name of the showCreateFolderButton Formal Parameter.
        See Also:
        showCreateFolderButton, Constant Field Values
      • FP_SHOW_CREATE_FOLDER_DIAOLOG

        public static final java.lang.String FP_SHOW_CREATE_FOLDER_DIAOLOG
        Constant for the name of the showCreateFolderDialog Formal Parameter.
        See Also:
        showCreateFolderDialog, Constant Field Values
      • FP_SAVE_BUTTON_LABEL_ID

        public static final java.lang.String FP_SAVE_BUTTON_LABEL_ID
        Constant for the name of the saveButtonLabelID Formal Parameter.
        See Also:
        saveButtonLabelID, Constant Field Values
      • FP_SAVE_LABEL_ID

        public static final java.lang.String FP_SAVE_LABEL_ID
        Constant for the name of the saveLabelID Formal Parameter.
        See Also:
        saveLabelID, Constant Field Values
    • Constructor Detail

      • SaveAsTransform

        public SaveAsTransform()
        Default constructor. Initializes formal parameters.
    • Method Detail

      • getSaveAsBean

        public SaveAsBean getSaveAsBean()
        Get the SaveAsBean instance being transformed
        Returns:
        the current SaveAsBean instance being transformed
      • renderSaveAsContents

        public void renderSaveAsContents​(MarkupOutput out)
        Generates the Save As dialog contents, including the HTML information for presenting the user the Save As options for the object and the dialog for creating new folders if required. Calls the renderEditor and renderFolderCreateOptionsDialog methods.
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderAdvancedOptionsDialog

        public void renderAdvancedOptionsDialog​(MarkupOutput out)
        Generates the Advanced Options dialog in the Save As page
        Parameters:
        out - MarkupOutput instance with the output
      • renderConfirmationTitle

        public void renderConfirmationTitle​(MarkupOutput out)
        Renders the confirmation title to the MarkupOutput instance
        Parameters:
        out - MarkupOutput instance with the output
      • getConfirmationTitle

        public abstract java.lang.String getConfirmationTitle()
        Returns the title for the save as confirmation dialog
        Returns:
        The title for the save as confirmation dialog
      • renderConfirmationSuccessfulMessage

        public void renderConfirmationSuccessfulMessage​(MarkupOutput out)
        Renders the confirmation title to the MarkupOutput instance
        Parameters:
        out - MarkupOutput instance with the output
      • renderConfirmationButtonBar

        public abstract void renderConfirmationButtonBar​(MarkupOutput out)
        Renders the confirmation buttons to the MarkupOutput instance
        Parameters:
        out - MarkupOutput instance with the output
      • renderConfirmationContents

        public void renderConfirmationContents​(MarkupOutput out)
        This method renders the confimation page after the save as action. If the object saved is a report the user will have the option to either run the new report or go back to the old report or browse other reports from the parent folder of the old report.
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderSaveAsFolderContents

        public void renderSaveAsFolderContents​(MarkupOutput out)
        This method renders the contents of the current folder for the Save As dialog. It shows the contents of the current folder the user is in by rendering the FolderBean instance of the SaveAsBean bean with the style specified on its folderContentStyle property.
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderFolderCreateOptionsDialog

        public void renderFolderCreateOptionsDialog​(MarkupOutput out)
        Generates the dialog for allowing the user to create a new folder with its description. Internally calls renderFolderCreateName and renderFolderCreateDescription for displaying the fields available to the user.
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderFolderCreateButtonBar

        public void renderFolderCreateButtonBar​(MarkupOutput out)
        Renders the HTML for displaying the button bar contents for the Folder Create dialog.
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderFolderCreateName

        public void renderFolderCreateName​(MarkupOutput out)
        Renders the HTML for displaying a text field where the user can type in the name of the new folder to create. The event argument related with the identifier of this field comes from the getCreateFolderEvent WebEvent, named EnumFolderBeanEvents.FOLDER_EVENT_ARGUMENT_FOLDER_NAME
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderFolderCreateDescription

        public void renderFolderCreateDescription​(MarkupOutput out)
        Renders the HTML for displaying a text field where the user can type in the description of the new folder to create. The event argument related with the identifier of this field comes from the getCreateFolderEvent WebEvent, named EnumFolderBeanEvents.FOLDER_EVENT_ARGUMENT_FOLDER_DESCRIPTION
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderSaveAsJavaScript

        public void renderSaveAsJavaScript​(MarkupOutput out)
        Renders any JavaScript content required at the end of the Save As dialog.
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderEditorContents

        public void renderEditorContents​(MarkupOutput out)
        Renders the contents of the current tab displayed on the Save As dialog. Internally calls the following methods: renderFolderBrowsingOptions, renderSaveAsFolderContents, renderSaveAsName, renderSaveAsDescription and renderSaveAsAdvancedOptions. Except for the advanced options, currently there's no major difference between the contents generated for the dialog if a Report, Template or Filter are selected, since they are mainly inner fields sent for identifying the type of object to save.
        Overrides:
        renderEditorContents in class AbstractObjectExplorerTreeTransform
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • updateAncestorFolderArray

        protected void updateAncestorFolderArray​(java.util.ArrayList tags,
                                                 java.lang.String sysFolderName,
                                                 int sysFolder)
        Create an option tag entry on the ancestor folder array for the given system folder. Also, it checks if this ends up being a parent of the current folder viewed. If so, then finds out all the ancestor hierarchy for displaying it also to the user. Marks the current folder viewed as selected.
        Parameters:
        tags - The list of ancestor folder options
        sysFolderName - The name of the system fodler which we want to render in the list of ancestor options
        sysFolder - The system folder for which we want to obtain ancestor information for
      • generateAncestorsOptionTags

        protected java.util.ArrayList generateAncestorsOptionTags()
        Generates the series of option tags to add to the combo box for showing the user the possible places where the new object can be saved, based on privileges, access rights and current location of the object.
        Returns:
        an array of Tag instances corresponding to the different OPTION that will be provided to the user.
      • hasReadBrowseAccess

        protected boolean hasReadBrowseAccess​(FolderBean fb,
                                              int sysFolder)
        Checks to see if the given sysFolder has browse and read access.
        Parameters:
        fb - The folder bean which uses the given sysFolder to determine the access rights.
        sysFolder - The value of the named folder EnumDSSXMLFolderNames for which we want to check for read and browse access.
        Returns:
        true if the given sysFolder has browse and read access.
      • getComboBrowseEvent

        protected WebEvent getComboBrowseEvent()
        WebEvent to associate to the folder browse navigation available with the combo box provided with ancestor and fixed folder information.
        Returns:
        WebEvent instance initialized if available, null if event could not be found.
      • renderFolderBrowsingOptions

        public void renderFolderBrowsingOptions​(MarkupOutput out)
        Generates the HTML for showing the user the possible options for navigating the hierarchy of folder ancestors of the current folder being viewed, or a set of fixed folders where the new object can be saved.
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderSaveAsDescription

        public void renderSaveAsDescription​(MarkupOutput out)
        Renders the HTML for displaying a text field where the user can type in the description of the new object to create. The event argument related with the identifier of this field comes from the getSaveEvent WebEvent, named EnumSaveAsEvents.WebEventArgumentSaveAsReportDescription
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderSaveAsName

        public void renderSaveAsName​(MarkupOutput out)
        Renders the HTML for displaying a text field where the user can type in the name of the new object to create. The event argument related with the identifier of this field comes from the getSaveEvent WebEvent, named EnumSaveAsEvents.WebEventArgumentSaveAsReportName
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • generateSimpleEditor

        protected Editor generateSimpleEditor()
        Generic method that creates an Editor instance and initializes it with basic settings. The dialog to use it should customize it as required for the final desired output to be achieved.
        Returns:
        An instance of the editor with some basic properties like webcomponent and CSS styles already set on it.
      • renderOverwriteTitle

        public void renderOverwriteTitle​(MarkupOutput out)
        Renders the title for the Overwrite dialog to the MarkupOutput instance
        Parameters:
        out - MarkupOutput instance with the output
      • getOverwriteTitle

        public java.lang.String getOverwriteTitle()
        Return the title for the Overwrite dialog
        Returns:
        the title for the Overwrite dialog
      • renderOverwriteMessage

        public abstract void renderOverwriteMessage​(MarkupOutput out)
        The message to render on the overwrite dialog when the object that the user is trying to save already exists.
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderOptions

        public abstract void renderOptions​(MarkupOutput out)
        Renders the prompt and/or linked filter template options as the case may be.
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderOverwriteButtonBar

        public abstract void renderOverwriteButtonBar​(MarkupOutput out)
        Renders the button bar for the overwrite dialog when the object that the user is trying to save already exists.
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderOverwriteContents

        public void renderOverwriteContents​(MarkupOutput out)
        Render the content to facilitate overwriting of a report/filter/template.
        Parameters:
        out - MarkupOutput instance with the output by this transoform
      • renderCreateFolderButton

        public void renderCreateFolderButton​(MarkupOutput out)
        Renders the button that opens the create folder dialog
        Parameters:
        out - MarkupOutput
        Since:
        MicroStrategy Web 9.0.0
      • isEmptyList

        public boolean isEmptyList()
        Returns true if the list of elements from this folder available for display (ObjectExplorerBean.getContents()) is empty or not.
        Since:
        MicroStrategy Web 9.0.0
      • getObjectName

        protected java.lang.String getObjectName()
        Obtain the object name to use for the new object to create
        Returns:
        String value with the name of the new object to be created. It can come from the original object name or whatever the user might had previously specified for it.
      • getObjectDescription

        protected java.lang.String getObjectDescription()
        Obtain the object description to use for the new object to create
        Returns:
        String value with the description of the new object to be created. It can come from the original object or whatever the user might had previously specified for it.
      • getSaveEvent

        protected abstract WebEvent getSaveEvent()
        Obtain an instance of the WebEvent to use for saving the new object
        Returns:
        WebEvent instance initialized, null if it could not be created.
      • getCancelOverwriteEvent

        protected WebEvent getCancelOverwriteEvent()
        Obtain an instance of the WebEvent to use for cancelling the overwritting of the new object
        Returns:
        WebEvent instance initialized, null if it could not be created.
      • getBrowseParentEvent

        protected WebEvent getBrowseParentEvent()
        Obtain an instance of the WebEvent to use for browsing to the folder where the object has just been saved.
        Returns:
        WebEvent instance initialized, null if it could not be created.
      • getReturnToEvent

        protected WebEvent getReturnToEvent()
        Obtain an instance of the WebEvent to use for returning to the original object that was saved
        Returns:
        WebEvent instance initialized, null if it could not be created.
      • getRepromptEvent

        protected WebEvent getRepromptEvent()
        Since:
        MicroStrategy Web 9.0.0
      • getHelpEvent

        protected WebEvent getHelpEvent()
        Deprecated.
        Obtain an instance of the WebEvent to use for getting help on the the Save As action
        Returns:
        WebEvent instance initialized, null if it could not be created.
      • getCreateFolderEvent

        protected WebEvent getCreateFolderEvent()
        Obtain an instance of the WebEvent to use for creating a new folder
        Returns:
        WebEvent instance initialized, null if it could not be created.