读书人

为什么小弟我的FastReport不能相加

发布时间: 2012-09-25 09:55:59 作者: rapoo

为什么我的FastReport不能相加?
有很多个相同的字符类型里的数字,相加在一起,因为有空的要加,所以想先切换成0再加,但为什么提示报错?

FastReport版本,3.16

谢谢.

Delphi(Pascal) code
[StrToInt([IIF([<frxDBDataset1."PayCost1">]='',   '0',   [<frxDBDataset1."PayCost2">])])+StrToInt([IIF([<frxDBDataset1."PayCost3">]='',   '0',   [<frxDBDataset1."PayCost4">])])+StrToInt([IIF([<frxDBDataset1."PayCost5">]='',   '0',   [<frxDBDataset1."PayCost6">])])+StrToInt([IIF([<frxDBDataset1."PayCost7">]='',   '0',   [<frxDBDataset1."PayCost8">])])+StrToInt([IIF([<frxDBDataset1."PayCost9">]='',   '0',   [<frxDBDataset1."PayCost10">])])+StrToInt([IIF([<frxDBDataset1."PayCost11">]='',   '0',   [<frxDBDataset1."PayCost12">])])+StrToInt([IIF([<frxDBDataset1."PayCost13">]='',   '0',   [<frxDBDataset1."PayCost14">])])+StrToInt([IIF([<frxDBDataset1."PayCost15">]='',   '0',   [<frxDBDataset1."PayCost16">])])+StrToInt([IIF([<frxDBDataset1."PayCost17">]='',   '0',   [<frxDBDataset1."PayCost18">])])+StrToInt(<frxDBDataset1."PayCost19">)] 万


[解决办法]
Delphi(Pascal) code
在代码里面计算赋值,而不是直接写在Text中procedure Memo1OnBeforePrint(Sender: TfrxComponent);begin  Memo1.Text:= IntToStr(StrToInt(IIF(<frxDBDataset1."PayCost1">='', '0', <frxDBDataset1."PayCost2">))+StrToInt(IIF(<frxDBDataset1."PayCost3">='', '0', <frxDBDataset1."PayCost4">)));    end; 

读书人网 >.NET

热点推荐