Archive for the ‘Tableau’ Category

Tableau 10 Cross Join – An alternative way to achieve CrossJoin / Generate in MDX / DAX

November 12, 2016 Leave a comment

Just watched the Tableau Conference 16 session “Cross Database Joins: The unexpected solution to many tough analytics problems”. It is an awesome session, solved some problems which can not be solved by Tableau (before V10) alone.

Essentially, it is trying to solve the famous “event in progress” or “events with duration” questions. This kind of questions can be solved in SQL Server Analysis Services Multidimensional mode, Tabular mode, Power Pivot or Power BI since the beginning. Having said that, this also means the modelling capability of Tableau is one step closer to the OLAP (such as Power BI or Power Pivot for Excel).

A side note, now, within Tableau’s world, the near impossible accumulative distinct count should be able to achieve by this cross database join approach.

Embed Tableau into Microsoft Power Point 2016

April 29, 2016 1 comment

In a recent project, I was asked to embed a Tableau dashboard into Microsoft PowerPoint. Also, as we use SharePoint Online, the embedded Tableau dashboard must work in the PowerPoint Online environment.

So far, the best option I found is to use an free Office Store app called “Web Viewer”: link

Once installed, you can find the icon, as shown below:Office_Store_App_Web_Viewer

Launch the app and specify the URL in the below format

With Tableau Toolbar:
https://<Tableau View URL>?:embed=y&:toolbar=yes

Without Tableau Toolbar:
https://<Tableau View URL>?:embed=y&:toolbar=no

This will allow embedding the Tableau view into the Power Point slides.


  • Microsoft official app for Power Point
  • Tableau dashboard remains fully interactive
  • Works in Office 365 and SharePoint Online environment


  • Tableau Server Single Sign On is required for seamless experience
  • As the “web viewer” only takes HTTPS for security reason, you must configure SSL and enable https on Tableau Server
  • Once SSL is enabled, you need to install the security certificate on your mobile device to get the Tableau mobile app works. Refer to the Tableau document for more details.



Categories: BI, Tableau Tags: ,

Re: Are Tableau and Power BI the future of Business Intelligence?

August 20, 2015 1 comment

Recently, I come across a LinkedIn post regarding MS Power BI and Tableau: Here

I love both and I posted my comment:

No doubt Tableau offers the best interactive data visualization front end but is weak at data preparation. You always need to use Tableau together with at least one data preparation package such as Alteryx, which is popular in high end Tableau community. With the recent release of Tableau 9.0’s LOD calculation,it is closing the gap with traditional OLAP technology such as SQL Server Analysis Services Multi-dimensional mode. But not there yet, for example, the lacking of SCOPE assignment (cell value overriding). But I do admit, using Tableau is addictive. It is an art, not just a tool.

Power BI is different. Within Power BI stack, Microsoft Power Query has VERY strong self service data preparing (ETL) and sharing (shared query repository, a.k.a Data Catalog) capabilities. Power Pivot, on the other hand, is a very powerful true (multi-tables) data modelling engine. You can build full dimensional modelling in Power Pivot and you can scale up from desktop based Power Pivot to server based SQL Server Analysis Services Tabular cube. Combined with the next generation SQL Server 2016, it is deeply integrated into the whole Microsoft Data Platform not just BI but whole data management landscape.

Categories: BI, Power BI, Power Query, Tableau

Embedded SQL Reporting Services Reports into Tableau Dashboard

November 13, 2014 Leave a comment

I blogged about Add Microsoft SQL Server Reporting Services charting capability to Tableau a few days ago. And I also blogged how to use SSRS data driven subscription to mass generate hundreds of images to be used as Tableau custom shape. However, Tableau does not support high resolution images in custom shape. Hence, I’ll show you another approach and probably an extremely powerful way: Directly Calling and Displaying a SQL Server Reporting Service Reports inside Tableau Dashboard

Look at the below two screenshot:

1 – Embeded SSRS Reports in Tableau Dashboard – with command toolbarEmbeded SSRS Reports in Tableau Dashboard - with command toolbar

2 – Embeded SSRS Reports in Tableau Dashboard – no command toolbarEmbeded SSRS Reports in Tableau Dashboard - no command toolbar

For experienced SSRS developer, I’m sure you already guess the trick: use SSRS URL access inside a Tableau Web Page control. Basically, in the first one, the URL is:

http://<SSRS Server>/ReportServer?%2fGaugeSamples%2fThermometerChart&rs:Command=Render&Value=102

and the second one is:

http://<SSRS Server>/ReportServer?%2fGaugeSamples%2fThermometerChart&rs:Command=None&Value=102

