Archive for the ‘Tableau Server’ Category

Tableau dashboard navigation without the double click

May 14th, 2017 No comments

There are use cases where using buttons can aid Tableau dashboard navigation. For example in your Tableau report you may have a summary dashboard and a detailed drill down. Perhaps you want the user to drill down from the summary to the detail dashboard on a click.

Tableau Actions make this drill down very simple. It’s the drilling back up that is more complicated. In this example I have created a very simple bar chart of sales by Country using Tableau’s sample superstore file. I have also created a a table containing sales by State and Year. This table is the drill down for this example.

To keep things simple the two worksheets were used in two dashboards. The Summary dashboard contains only the bar chart worksheet, the Detail dashboard is only the table.

To drill down from the Summary dashboard is simple using Actions. Click Dashboard – Actions and set a new filter action using Summary as the Source Sheet, run action on Select and the Target Sheet is the Detail. Target Filters are All Fields.

Filter Action Summary

That is the drill down new set up. Click a Country name and it’ll take you to the Detail dashboard, filtered for that Country. Returning to the Summary from the Detail dashboard is the challenge.

To return we can create a Back button. This is actually just another worksheet styled to appear like a button. Create a new calculated field with the formula ‘Back’. Drag that field to the Text shelf of a new worksheet, set it to be a chart type of Shape. Select an appropriate shape, such as a filled back arrow and size to fit the worksheet.

Tableau Back Button

Put this ‘button’ on to the Detail dashboard. On the Detail dashboard click Dashboard – Actions and set up a new Filter action. This time the Source Sheet is Detail, only the Back worksheet should be selected. The Target is the Summary dashboard, All Fields as the Target Filters. Make sure it’s set up to run action on Select.

The user will now be able to drill from the Summary to Detail and return to the Summary. The downside is with the Back button. Once it is selected – i.e. the first time clicked – it needs to be deselected to be able to be drill down again. Effectively this means the user needs to double click to go back, one click to reset then click again to go back. This double click isn’t good user experience. The good news is there is a way to make it single click.

Create two calculated fields, the first called ‘one’ with the value 1, the second called ‘two’ with the value 2. Set both fields to be dimensions (drag them up to Dimensions from Measures). Put ‘one’ to the Detail shelf of the Back worksheet.

On the Detail dashboard create a new action; Dashboard – Actions. A new Filter action is used to reset the Back button, the Source Sheet being the Back worksheet on the Detail dashboard. The Target Sheet is the Back worksheet – it is referencing itself. The Target filters are Selected Fields, Add Filter and the Source Field is ‘one’ and the Target Field ‘two’. ‘One’ has to be on the Detail shelf of the Back worksheet otherwise it causes an error.

Filter Action Back Button

The order of the 2 actions on the Detail dashboard is very important. Get the order wrong and the click on Back won’t take you back to the Summary, it only resets the button.

The order of the Actions is driven by the name of the action. Resetting the Back button needs to happen first followed by returning to the Summary sheet. Therefore prefix the name of the action to rest then back button with ‘a’ and the action back to summary with a ‘b’. The appropriate naming of the actions means the drilling down and back up again should work seamlessly.

Back Button Actions

When publishing to a Tableau server there are a couple of other points (frustrations) to keep in mind:

  1. ‘Show sheets as tabs’ has to be selected when publishing – if not it open the Detail in a new browser tab
  2. The browser tabs can be hidden by URL once published, as I have done above, add a URL parameter to the report URL, &:tabs=no.

The URL used to publish above, using the above technique to publish with sheet tabs then subsequently hiding the tabs, is

Categories: Tableau, Tableau Server Tags:

Publish to Tableau Server from Alteryx using Run Command

March 30th, 2016 No comments

