Crystal reports 每次刷新报表时共享变量值都会更改

Crystal reports 每次刷新报表时共享变量值都会更改,crystal-reports,Crystal Reports,我对Crystal Reports中的共享变量有一个问题。我在公式中使用了以下共享变量 Shared NumberVar CC31To50; Shared NumberVar CC0To30; Shared NumberVar CC61To80; Shared NumberVar CC51To60; Shared NumberVar CCUnk; If {Command.cst_rf_label} = '0-30% of area median income (extre

我对Crystal Reports中的共享变量有一个问题。我在公式中使用了以下共享变量

Shared NumberVar CC31To50;   
Shared NumberVar CC0To30;   
Shared NumberVar CC61To80;  
Shared NumberVar CC51To60;  
Shared NumberVar CCUnk;  
If {Command.cst_rf_label} = '0-30% of area median income (extremely low)' Then
    CC0To30:=CC0To30+1  
Else If{Command.cst_rf_label} <> '0-30% of area median income (extremely low)' Then
    CC31To50:=CC31To50+1  
Else If{Command.cst_rf_label} <> '0-30% of area median income (extremely low)' Then 
    CC51To60:=CC51To60+1   
Else If{Command.cst_rf_label} <> '0-30% of area median income (extremely low)' Then
    CC61To80:=CC61To80+1  
Else If ISNULL({Command.cst_rf_label}) Then
    CCUnk:=CCUnk+1
共享编号为CC31至50;
共享号码为CC0到30;
共享号码CC6180;
共享号码CC51至60;
共享号码CCUnk;
如果{Command.cst_rf_label}='0-30%的地区收入中值(极低)'
CC0To30:=CC0To30+1
否则,如果{Command.cst_rf_label}“0-30%的地区收入中值(极低)”,则
CC31至50:=CC31至50+1
否则,如果{Command.cst_rf_label}“0-30%的地区收入中值(极低)”,则
CC51To60:=CC51To60+1
否则,如果{Command.cst_rf_label}“0-30%的地区收入中值(极低)”,则
CC61To80:=CC61To80+1
否则,如果ISNULL({Command.cst_rf_label}),则
CCUnk:=CCUnk+1

问题是每次刷新报表时,这些共享变量的值都在更改。有人能告诉你出了什么问题吗?

在报告开头(在报告标题中),你应该初始化公式字段中的所有共享变量。将它们全部设置为0。然后,当您刷新报告时,您将始终得到相同的结果

创建一个公式字段,如下所示:

Shared NumberVar CC31To50:=0;   
Shared NumberVar CC0To30:=0;   
Shared NumberVar CC61To80:=0;  
Shared NumberVar CC51To60:=0;  
Shared NumberVar CCUnk:=0;

0

将此公式字段放置在报告标题中。您可以使用suppress zero设置该字段的格式。

您是否检查了从数据库检索到的数据您的all else if语句相同,即
else如果{Command.cst_rf_label}“0-30%的地区收入中值(极低)”,则
。是这样还是打字错误?有一个叫做domain的参数。除了一个域值,它对所有域值都正常工作…嗨,Haraman,对不起,我打错了,它们应该是不同的值。