The first parameter (rs:Command) tells SSRS server whether to render the command toolbar and the other parameter (Value) tells what the Thermometer Indicator’s value should be.

Personally, I’m very excited about this integration. It opens a door of endless possibility. For example, you can:

  • Leverage existing Microsoft BI assess and integrate into Tableau dashboard
  • SSRS is able to handle pixel perfect chart rendering and can be used as a dynamic charting library inside Tableau dashboard. As you can see in the first screenshot, there is a property called “Size of the bulb at the bottom of the thermometer”. You can expose lots of properties through parameters and let Tableau to invoke them on the fly. Imagine you have drop downs in the Tableau dashboard to passing parameters to SSRS reports to precisely control the chart rendering. This is probably what Tableau is lacking of at the moment.
  • Powerful operational reports. SSRS far better superior operational reports capability than Tableau. Now you can use Tableau to give the user a high level glance and dive into super detailed details.
  • SSRS has auto refresh feature that you can let the chart to refresh every X seconds. Great for operational BI. (I have tested whether the auto refresh is working inside Tableau web page control myself. I’ll test it out later.)
  • SSRS has actions (Similar to Tableau dashboard action) that can chain various SSRS reports together to provide “guided navigation” as well as “execute some operational tasks” together with each SSRS report execution. Imagine the scenario that you deep dive into the details and then click the report action inside the SSRS report which invoke a SQL Server Integration Services Package (SSIS, Microsoft’s ETL platform) on the fly and execute a Python script to generate another Tableau Data Extract. I don’t want to dive into details. But when you bring the entire Microsoft BI stack together, you are talking about something beyond the imagination.

The Power View should work as well using this URL integration approach but at this stage, Tableau offers much better interactivity. As the Power BI platform gets more mature, maybe it is another great story. Stay tuned…

Categories: BI, Power BI, SSRS, Tableau Tags: , , ,

Another one, Thermometer Chart in Tableau

November 11, 2014 Leave a comment

Following up Gauge Chart in Tableau and Add Microsoft SQL Server Reporting Services charting capability to Tableau, here is another one: Thermometer Chart (value from -22 to 104(F) )


The Tableau workbook can be found at:

The image I generated can be downloaded :

Categories: BI, SSRS, Tableau Tags: , ,

Gauge Chart in Tableau

November 10, 2014 3 comments

Continue my previous post Add Microsoft SQL Server Reporting Services charting capability to Tableau, I’ll walk through how do I add gauge charts to Tableau.

1. go to:!AdventureWorksOffline%20Report%20Samples to download the sample reports to get a demo ready Gauge chart in SSRS. It use XML data source so that you can even run the report offline without connect to any data source.

2. change the gauge chart RDL to create a parameter and set the gauge indicator value to  derive from this parameter

3. change the chart size and report page size. In my test, I set all of them to 5cm. I also set margin to 0cm so that there is no gap around the gauge.

4. deploy to the SSRS report server.

5. navigate to the report management page and create a data driven subscription. Basically, the data driven subscription query returns a table with 100 rows to get value from 1 to 100. The data driven subscription loop through this query and generate the gauge chart one by one and push to a shared folder location.

6. copy the generated 100 TIFF images to Tableau’s custom shape folder C:\Users\George.Qiao\Documents\My Tableau Repository\Shapes\MyGaugeChart\

7. Create Tableau worksheet and enjoy! Below is the one I created:

Gauge Chart in Tableau

To play with it, you can go to

For those one who want the gauge chart images, here is the link:

Categories: BI, SSRS, Tableau Tags: , ,

Add Microsoft SQL Server Reporting Services charting capability to Tableau

November 10, 2014 3 comments

Tableau is great for its interactivity in dashboard while Microsoft SQL Server Reporting Services (SSRS) is great for its pixel perfect reporting. When we add them together, they are truly awesome!

SSRS has a rich out of box charting library and a few 3rd party add-ons, e.g. Nevron. You can also use .NET drawing library to perform custom drawing in SSRS (Ref: In addition, SSRS is able to use Google Chart API to render chart, such as Venn diagram etc.

ssrs chart types


SSRS has powerful expression language support and tons of properties to precisely control the chart rendering and be able to export to various formats. TIFF, one of the output format, gives us the ability to prepare custom images, which can be used within Tableau as custom shapes. SSRS has another great feature, mighty “Data Driven Subscription” (be aware, SQL Server Enterprise Edition only!). Combining the image format export and data driven subscription, we can automate the Tableau custom shape image generation.

In next blog post, I’ll show you how to add gauge charts into Tableau.

Categories: BI, SSRS, Tableau Tags: , ,