分页合计:
直接在页脚上增加一个Sum(对应字段)函数即可。
分页上显示累计:
需要在MasterData1 的 OnAfterPrint 事件里写下代码如下。
var sum_t,sum_t1,sum_t2:extended; //sum_t 总合计 procedure MasterData1OnAfterPrint(Sender: TfrxComponent); begin sum_t1 := sum_t1+<结果集1."字段1"> ; sum_t2 := sum_t2+<结果集1."字段2">; sum_t := sum_t+<结果集1."字段3"> ; end; begin sum_t :=0; sum_t1 :=0; sum_t2 :=0; end.
然后在TEXT里面输入"[sum_t]"即可,没有引号。
允许使用HTML标签(没测过):
frxmemoview.AllowHTMLTags := True;
分页显示总页数:在TEXT里选择插入系统变量[Page#]
分页显示当前页:在TEXT里选择插入系统变量[TotalPage#]
Sum()函数出现的怪异事情。
当在调用sum()函数的时候,举例来说:
我有一个3行记录的结果集,字段名称为A,里面分别存放了10,20,30,这个时候,我调用Sum(A)放在了某一TEXT里。
打印的时候,很奇怪的打出了"102030",当时思前想后,试了很多方法,都没有解决。
最后,检查了一下形成结果集的SQL,发现,将这一列进行了小数位数处理后,成为了字符型的。
结果打印就默认进行了字符串拼接,可见,这个打印控件是相当智能。在把形成结果集SQL进行Convert处理成数值型后正常。