Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mdx PowerBI空白数据模板_Mdx_Powerbi - Fatal编程技术网

Mdx PowerBI空白数据模板

Mdx PowerBI空白数据模板,mdx,powerbi,Mdx,Powerbi,目前,我正在PowerBI中开发一个仪表板模板,该模板将在桌面版本中试用。通过MDX查询中应用的过滤器,根据用户的授权使用数据填充模板。但是,当将模板分发给其他人进行试点时,模板中仍然充满了基于我的个人授权的数据,只有在用户使用其个人授权进行刷新时才会替换 我正在寻找一种解决方案,既不破坏模板,又能确保在打开模板时我的数据不会显示给其他人,换句话说,我如何确保用户在打开文件时看到一个空模板(没有数据) 我尝试过将filter参数置空(导致数据错误和缺少列,从而破坏仪表板) 有人能帮我找到解决方案

目前,我正在PowerBI中开发一个仪表板模板,该模板将在桌面版本中试用。通过MDX查询中应用的过滤器,根据用户的授权使用数据填充模板。但是,当将模板分发给其他人进行试点时,模板中仍然充满了基于我的个人授权的数据,只有在用户使用其个人授权进行刷新时才会替换

我正在寻找一种解决方案,既不破坏模板,又能确保在打开模板时我的数据不会显示给其他人,换句话说,我如何确保用户在打开文件时看到一个空模板(没有数据)

我尝试过将filter参数置空(导致数据错误和缺少列,从而破坏仪表板)


有人能帮我找到解决方案吗?

您可以添加一个模板用户(仅用于创建报告),并围绕您的度量设置范围语句:

Scope(AddCalculatedMembers([Measures].Members));
    This = IIF(
                [Measures].CurrentMember
                and
                UserName() == "domain\template.user",
                "Blank",
                NULL
    );
End Scope;

谢谢你的回复。我设法用一个简单的解决办法解决了这个问题。通过在MDX之后的Table.RenameColumns函数周围添加try结构,我能够捕获一个空白查询,并使用Table.FromRecords手动添加以其他方式检索到的具有空行的列。这可以防止所有后续查询和度量返回错误,从而在用户参数无效时清空所有数字。最后只需将任何无效值添加到用户参数并另存为模板,瞧。

对我来说,多维数据集的安全性似乎已经到位了Danylo-问题更多的是PowerBI模板缓存结果,后续用户可以看到这些结果-提问者如何仍然允许用户访问模板,但确保之前的结果不会缓存在模板中?如果是template.user共享报告时,度量值将被消隐,并最初缓存为消隐。您可能会对维度成员应用相同的方法(但从未尝试过)。如果non-template.user将重新共享报告,是的,没有安全保证。从Excel回顾中,该用户只能在模板准备时使用(稍后我将在博客中介绍)。不确定PowerBI,因为它仍在开发中,预缓存本身就是一个优先功能。