0 votes
1 view
in BI by (17.6k points)

InterWorks has a Workbook SDK as part of its Power Tools for Tableau product. Does anyone know how they are able to do this? The SDK can access a workbook without Tableau Server so I don't think it's the JavaScript or REST API.

1 Answer

0 votes
by (47.2k points)
  • Format for Tableau workbook (.twb) file is  XML. The structure may change between versions, but is relatively straight-forward to follow. Most Tableau file formats are also XML. The formats ending in an x (like .twbx) are zipped directories that contain the XML file along with other files.

  • It is not too hard to read information from these XML files, or even modify them. They need to be edited by hand in rare cases. Basically, there is a better choice than hacking the XML internals, but you can. You have to backup your files first, and don't expect Tableau support to help you if it leads to strange behavior on your workbook.

  • You can write simple Ruby scripts easily to look at workbook structure using twb. . The format can be changed by Tableau when they release new versions of the software, so by using SDK or twb Ruby gem could isolate your scripts from changes to the format.

  • a Document API was released by Tableau that supports a modest number common changes to workbooks - so you can write a script to say, update the connection string on a set of workbooks.

  • So you have at least four choices:

  • Interworks SDK and tools that come with support, documentation and a price tag can be used

  • Free open source twb library, and either reuse existing Ruby scripts can be used or develop the ones you need. And hopefully contribute the source if you extend.

  • Roll your own XML parsing scripts.

  • Use the Tableau Document API if it supports your use case. https://github.com/tableau/document-api-python

  • In all cases, do backups and be prepared for some adjustments when Tableau releases a major or minor version update. Patch releases are pretty safe.

Welcome to Intellipaat Community. Get your technical queries answered by top developers !