澄清:如果TQUICKREP的DATASET是TQUERY(not TTABlE),如何用TQRExpr算出某一页某一列数的合计数,关键在于TQuery与TQUICKREP不在同一个Form

MOZ 2000-03-23 02:03:00
...全文
228 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Qing_li 2001-04-13
  • 打赏
  • 举报
回复
如果我是一个临时的dataset呢?该如何处理?
renzhm 2001-04-13
  • 打赏
  • 举报
回复
动态设置报表控件的属性:
..执行查询:
str_sql:='select 姓名,年龄,性别,班 from table ';
Query.Open;//我要简单写啦!在另一单元如:DMC
------------------------------------------------
在打印按钮事件里写:
with Qrp do
begin
dateset:=DMC.Query;
QRDBText1.dateset:=DMC.Query;
QRDBText1.datefield:='姓名'
QRDBText2.dateset:=DMC.Query;
QRDBText2.datefield:='年龄'
QRDBText3.dateset:=DMC.Query;
QRDBText3.datefield:='性别'
QRDBText4.dateset:=DMC.Query;
QRDBText4.datefield:='班'
preview;//or print;
end;
你也可以设置其他报表控件的属性:
QRLabel.Caption:='';
QRExpr.expression:='sum([要合计的字段])';

某一页某一列数的合计数的实现:

在PageFooter带中放一个QRExp控件,指定要合计的字段,
记住:一定要把它的resetafterprint属性值设为true;

贴子该了结了吧?
catthunder 2001-02-21
  • 打赏
  • 举报
回复
自己手算啊,然后在一个TQRLabel中显示出来
app2001 2001-02-21
  • 打赏
  • 举报
回复
在不在同一单元很重要吗?楼上的几位老兄们的办法都很可行的呀
bpc 2000-03-24
  • 打赏
  • 举报
回复
你可以指定你的QUICKREP的DATASET属性为类似
FORM1.QEURY1的形式,然后再使用SUM函数对
某一列(某一个字段)求和。(sum(FORM1.QEURY1.字段名))
liu 2000-03-24
  • 打赏
  • 举报
回复
你可以在程序的实现部分加上uses FormX;FormX为TQuery所在的窗体。然后将TQuickRep的DateSet属性设为FormX.Query1.最后用TQRExpr进行计算。
dengdeng 2000-03-24
  • 打赏
  • 举报
回复
在TQuickrep所在的单元中Use含TQuery的单元。这样Quickrep的DataSet属性

中Query控件就可见。

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