【问题标题】:Google DataStudio cannot take parameter from URL, but could I use Google Apps Script Google Data Studio data connector to pass the parameter value?Google DataStudio 无法从 URL 获取参数,但我可以使用 Google Apps Script Google Data Studio 数据连接器来传递参数值吗?
【发布时间】:2019-02-25 04:21:45
【问题描述】:

我有一个带有“帐户 ID 过滤器”的 Google DataStudio 报告,例如我可能有 100 个客户帐户。

我想与这 100 个帐户共享此报告。但每个帐户只能看到自己的报告。

但 Google DataStudio 不从 url 获取参数,因此我无法将帐户 id 值传递到 DataStudio 报告 url 以相应地过滤掉报告。

我有一个想法。如果我使用 Google Apps 脚本创建 Google Data Studio 数据连接器,并将此数据连接器用作我的 Google DataStudio 报告的数据源。

然后我将与我的 100 个客户帐户分享此报告。

每个客户帐户都将访问此报告(数据源是 Google Apps 脚本数据连接器)。 Google Apps 脚本数据连接器将在该客户的 google 帐户下运行。而Google Script会做以下工作,验证这个账号,根据这个账号的google账号知道是哪个账号,只获取这个账号的数据,作为Google DataStudio Report的数据源。这样,每个客户都可以自己获得报告。

这行得通吗?有没有人有资源或代码可以分享这个问题和这个解决方案?

【问题讨论】:

    标签: google-apps-script google-data-studio


    【解决方案1】:
    1. 在您的连接器代码中,使用 getEffectiveUser() (reference) 获取用户的 ID 并以此过滤您的数据。
    2. 使用您的连接器,创建数据源并强制执行viewer's credentials。
    3. 从该数据源创建仪表板。

    当您的客户查看仪表板时,他们必须第一次授权连接器。然后他们只会看到适用于他们的数据。

    【讨论】:

    • 谢谢。您能否指出指向 BigQuery 的 Google Data Studio 数据连接器的示例代码,我可以针对我的使用进行修改?
    • 此连接器连接到 BigQuery:github.com/googledatastudio/community-connectors/tree/master/…(它执行许多其他操作,例如缓存到 Firebase 和 Apps 脚本)
    • 谢谢 Minhaz,我会试一试。有很多信息要消化。一个简单的问题,你知道数据源的最大大小吗?或者换句话说,这是否仍然受到 Google Apps 脚本、URL Fetch 响应大小 - 50MB 的限制?
    • 如果您正在执行 UrlFetch,那么您会受到 Apps 脚本中的任何配额的限制。详情在这里:developers.google.com/apps-script/guides/services/quotas
    • Minhaz,我不熟悉 DataStudio 数据连接器。这将是我的下一个项目。我使用了 Google 构建的 BigQuery 连接器,我们的 datastudio 可以使用 10 GB 的 BigQuery 表作为数据源。但是如果是我自己构建的自定义数据连接器,我只能使用 Google Apps Script,并且根据教程,我会在 url 中显示响应,所以我的限制受到 Google Apps Script 配额的限制。我有没有其他方法可以构建数据洞察连接器,该连接器可以链接到具有巨大大小(如几 GB)的数据源(BigQuery 表等)?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-29
    相关资源
    最近更新 更多