在 crystal 报告中排除具有空值的数据

Exclude data with null values in crystal report

我在 crystal 报告中有这个公式

Global NumberVar Array Z := [
IF isnull({MIPIRReport;1.1}) then 0 else tonumber({MIPIRReport;1.1}) , 
IF isnull({MIPIRReport;1.2}) then 0 else tonumber({MIPIRReport;1.2}) , 
IF isnull({MIPIRReport;1.3}) then 0 else tonumber({MIPIRReport;1.3}) , 
IF isnull({MIPIRReport;1.4}) then 0 else tonumber({MIPIRReport;1.4}) , 
IF isnull({MIPIRReport;1.5}) then 0 else tonumber({MIPIRReport;1.5}) , 
IF isnull({MIPIRReport;1.6}) then 0 else tonumber({MIPIRReport;1.6}) , 
IF isnull({MIPIRReport;1.7}) then 0 else tonumber({MIPIRReport;1.7}) , 
IF isnull({MIPIRReport;1.8}) then 0 else tonumber({MIPIRReport;1.8}) , 
IF isnull({MIPIRReport;1.9}) then 0 else tonumber({MIPIRReport;1.9}) , 
IF isnull({MIPIRReport;1.10}) then 0 else tonumber({MIPIRReport;1.10}) ];

Minimum (Z)

我想要的是当数据为空时,它应该被排除在我的报告中

对于图形示例,值将如下所示:

1.1,1.2,1.9,1.5,1.88,0,0,0,0,0

其中 0 表示空值,1 表示值。

我想获得最小值,它是 1.1 而不是 0。我应该怎么做?

请注意,示例中的每个数字都是我的 crystal 报告中的一个不同字段,该字段的名称如下:

1,2,3,4,5,6,7,8,9,10

您可以尝试两种方法。

如果你想存储空值,那么你可以使用 2 个数组,一个只存储 0 空值,另一个数组存储其他值。

如果您不需要存储 0,则将公式更改为:

Global NumberVar Array Z;

IF isnull({MIPIRReport;1.1}) then 0 else Z:= tonumber({MIPIRReport;1.1}) , 
IF isnull({MIPIRReport;1.2}) then 0 else Z:= tonumber({MIPIRReport;1.2}) , 
IF isnull({MIPIRReport;1.3}) then 0 else Z:= tonumber({MIPIRReport;1.3}) , 
IF isnull({MIPIRReport;1.4}) then 0 else Z:= tonumber({MIPIRReport;1.4}) , 
IF isnull({MIPIRReport;1.5}) then 0 else Z:= tonumber({MIPIRReport;1.5}) , 
IF isnull({MIPIRReport;1.6}) then 0 else Z:= tonumber({MIPIRReport;1.6}) , 
IF isnull({MIPIRReport;1.7}) then 0 else Z:= tonumber({MIPIRReport;1.7}) , 
IF isnull({MIPIRReport;1.8}) then 0 else Z:= tonumber({MIPIRReport;1.8}) , 
IF isnull({MIPIRReport;1.9}) then 0 else Z:= tonumber({MIPIRReport;1.9}) , 
IF isnull({MIPIRReport;1.10}) then 0 else Z:= tonumber({MIPIRReport;1.10}) ;

Minimum (Z)

告诉我进展如何