Reporting services ';指定的操作无效';尝试在本地报表中使用CountDistinct时的消息
如果组只包含一行,我需要隐藏包含总计的行。Reporting services ';指定的操作无效';尝试在本地报表中使用CountDistinct时的消息,reporting-services,localreport,Reporting Services,Localreport,如果组只包含一行,我需要隐藏包含总计的行。 我使用表达式表示行可见性=iif(CountDistinct(Fields!ChannelId.Value)>1,False,True),但得到消息“指定的操作无效” 我还尝试显式传递DataSet或GroupName的名称。这没用 我做错了什么?您需要第二个参数来指定分组中的数据集名称: =CountDistinct(Fields!ChannelId.Value,“YourDSName”)>1行可见性只能为true或false,这是布尔值。它不能像行
我使用表达式表示行可见性
=iif(CountDistinct(Fields!ChannelId.Value)>1,False,True)
,但得到消息“指定的操作无效”
我还尝试显式传递DataSet或GroupName的名称。这没用
我做错了什么?您需要第二个参数来指定分组中的数据集名称:
=CountDistinct(Fields!ChannelId.Value,“YourDSName”)>1
行可见性只能为true或false,这是布尔值。它不能像行数那样是3或12
您需要创建一个计算结果为布尔值的表达式,并将其转换为布尔值。Psuedocode将是“如果行数小于某个值,则为false,否则为true”。天哪报表不允许按用于分组的字段计数
在我将其更改为
=CountDistinct(Fields!ChannelName.Value
)后,它向我显示了值。数据集中的ChannelId
是计算字段吗?如果可能的话,我建议也显示报表XML定义。@JonathonOgden不,它只是行的列。此列也用于GroupPing。它可能在空数据集上出错,它是表达式的一部分。我用iif表示可视性这不是你在问题中的表达方式。请用您的确切代码编辑您的问题。已更改。但原始表达式也不起作用。我只是为了调试目的而尝试显示表达式的值。@voroninp-您不需要所有这些,它只是这个=CountDistinct(Fields!ChannelId.value,“YourDSName”)>1
我在我的几个报告中使用了它。这不会改变任何东西。既不是数据集的名称,也不是组的名称。@voroninp-您需要给它赋值,使表达式返回true/false。请参阅我的编辑。