Sql server 2008 带作用域的IIF表达式

Sql server 2008 带作用域的IIF表达式,sql-server-2008,scope,ssrs-2008,iif,Sql Server 2008,Scope,Ssrs 2008,Iif,我正在使用ssrs2008r2和sql2008。我有一份报告列出了客户使用服务的日期。我对客户名称进行了分组,详细信息部分是日期。我试图检查特定客户的日期是否重复(已输入两次)。为了做到这一点,我使用了IIF语句 =IIF(Fields!SvcDate.Value,"table1_ClientName"=Previous(Fields!SvcDate.Value,"table1_ClientName", "Khaki", "White")) 如果我在没有作用域的情况下运行这个表达式,它会正确

我正在使用
ssrs2008r2
sql2008
。我有一份报告列出了客户使用服务的日期。我对客户名称进行了分组,详细信息部分是日期。我试图检查特定客户的日期是否重复(已输入两次)。为了做到这一点,我使用了IIF语句

=IIF(Fields!SvcDate.Value,"table1_ClientName"=Previous(Fields!SvcDate.Value,"table1_ClientName", "Khaki", "White")) 
如果我在没有作用域的情况下运行这个表达式,它会正确地为字段着色,但当然,这个表达式的“上一个”部分意味着,如果直接在上面的另一个客户端具有相同的日期,这个表达式会认为这是“上一个”日期,我会得到一个背景色。因此,我需要确保颜色和“先前”标准仅限于每个客户。上面的表达式给出了一个错误,表示语句中没有错误部分。所以我想我把括号搞错了,但我不知道怎么纠正它

=iif(Fields!SvcDate.Value = previous(Fields!SvcDate.Value),"Khaki","White")  

让我知道“table1_ClientName”是否是数据集名称,是否是一项要求,我将对此进行解释。

标记[SSRS-2008]和[SQL-Server-2008]将向比[iif]和[scope]更多的专家强调您的问题。这看起来是错误的参数数量。IIF语句的基本语法是:=IIF(Fields!examplefield.Value=“xyz”,“56ca29”,“ff6969”),因此,如果examplefield的值等于“xyz”,则为绿色,否则为红色。我假设“table1\u ClientName”是数据集的名称,对吗?