One of the things I often read about on the Alteryx forums is people asking how to publish to Tableau Server from Alteryx. Previously I wrote a post about publishing to Tableau Server from Alteryx using the Events functionality. A downside of this is the timing of the publish to Tableau – it either happens before or after the workflow has run. To publish to Tableau server from within an Alteryx module the Run Command tool can be used, meaning publishing from Alteryx to Tableau Server can happen from anywhere within the worklow. Read more…

Publish Tableau Data Extract directly from Alteryx

December 29th, 2015 No comments

For those Alteryx and Tableau Server users the ability to publish Tableau Data Extract (tde) files directly from Alteryx to the Tableau Server is a huge benefit for report automation. There are a number of good posts already published advising how this should be done, such as this excellent guide from Interworks. In this post I’ll replicate some of what is said in the post, should that link break at some point, and also add to it where I ran into difficulties.

To publish to Tableau Server from Alteryx requires using Tableau’s tabcmd. I expect it’s also possible using the REST API from Tableau but I was unable to work it out, so this post will focus on the tabcmd solution, which, in my opinion, is far simpler. If you’re not a Tableau Server administrator in your role you may need to install tabcmd.

Do the following to set up a workflow to publish directly to Tableau Server from Alteryx, using the workflow configuration Events:

Step 1

Open the Alteryx workflow that creates the tde file.


Step 2

In the Events section of the Workflow – Configuration add a Run Command. Also ensure ‘Enable Events’ is checked.


Step 3

Choose “After Run Without Errors”


Step 4

Enter the location of the tabcmd.exe in the Command box


Step 5

Enter the command line to execute in the Command Arguments section. I would recommend entering this into Notepad first and copying into the Command Arguments section.

For some unknown reason when I typed directly into Alteryx or into MS Word, copying to Alteryx, when the command was passed into tabcmd by Alteryx, the quotation marks in the command string weren’t being recognised causing it to fail. Entering the command into Notepad and copying it into Alteryx helped me get around that problem.


Example tabcmd command line:

publish “\\NetworkLocation\TableauDataToPublish.tde” -s TableauServer -u UserName -p Password -t TableauSite -o -r “Data Sources”

Important things to note about the string:

  • publish = the tabcmd being called
  • -s = tells tabcmd which Tableau Server to use. This doesn’t need to be the “https://TableauSite” URL, it is better as the server name as entered to the Tableau Postgres database
  • -u = the username used to login to the Tableau Server (also needs to be set up on the Tableau Server)
  • -p = the password used to login to the Tableau Server
  • -t = the name of the Tableau Site on the Tableau Server to use
  • -r = the project name to publish to. If this is not included the Default project is used.
  • -o = Overwrite the existing tde file with the same name

There are a number of things that can be specified in the tabcmd command string. The Tableau help documentation has a comprehensive list of those items.

Step 6

Ensure the Timeout (in seconds) is set appropriately to give enough time for the tde file to be published to the Tableau Server


Now it’s complete, run the workflow and you should no longer need to manually publish tde files.

Important notes:

  • If using the Alteryx server the Alteryx service account will need setting up on Tableau Server with a Publisher role.
  • If tabcmd fails use the tabcmd.log file to see the error message(s). Alteryx will only tell you it failed, the tabcmd.log will tell you why it has failed. This is copied from the tabcmd overview on the Tableau website advising where to find the tabcmd.log:Status messages and logsWhen a command is successful, tabcmd returns a status code of zero. A full error message for non-zero status codes is printed to stderr. In addition, informative or progress messages may be printed to stdout.A full log named tabcmd.log that includes debugging, progress, and error messages is written to C:\Users\<username>\AppData\Local\Tableau.


Tableau Install Tabcmd

December 10th, 2015 No comments

If you need to install tabcmd without involving the Tableau server administrator, provided you have admin rights on your machine, there’s a simple way to do this.

To begin install the trial version of Tableau Sever to your machine. It’s very simple, the same as installing any bit of software where a basic knowledge of IT is all that’s required.

