Skip to main content

HTML image as a button that exports a grid on a document to Excel in MicroStrategy

HTML Image as a Button That Exports a Grid on a Document to Excel in MicroStrategy

In MicroStrategy Web, it is possible to use an image as a button to export a grid on a document to Excel in MicroStrategy version 10.4 and later. This document provides the steps to accomplish the same. 

The goal is to create an image link that is used to export the grid, like shown below:

ExportGrid

Document in Edit Mode

EditMode

Follow the steps below:

1. Create a Report Services Document
2. Make two grids with different attributes and metrics in each 
3. Insert an HTML 
container (and not an image) and insert the script below. Make sure the Project name matches the given project and gridKey matches (highlighted in bold in the script below). The code below is used for the first grid and button. Main things to watch are the gridKey values and the name of the element id which in the below code is exportLink.
 
<a target="_blank" id="exportLink" href=""><img height="50" width="50" src="https://upload.wikimedia.org/wikipedia/commons/thumb/8/86/Microsoft_Excel_2013_logo.svg/1200px-Microsoft_Excel_2013_logo.svg.png"" /></a>
 
<script>
        try {
            var baseUrl = "./Main.aspx?&evt=3132&src=mstrWeb.3132&executionMode=4&gridKey=K44&Main.aspx=-.MicroStrategy+Tutorial.34955_&rwExportMode=4&rwb=";
            var beanState = mstrmojo.App.docModel.bs;
            baseUrl = baseUrl + beanState;
            document.getElementById("exportLink").href = baseUrl;
        } catch (err) {
            document.getElementById("exportLink").href = "";
        }
</script>


4. Insert another HTML container and paste the script below. Make sure the Project name matches the given project and gridKey matches. The code below is used for the second grid and second button. The gridKey value is different here and the name of the element id which is exportLink2.
 
<a target="_blank" id="exportLink2" href=""><img height="50" width="50" src="https://upload.wikimedia.org/wikipedia/commons/thumb/8/86/Microsoft_Excel_2013_logo.svg/1200px-Microsoft_Excel_2013_logo.svg.png"" /></a>

 
<script>
        try {
            var baseUrl2 = "./Main.aspx?&evt=3132&src=mstrWeb.3132&executionMode=4&gridKey=K45&Main.aspx=-.MicroStrategy+Tutorial.34955_&rwExportMode=4&rwb=";
            var beanState2 = mstrmojo.App.docModel.bs;
            baseUrl2 = baseUrl2 + beanState2;
            document.getElementById("exportLink2").href = baseUrl2;
        } catch (err) {
            document.getElementById("exportLink2").href = "";
        }
</script>


5. Run in Presentation mode and Click the Buttons to test that the grids get exported successfully. 

Comments

  1. Hi , This is very helpful and Thanks for sharing information.
    I am facing issues in finding of gridKey .
    Could you please help in finding of gridKey .

    Thanks,
    Narayana A

    ReplyDelete
  2. Html Image As A Button That Exports A Grid On A Document To Excel In Microstrategy >>>>> Download Now

    >>>>> Download Full

    Html Image As A Button That Exports A Grid On A Document To Excel In Microstrategy >>>>> Download LINK

    >>>>> Download Now

    Html Image As A Button That Exports A Grid On A Document To Excel In Microstrategy >>>>> Download Full

    >>>>> Download LINK sh

    ReplyDelete

Post a Comment

Popular posts from this blog

Microstrategy document/dashboard applying selections as filters or slices

Applying selections as filters or slices In a Microstrategy Document the selections a user makes in a selector can either filter or slice the data in the target: Filtering means that the data for the current selection is calculated only when it is requested by the user. The selections are used to filter the underlying dataset before the metric values are aggregated at the level of the Grid/Graph that is displayed in the document. If the source attribute is not included in the Grid/Graph, the metric values from all the selected elements are aggregated and shown at the level specified in the Grid/Graph. All metric condition selectors (which filter metric values or ranks) and selectors that target other selectors filter data by default. You cannot change them to slicing selectors. Slicing means that the data for each available item in the selector is calculated in advance when the document is first displayed. Selections made while ...

MicroStrategy URL API Parameters

MicroStrategy URL Structure The following table summarizes the root URL structure used for every request to MicroStrategy Web. Environment Main Application URL Administration URL J2EE http://webserver/MicroStrategy/servlet/mstrWeb http://webserver/MicroStrategy/servlet/mstrWebAdmin .NET http://webserver/MicroStrategy/asp/Main.aspx http://webserver/MicroStrategy/asp/Admin.aspx Every request sent to MicroStrategy Web calls a central controller. Parameters are appended to  Main.aspx  or  mstrWeb  (in a .NET and J2EE environment, respectively) to indicate to the controller how the request should be internally forwarded and handled. The following examples show a URL for accessing a MicroStrategy folder when the user does not have an existing session. The URL contains not only the parameters needed to connect to MicroStrategy Web, but also the parameters needed to log on and create a session. J2EE environment: <a href="http:...

Like / Contains operator in Tableau

Contains (Like) operator in Tableau SInce there is no like operator in Tableau it provides CONTAINS operator.  Little different syntax is there but not too complex. Syntax for contains is:  Below is the example for using CONTAINS operator in a calculated field in Tableau. IF (CONTAINS([campaign_name],"Intent")) OR (CONTAINS([campaign_name_derived],"Intent")) THEN "Yes"   ELSE "No" END  

