历史版本1 :除数被除数为零的处理 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

1. 概述编辑

在报表设计时,若使用除法运算,会涉及到除数与被除数为零的情况,默认情况下FineReport的计算规则如下:
被除数为0,除数非0,结果为0:如0/2=0;
被除数非0,除数为0,结果为∞:如2/0=∞;
被除数和除数都为0,结果为0:如0/0=0。
但实际应用中,都希望对这种情况进行处理,比如除数为0或者除数被除数都为0的情况下不做计算等等。

2. 示例编辑

2.1 新建报表
2.2 报表设计
创建内置数据集,如图:
设计完成的报表,如下:
这是使用FineReport默认的规则计算,结果如下:
2.3 除数与被除数都为0
若希望被除数和除数都为0时,显示“can’t caculate”,否则做除法运算。此时可将C2单元格的公式改为:=if(A2=0&&B2=0,"can't caculate",A2/B2),如下图:
结果如下:
2.4 除数为0
除数为0时,相除结果为无穷大,希望不需要计算,可使用公式=IF(B2=0,"0",A2/B2),结果就显示为0了。

因此,对于除数和被除数都为0的情况下,可以通过if公式先进行判断然后决定是否进行运算。