我有一个 excel 工作簿,允许用户根据输入到单元格中的数据一次更新多个 SQL 语句。
然后,用户复制更新后的 SQL 并转到 Tableau 并将其粘贴到 Tableau 中相应的自定义 SQL 数据源中并刷新它。
有没有办法将更新的 SQL 代码直接发送到 Tableau 中的相应连接?
如果表名正在更改,则会带来挑战。
我有两个建议。
-
修改 twb xml。
Tableau 工作簿文件只是一个 XML 文件。xml 的一部分包含连接信息,包括自定义 SQL。VBA 有一些用于操作 XML 的库。您可以编写一些自定义 VBA 代码来修改包含自定义 SQL 的 XML。
-
使用 VBA 在 TB 中创建/更改视图
Teradata 允许数据库视图。使用 VBA,您可以连接到 teradata 并创建/更改根据 Excel 中的参数更改的视图。关键是要保持视图名称不变,这样就不需要在每次更改基础视图定义时都更改 Tableau。
在两者中,我的第一选择是第二种选择。它更干净,不需要每次都分发新的工作簿文件。