Case functions Microstrategy

Ca se functions Microstrategy Case functions return specified data in a SQL query based on the evaluation of user-defined conditions. In general, a user specifies a list of conditions and corresponding return values. Case This function evaluates multiple expressions until a condition is determined to be true, then returns a corresponding value. If all conditions are false, a default value is returned.  Case  can be used for categorizing data based on multiple conditions. This is a single-value function. Syntax Case ( Condition1 ,  ReturnValue1 ,  Condition2 , ReturnValue2 ,...,  DefaultValue ) Example Case(([Total Revenue] < 300000), 0, ([Total Revenue] < 600000), 1, 2) sum(Case (Day@DESC in (“Sat”,”Sun”), Sales, 0) {~+} Sum(Case(Category@DESC In("Books","Electronics"),Revenue,0)){~+} CaseV (case vector) CaseV  evaluates a single metric and returns different values according to the results. It can be used to perfo...

Prompt-in-prompt (Nested prompt) feature in a FreeForm SQL Report

Prompt-in-prompt (Nested prompt) feature in a FreeForm SQL Report In some business scenarios, it is required to implement prompt-in-prompt (nested prompt) feature to use the answer of one prompt to qualify on the elements of another prompt in Freefrom SQL reports in MicroStrategy Developer 9.4.x-10.x. The following procedure describes how to achieve prompt-in-prompt in a Freeform SQL report in MicroStrategy Tutorial project: Create a new filter, select Add an Attribute qualification and choose the highest level attribute Country. Make sure to Qualify On: Elements. Click Prompt as the image shown below. Accept all the default values without any changes in the popped up window after clicking on "Prompt" as shown below. Save the filter as "Country Filter". Click "Prompt", choose "Use a filter to reduce the number of elements" option and select Country Filter created in last step, as shown below. Save the filter as "Region Filter...

Microstrategy "Error type: Odbc error. Odbc operation attempted

 "Error type: Odbc error. Odbc operation attempted: SQLExecDirect. [HYT00:0: on SQLHANDLE] [MicroStrategy][ODBC Oracle Wire Protocol driver]Timeout expired" is shown when executing reports from Web When users are trying to execute some reports in MicroStrategy web in particular, they may receive the Error “SQL Generation Complete Index out of range” and “Timeout expired” error as shown below: Possible Causes: One possible cause is that the MicroStrategy Intelligence Server using a cached database connection that was already dropped by the RDBMS. To resolve this: Admin should delete the database connection caches and create a new DSNs in case they are sharing DSNs to connect to different databases. In addition, change the settings for the ‘Connection lifetime’ and the ‘Connection idle time out’.  Follow the steps below to perform the mentioned changes and verify the report after each step and some of the settings require i-server r...

Prompt-in-prompt(Nested Prompts) in Microstrategy

Prompt-in-prompt(Nested Prompts) in  Microstrategy Nested prompts allows you to create one prompt based on the other and other bases on another, nested prompts allows us to prompt the highest level(Like year) to middle level(like Quarter, then to the low level(like Month). Here you can see how to  create a 3-level deep nested prompt that will prompt the user to select a year, then a quarter within that year, then a month within that quarter. Prompt-in-prompt is a feature in which the answer to one prompt is used to define another prompt. This feature is only implemented for element list prompts . The following procedure describes how to achieve this: Create the highest level filter. This is a filter which contains a prompt on an attribute element list. Create a filter on the attribute "Year." Click "prompt on attribute element list" and click "Next" through the rest of the screens to accept the default values. Do not set any additio...
Star schemas and aggregate (or summary) fact tables Aggregate tables can further improve query performance by reducing the number of rows over which higher-level metrics must be aggregated.  However, the use of aggregate tables with dimension tables is not a valid physical modeling strategy. Whenever aggregation is performed over fact data, it is a general requirement that tables joined to the fact table must be at the same attribute level or at a higher level. If the auxiliary table is at a lower level, fact rows will be replicated prior to aggregation and this will result in inflated metric values (also known as "multiple counting"). With the above Time dimension table, a fact table at the level of Day functions correctly because there is exactly one row in DIM_TIME for each day. To aggregate the facts to the level of Quarter, it is valid to join the fact table to the dimension table and group by the quarter ID from the dimension table. Sql select DT...

RunningSum calculation only on the metric subtotal in MicroStrategy

RunningSum calculation only on the metric subtotal in MicroStrategy Here are the series of steps to setup report objects in which metrics and subtotals so only the  subtotal field  will contain the  RunningSum  and the  regular metric values  will be  standard sum values . 1) Create Metric 1 which is the sum of the fact that is to be in the columns. 2) Create Metric2 as the RunningSum of Metric1.  NOTE:  The  sortby  parameter for the RunningSum should be set to whichever attribute you want the report sorted by. 3) Create Metric3 as Metric1 + (Metric2 x 0) 4) Create a new subtotal called "Max" which is defined as Max() 5) On the Subtotals/Aggregation tab for Metric 3, set the Total subtotal function to be "Max" and select the check box for "Allow Smart Metric" 6) Create the desired report and place the 3 metrics on the report.  NOTE:  Only Metric3 is required on the gri...