Drilling Options in MicroStrategy

MicroStartegy has many flexible drilling options. Drilling could be done in many directions and in many ways. Below are few that I would like to mention.

Report Drilling

  • Drilling from an attribute could be based on System Hierarchy or User Hierarchy (later over writes the former).
  • Drilling from a metric value to a report using the drill maps. This is very flexible as it could apply the filter (on the attributes) in the drill down report based on what cell you are drilling from.
  • Drill Maps could be used to drill to a template or on attributes in different directions (up, down…) or both.
  • Drilling from and attribute element to a report/dashboard (advanced) could be done using URL API. A URL could be embedded in the attribute form, which can call a dashboard or a report passing prompts answers (explained in detail below).

Dashboard drilling

Drilling on dashboard is based on hyper links. Drilling on dashboards is not as flexible as drilling on report (at least with 8.X). Using hyper links, there are many ways you could drill and I wanted to go though one option.

Drilling from an attribute element to a Dashboard/Report using a URL API and passing a prompt answer.

To discuss this functionality, I am going through an example so that it might be little easy to understand.

For our discussion, lets consider we wanted to drill from an attribute element (Attribute: Country) which is placed on a report (or on a dataset in a dashboard) to a dashboard which is providing details and prompted on “Country”.

Assuming that both the report and the dashboard are ready, I am discussing the process below.

Creating a URL (for the example, URL’s are based on windows box):
Take the URL of the dashboard (could be found in properties in web)

/Main.aspx?Server={&SERVERNAME}&Project={&PROJECT}&Port=0&evt=2048001&src=Main.aspx.2048001&visualizationMode=0&documentID=XXXXXXXXXXXXXXXXXX

Or

http://WEBSERVER/asp/Main.aspx?Server={&SERVERNAME}&Project={&PROJECT}&Port=0&evt=2048001&src=Main.aspx.2048001&visualizationMode=0&documentID=XXXXXXXXXXXXXXXXXX
Include a parameter to the URL so that it would pass answers to the value prompt (for country).
In this case, we are assuming that the prompt is a value prompt, but element prompt could also be used and the parameter should be modified accordingly.
/Main.aspx?Server={&SERVERNAME}&Project={&PROJECT}&Port=0&evt=2048001&src=Main.aspx.2048001&visualizationMode=0&documentID=XXXXXXXXXXXXXXXXXX&valuePromptAnswers={Country@ID}

(Note: For element prompt, replace “valuePromptAnswers” with “elementsPromptAnswers” in the above URL
Create a new ‘Country’ attribute form (new attribute could also be created) with the below applysimple-

ApplySimple(“‘<A HREF=http://WEBSERVER/asp/Main.aspx?Server=ISERVER&Project=PROJECTNAME&Port=0&evt=2048001&src=Main.aspx.2048001&visualizationMode=0&documentID=XXXXXXXXXXXXXXXXXXX&valuePromptAnswers=’||#0||’>’||#1||'</A>'”, [COUNTRY_ID], [COUNTRY_NAME])

Note: COUNTRY_ID & COUNTRY_NAME are the column names. Also, make sure the Format Type of the form is “HTML Tag”.
The new form or the new attribute should now be able to call the dashboard and pass the country_id to the dashboard and resolve the prompt answer. A part from this method there are multiple ways of handling this like, the URL could be placed in the database and so on. This is a way of doing this with in MSTR.

If you know of a different way, please comment, I would be interested in knowing.

(19 Posts)