Never give up - LEO

人 只有在合适的地方 才能体现出最大的价值
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

Reporting Service 通过表达式判断列的显示失灵

Posted on 2007-06-27 14:34  lizhiwen  阅读(599)  评论(2编辑  收藏  举报
我做了一个Reporting Service报表,其中有一列是根据一些条件来判断是否应该显示,
这是我用的表达式:
=IIF(Parameters!ProjectParentID.Value=1,False,True)
Or
 IIF(
Left(
First(Fields!Account_Number.Value, "DataSet_MonthlyInvoice"),3
)="ABB",False,True)
这个语句完全没有问题,在另一个报表中运行很正常,可是一到了这个报表就不正常了。
找了老半天,终于发现,原来我的这个报表中第一行的Account_Number是空值,把这个语句换成这样:
=IIF(Parameters!ProjectParentID.Value=1,False,True)去掉后面就没事了。

让我想不大明白的是,或语句因该市先计算第一个表达式是否为真,如果第一个为真,那么第二个表达式应该忽略掉。可是这里第一个表达式为真的时候,第二个表达式还会影响结果呢?