我正在运行SQL 2012,并且我有一个SSAS多维多维数据集,其中包含我们零售业务的指标。我创建了一个SSRS报告,该报告从SSAS多维数据集中提取数据。我希望用户能够运行该报表,并且仅在他们正在查看的SSRS报表上传递用户特定的商店收入,客户数等。 我已经从多维数据集创建了一个参数。在根据我在默认值(特定值)下输入的多维数据集创建的报表参数下,该表达式的值为=“ [DimUserTable]。[Username]。[UserID]。&[” + User!UserID +“]” ,报告将不会运行。它给出了错误;
数据集“收入”的查询执行失败。 (rsErrorExecutingCommand)
有人知道我如何才能只让用户存储信息以显示在他们正在查看的报表上吗?
答案 0 :(得分:0)
您只需要将用户ID传递给参数。.您的查询应注意使用参数进行过滤。
where [DimUserTable].[Username] = @userid
我将使用以下内容作为userid参数的默认值
=User!UserID.Substring(User!UserID.LastIndexOf("\")+1)
当然,这取决于您的多维数据集为userid值保留的内容。如果不包含域名或计算机名称,请使用上面的名称。否则请使用= user!userid