Sql server 将带有参数的数据集添加到子报表会导致子报表在SSRS中出错

Sql server 将带有参数的数据集添加到子报表会导致子报表在SSRS中出错,sql-server,reporting-services,Sql Server,Reporting Services,我有一个SQL Server Reporting Services报表,只要子报表中的数据集使用过滤器而不是查询参数,它就可以与子报表一起正常运行 这样做的问题是,它似乎在抽取整个数据集,然后对其进行过滤,这是一场性能噩梦 我认为最简单的解决方案是向子报表数据集添加查询参数,并将其设置为子报表包含的报表参数值 将参数添加到子报表后运行报表时,子报表将不再运行。只要我从子报表数据集中删除查询参数,它就会正常运行 要在子报表数据集中使用查询参数,是否必须执行一些特殊操作 日志中的堆栈跟踪似乎表明生成

我有一个SQL Server Reporting Services报表,只要子报表中的数据集使用过滤器而不是查询参数,它就可以与子报表一起正常运行

这样做的问题是,它似乎在抽取整个数据集,然后对其进行过滤,这是一场性能噩梦

我认为最简单的解决方案是向子报表数据集添加查询参数,并将其设置为子报表包含的报表参数值

将参数添加到子报表后运行报表时,子报表将不再运行。只要我从子报表数据集中删除查询参数,它就会正常运行

要在子报表数据集中使用查询参数,是否必须执行一些特殊操作

日志中的堆栈跟踪似乎表明生成的MDX中stroset函数的约束被违反。但我不确定这意味着什么。当我尝试从MDX(包括逗号)中移除受约束的手动时,它甚至不会考虑它有效的MDX.< /P>
谢谢你的帮助

在子报表参数
=“[Dim Something].[Something].&[”&Fields!Field1.value&“]的值表达式中尝试此操作。


连接运算符->&

检查此链接可能会有帮助您是否有正在传递的多值参数?@BhupeshC否sir。正在传递的参数来自在帐户持有人上迭代的tablix中的每个数据行。这可能解释了受约束的冲突。如果这是维度值,则它将被忽略实际上在多维数据集中存储为
[Dim Something].[Something].&[Value]
。传递时,如果只发送
Value
,可能会出现问题。请尝试以指定格式传递
[Dim Something].[Something].&Value]
和check@BhupeshC我将尝试在主报告中使用字符串连接。你知道有比字符串连接更简单的方法吗?也谢谢你的帮助,我认为这让我走上了正确的道路。非常感谢@BhupeshC!像你这样的senpai帮助我发现我对这个问题的思考变得太过简单小心点。报告现在看起来很棒!