Reporting services 基于动态列数据的SSRS动态背景色
我有一份有两栏的报告。这两列分别命名为“本月”或“上月”。我试图为“本月”中的数据单元格添加一个背景色,与“上个月”中的数据相关 我熟悉使用IIF语句的动态颜色编码,但似乎无法理解这一点 下面,我尝试将IIF与查找命令一起使用,但我不确定是否正确使用了此命令。任何帮助都将不胜感激Reporting services 基于动态列数据的SSRS动态背景色,reporting-services,colors,expression,Reporting Services,Colors,Expression,我有一份有两栏的报告。这两列分别命名为“本月”或“上月”。我试图为“本月”中的数据单元格添加一个背景色,与“上个月”中的数据相关 我熟悉使用IIF语句的动态颜色编码,但似乎无法理解这一点 下面,我尝试将IIF与查找命令一起使用,但我不确定是否正确使用了此命令。任何帮助都将不胜感激 =IIF(LOOKUP(Fields!Type.Value = "This Month", Fields!Type.Value, Fields!Count.Value, "ExecutiveFCAPS") < L
=IIF(LOOKUP(Fields!Type.Value = "This Month", Fields!Type.Value, Fields!Count.Value, "ExecutiveFCAPS") < LOOKUP(
Fields!Type.Value = "Last Month", Fields!Type.Value, Fields!Count.Value, "ExecutiveFCAPS"), "LightGreen",
IIF(LOOKUP(Fields!Type.Value = "This Month", Fields!Type.Value, Fields!Count.Value, "ExecutiveFCAPS") = LOOKUP(
Fields!Type.Value = "Last Month", Fields!Type.Value, Fields!Count.Value, "ExecutiveFCAPS"), "Yellow",
IIF(LOOKUP(Fields!Type.Value = "This Month", Fields!Type.Value, Fields!Count.Value, "ExecutiveFCAPS") > LOOKUP(
Fields!Type.Value = "Last Month", Fields!Type.Value, Fields!Count.Value, "ExecutiveFCAPS"), "Orange", "Transparent")))
=IIF(查找(Fields!Type.Value=“This Month”,Fields!Type.Value,Fields!Count.Value,“ExecutiveFCAPS”)查找(
字段!Type.Value=“上个月”,字段!Type.Value,字段!Count.Value,“ExecutiveFCAPS”),“橙色”,“透明”))
如果我了解您的问题,我相信您需要做一些事情:
lookup
函数更改为lookupset
函数李>
字段=“Month”
单独替换为“Month”
,因为这只会导致一个布尔值,而不会查找月份;及sum
函数中,另一个用于上个月的,,然后您可以完全取消查找
函数
如果这不起作用,建议您调整feedsql,使每个月的值都有一个颜色,因为您可以使用窗口子句
此外,您还可以尝试ssrs中的范围功能。帮助理解的一个好资源是。我最终用SQL完成了所有计算,并在数据集中添加了一个变体列。在SSRS中,我将颜色代码配置为读取变体列,并相应地设置颜色代码。我使用CASE设置变量列数据
=IIF(字段!Variation.Value=2,“浅绿色”,IIF(字段!Variation.Value=3,“透明”,IIF(字段!Variation.Value=1,“橙色”,“透明”))您有多少个数据集?是否将其绑定到列(即tablix)?数据集中有哪些字段。请编辑您的问题并输入此信息。感谢这种复杂程度通常最好在数据集中解决,例如使用SQL。这使您有机会调试和测试您的代码。@PreetSangha,字段为FCAPSSubType,Type(包含本月或上个月),Count。我相信您理解我的意图。我将查找更改为lookupset,并将每个lookupset包装为sum(例如=IIF(sum)(lookupset(FIELD…)所有单元格的颜色都不是颜色。我尝试将其更改回lookup而不是lookupset,但所有单元格都变为黄色。这个月和上个月不是type列中的唯一值。这些列中的值可能会更改。我认为在此基础上,您唯一的选择是scope函数。这在矩阵类型报告。尝试删除field=“This Month”这将导致生成1或0,我将更新我的答案。如果我的理解正确,检查范围只检查数据是否存在?我正在尝试将1列中的数据与另一列中的数据进行比较。