我有一个Google DataStudio报告,带有“帐户ID过滤器”,例如我可能有100个客户帐户 .
我想与这100个帐户分享此报告 . 但每个帐户只能看到自己的报告 .
但Google DataStudio不会从网址中获取参数,因此我无法将帐户ID值传递到DataStudio报表网址中以相应地过滤掉报表 .
我有一个想法 . 如果我使用Google Apps脚本创建Google Data Studio数据连接器,并使用此数据连接器作为我的Google DataStudio报告的数据源,该怎么办?
然后我将与我的100个客户帐户共享此报告 .
每个客户帐户都将访问此报告(数据源是Google Apps脚本数据连接器) . Google Apps脚本数据连接器将在此客户端的Google帐户下运行 . 并且Google脚本将执行以下作业,对此帐户进行身份验证,知道该帐户基于此帐户的Google帐户,仅获取此帐户的数据,作为Google DataStudio报告的数据源 . 这样,每个客户都可以自己获取报告 .
那会有用吗?有没有人有资源或代码可以分享这个问题和这个解决方案?
1 回答
在连接器代码中,使用
getEffectiveUser()
(reference)获取用户的ID并按此过滤数据 .使用连接器创建数据源并强制执行viewer's credentials .
从该数据源创建仪表板 .
当您的客户查看仪表板时,他们必须首次授权连接器 . 然后他们只会看到适用于他们的数据 .