Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.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
Sql SSRS背景细胞颜色的表达_Sql_Sql Server_Visual Studio 2010_Vba_Reporting Services - Fatal编程技术网

Sql SSRS背景细胞颜色的表达

Sql SSRS背景细胞颜色的表达,sql,sql-server,visual-studio-2010,vba,reporting-services,Sql,Sql Server,Visual Studio 2010,Vba,Reporting Services,我正在尝试在SQLServer数据工具中为一个报告编写一个表达式,该报告将有助于确定驱动器上文件的位置。基本上,我的目标是满足以下标准: 如果(DriveLetter=F:或T:)和(FileType=MDF或NDF),则如果为绿色 (DriveLetter=G:或U:)和(FileType=LDF),然后是绿色的ELSE 红色的 这就是我所尝试的: IIF((Fields!DriveLetter.Value = "F:" OR Fields!DriveLetter.Value = "T:")

我正在尝试在SQLServer数据工具中为一个报告编写一个表达式,该报告将有助于确定驱动器上文件的位置。基本上,我的目标是满足以下标准:

如果(DriveLetter=F:或T:)和(FileType=MDF或NDF),则如果为绿色 (DriveLetter=G:或U:)和(FileType=LDF),然后是绿色的ELSE 红色的

这就是我所尝试的:

IIF((Fields!DriveLetter.Value = "F:" OR Fields!DriveLetter.Value = "T:") AND (Fields!FileType.Value = "MDF" OR Fields!FileType.Value = "NDF"), "Green",
IIF((Fields!DriveLetter.Value = "G:" OR Fields!DriveLetter.Value = "U:") AND (Fields!FileType.Value = "LDF"), "Green", "Red") ) 
而且它似乎不起作用。有人知道我怎样才能达到我的要求吗?有人知道我写的表达中有什么错误吗


谢谢

它应该可以工作,看起来像一个打字错误:
NDF
VS
LDF

尝试:

如果不是这样,请确保所有比较都有效

即,测试:

IIF(Fields!DriveLetter.Value = "F:", "Green", "Red")

按应更改颜色。

如craM所述,该语句应该有效

您可能想尝试使用Trim函数,因为它的值可能有尾随空格

IIF((Trim(Fields!DriveLetter.Value) = "F:" OR Trim(Fields!DriveLetter.Value) = "T:") AND (Trim(Fields!FileType.Value) = "MDF" OR Trim(Fields!FileType.Value) = "NDF"), "Green", IIF((Trim(Fields!DriveLetter.Value) = "G:" OR Trim(Fields!DriveLetter.Value) = "U:") AND (Trim(Fields!FileType.Value) = "LDF"), "Green", "Red") )

最后发现了我自己的错误。我完全忘记了表达式前面的“=”符号!
我的表达一直都是正确的-忘记了等号

不,这不是打字错误。主(MDF)和辅助(NDF)数据文件应位于驱动器F或T上,而日志文件(LDF)位于G或U上。如果您的说明中有输入错误
和(FileType=MDF或LDF)
,除此之外,IFF语句的语法也应该有效。尾随空格是什么意思?如果表字段定义为
Char
数据类型,则用尾随空格填充,如果字段定义为
Varchar
,则不用尾随空格填充。您可能正在将
F:
与不匹配的
F:
进行比较。
IIF((Trim(Fields!DriveLetter.Value) = "F:" OR Trim(Fields!DriveLetter.Value) = "T:") AND (Trim(Fields!FileType.Value) = "MDF" OR Trim(Fields!FileType.Value) = "NDF"), "Green", IIF((Trim(Fields!DriveLetter.Value) = "G:" OR Trim(Fields!DriveLetter.Value) = "U:") AND (Trim(Fields!FileType.Value) = "LDF"), "Green", "Red") )