Assuming you’re just using Tableau’s default options during the install, go to the Tableau Server directory during installation and watch for the tabcmd installer file (TabcmdInstaller-x64 for 64 bit install) to appear. Read more…

Send an email from Tableau

November 5th, 2015 No comments

Using URL actions it’s relatively simple to send an email (assuming you’re using a client such as Outlook) directly from a Tableau workbook or the Tableau server. Set up the Tableau URL Action to be run on Menu, so it can be made clear to any user they’re making a conscious decision to send the email.

In the URL field enter:

mailto:[Email Address]?subject=Your Email Subject&body=Your message text

Mailto Tableau URL action

Wikipedia has more detail on the syntax of mailto


Tableau Web Edit permissions and Self Service set up guide

September 29th, 2015 1 comment

In many organisations you are likely to find increasing demand for users to directly access the data themselves, enabling them to build their own custom tabular reports or carry out ad-hoc investigations without being dependent on a different team, such as IT or BI, to assist.

The Tableau web edit functionality allows tableau developers to open up the data directly to the users in a relatively simple way and it gives similar, although not as flexible, data access to using an Excel pivot table.

When using web edit in Tableau Server there are a few things to consider in terms of data usability for the less data savvy users plus whether the users should have the ability to save their creations. In addition Tableau web edit permissions need to be set up correctly to allow users to edit and save in the appropriate places. Read more…

Categories: Tableau, Tableau Server Tags:

Tableau Server 9 Admin Views

August 18th, 2015 No comments

The Tableau Server 9 admin views are a massive improvement on those of Tableau 8 and Tableau have also made the Tableau Server admin view workbook publically available:, which, in case it disappears for some reason, I have also attached it to the bottom of this post.


Previously I wrote a post about creating your own Tableau Server admin views which were based on my need to monitor report usage. Even with the release of the enhanced Tableau admin views I still prefer to keep my own view for usage statistics.

Read more…

Using Tableau Server groups for row level security

August 4th, 2015 No comments

In an earlier post I demonstrated some options on implementing row level security in Tableau.

When using a data extract, where permissions can be more challenging within Tableau (connecting live means you can implement your permissions in the underlying database, which is far cleaner and simpler), another way to manage permissions is to use the Tableau Server groups and ISMEMBEROF function. This can be used at a row level, as demonstrated below, and server groups can also be used with Tableau Project level permissions. Read more…

Using Tableau’s database to build your own Tableau Server usage reports

January 3rd, 2015 5 comments

Out of the box Tableau supplies a number of tools to monitor what is happening on the server. Often these aren’t adequate to get a good view into what’s happening on your server hence you might want to create your own custom admin views. Tableau have allowed, unsupported, querying of the underlying postgres database to create views but until recently there was very little documentation available to help, plus all of the usual ‘do so at your own risk’ warnings. Now things are beginning to change and there are many good sources of information about this database, incluing Tableau themselves now providing a lot of information about their database schema. Andre Pandre wrote up the following very useful post about the underlying Tableau postgres database, essentially bringing all the vital information into one place.

The Tableau postgres database can supply information on the actual server performance as well as what users are doing on the server. My approach to this is from a report usage perspective as, since I look after report development, that’s how my work is judged hence this post is about tracking what the users are doing. Read more…

Categories: Tableau, Tableau Server Tags:

Tableau Server Permissions Best Practice

November 29th, 2012 No comments

If you have had to use Tableau Server in medium to large environments it’s likely you have had to deal with Tableau Server permissions . Initially I found it wasn’t the most logical way of assigning permissions, I had to do a lot of repetitive tasks.

The thing to keep in mind is that Tableau Server permissions work at each level and can require assigning at each level – i.e. view => workbook => project – but if you assign permissions from the workbook level or below, if the permissions differ for many workbooks/views in the project maintenance becomes increasingly time consuming.  I have found the most efficient way to assign permission is from the top down – i.e. project => workbook => view – and I’ll explain the reasons later in the article. Read more…