首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

RDLC报表文本框显示错误号解决方法!

2014-01-28 
RDLC报表文本框显示错误号:报表中有个文本框,表达式如下, IIf(Sum(Fields!A.Value)0,0,Sum(Fields!B.Valu

RDLC报表文本框显示错误号:

报表中有个文本框,表达式如下,

=IIf(Sum(Fields!A.Value)=0,0,Sum(Fields!B.Value) / Sum(Fields!A.Value))

为防止除数为零错误,使用IIF函数先判断,但报表生成后,Sum(Fields!A.Value)=0的仍然显示"错误号",
Sum(Fields!A.Value) <>0的则正常。

------解决方法--------------------------------------------------------
参考公式:

VB code
if {sc裁片细码单_报表.数量}=0 or isnull({sc裁片细码单_报表.数量})  then 0 else {sc裁片细码单_报表.数量}
------解决方法--------------------------------------------------------
我是用公式来解决了,你那个是表达式,
表达式我没弄过,不懂
------解决方法--------------------------------------------------------
聚合函数只对数值有用,你确定Fields!A.Value的值类型为数值型?
我就是这样解决的
------解决方法--------------------------------------------------------
不可能,我用那么久的rdlc这种问题都可以避免的,你是不是忽略了其他地方
------解决方法--------------------------------------------------------

这样使用
=IIf(Sum(CDec(Fields!A.Value))=0,0,Sum(CDec(Fields!B.Value)) / Sum(CDec(Fields!A.Value)))
在对列字段求和进先进行类型转换,这样即使你的A.Value不为数值型也没关系
------解决方法--------------------------------------------------------
不可能
------解决方法--------------------------------------------------------
=IIf(0=Sum(CDec(Fields!A.Value)),0,Sum(CDec(Fields!B.Value)) / Sum(CDec(Fields!A.Value)))
这样试一下,实在不行就用 <>
------解决方法--------------------------------------------------------
探讨
引用
不可能


试了,还是不行,我这个文本框是放在组尾区,与这个有关吗?但为什么 <>0的就计算正常呢?

------解决方法--------------------------------------------------------

对你报表的数据源的结构和报表结构不清楚,所以无法看出什么原因,你用 <>0进行判断,看数据是不是对的啊
------解决方法--------------------------------------------------------
就你的这个表达式而言是没有错的,我刚刚试过了,

你仔细检查一下分组和数据源看看有没有错,不要再想这个本是正确的东西错在哪里了,因为它没有错
------解决方法--------------------------------------------------------
我也遇到这个问题,没解决,就让它显示错误号了
------解决方法--------------------------------------------------------
=IIf(Val(Fields!A.Value)=0,0,Val(Fields!B.Value) / Val(Fields!A.Value))

        

热点排行