The need: have a Tableau Server-published data extract refreshed
Here's what the Tableau Server documentation says about using tabcmd for the job:
refreshextracts workbook-name or datasource-name
Examplestabcmd refreshextracts --datasource sales_dstabcmd refreshextracts --workbook "My Workbook"tabcmd refreshextracts --url SalesAnalysis
Option (short) Option (long) Argument Description --incremental Runs the incremental refresh operation. --synchronous Runs the full refresh operation immediately in the foreground. --workbook Name of a workbook The name of the workbook containing extracts to refresh. If the workbook has spaces in its name, enclose it in quotes. --datasource Name of a data source The name of the data source containing extracts to refresh. --project Name of a project Use with --workbook or --datasource to identify a workbook or data source in a project other than Default. If not specified, the Default project is assumed. --url URL name of a workbook The name of the workbook as it appears in the URL. A workbook published as “Sales Analysis” has a URL name of “SalesAnalysis”.
The documentation seems to say that executing tabcmd with the proper options will cause the extract to be refreshed.
So I gave it a go, and here's the result:
C:\Program Files (x86)\Tableau\Tableau Server\7.0\bin>tabcmd refreshextracts --url "DashboardWithTDE" ===== Continuing previous session ===== Server: http://[TableauServer]/ ===== Username: adminName ===== Scheduling extracts for workbook 'DashboardWithTDE' to be refreshed now... ===== Succeeded ===== Workbook DashboardWithTDE' scheduled to have its extracts refreshed.
As it turns out, there was no visible evidence that the extract did get refreshed, including checking Tableau Server's maintenance section and looking at the published Dashboard.
So I had to download the Workbook, manually refresh the extract, and then republish the Workbook in order to make sure the published Dashboard contained up to date information. Which is what I was hoping to avoid doing all along.