This site uses different types of cookies, including analytics and functional cookies (its own and from other sites). To change your cookie settings or find out more, click here. If you continue browsing our website, you accept these cookies.
I created a Tableau workbook template. Instread of having users open the template in Tableau, repoint data sources & rename dashboard titles, I was thinking of editing the twb file with an Alteryx app. Since the twb is all xml, the app should be able to replace data sources and update dashboard titles - so no manual user intervention needed. Finally the app would publish workbook containing multitple dashboards & tde's to Tableau Server. Has anyone done this? Any downsides? schema will always be the same.
While we haven't done this with Alteryx, we have done something similar using Python (...btw I'm the Tableau expert in our company, and not the Python Developer who built our App...so wouldn't be able to provide technical Python details!!), but the method is the same. In fact our App actually works on server....in short!;
We have a multi-tennanted environment, where we have set up a Tableau Server site per client [which are all identical - TDE Names, Workbook Names]; We have a Template site where I load the latest version of our model; the App takes this template and copies accross (including TDEs) to all Sites, and changes the SQL connection string in the TDEs; we then trigger a TDE refresh and voila!!
In the PoC for the App, we did some 'manual' manipulation of the connection string, to ensure it would do the job! and just replacing the connection string didn't cause any problems/unforeseen-behaviour.
Most of our issues come from Server version changes, as we are picking the TDEs (as objects) from the Post-gres database (underlying Tableau Server), and this structure can change when versions are updated. However as you are using desktop you should be fine here...although there are changes to the XML (say from Tableau v8 to v9) they seem to be minimal (and things like Data Connection String doen't seemed to have ever changed). The other consideration (which you've nailed) is that the DB Schemas, need to be identical (ColumnNames/DataTypes...).