有精通qreport的高手请进来指导一下 ( 积分: 200 )

  • 主题发起人 主题发起人 firedaisy
  • 开始时间 开始时间
F

firedaisy

Unregistered / Unconfirmed
GUEST, unregistred user!
我有一些数据是用 adoquery 查询出来的(好几个表的联合),结果如下:
name item spec quantity charges
小明 a / 1 100
小明 c / 21 150
小光 d / 14 120
小光 a / 1 100
小黑 a / 10 10
小黑 f / 1 100
现在想通过报表变成
name item spec quantity charges
小明 a / 1 100
c / 21 150
合计 250
小光 d / 14 120
a / 1 100
合计 120
小黑 a / 10 10
f / 1 100
合计 110
用qreport应该怎么办,说一下思路和具体做法,主要是需要不需要group header,以及每一个band 应该设置成什么,我的qq 50555660(请注明dfw),谢谢大家
不要叫我看demos ,我看了没用,
 
我有一些数据是用 adoquery 查询出来的(好几个表的联合),结果如下:
name item spec quantity charges
小明 a / 1 100
小明 c / 21 150
小光 d / 14 120
小光 a / 1 100
小黑 a / 10 10
小黑 f / 1 100
现在想通过报表变成
name item spec quantity charges
小明 a / 1 100
c / 21 150
合计 250
小光 d / 14 120
a / 1 100
合计 120
小黑 a / 10 10
f / 1 100
合计 110
用qreport应该怎么办,说一下思路和具体做法,主要是需要不需要group header,以及每一个band 应该设置成什么,我的qq 50555660(请注明dfw),谢谢大家
不要叫我看demos ,我看了没用,
 
adoquery 查询时带上SQL的分组命令,在报表的页面上放汇总块
 
肯定可以在qreport里面实现。
我这没有qreport,没法帮你了[:(]
 
select name,item,spec,quantity,charges from tablename
group by name,item with rollup
你试试
 
给你说说思路:
在QuickReport中放QRLabel,在QRLabel的BeforePrint事件中写代码,判断当前记录的姓名是否与前一个记录相同,如果不相同,显示为合计数据,记录指针往回移1.
用分组报表也可以,不过我觉得还是自己写代码控制方便,想怎么搞就怎么搞。如果你想不出来,联系我。
 
我晕,敲了一大段的操作方法,发出时错误没保存......[:(!]
自已看看QRP的Demo吧,很简单的,不敲了,累!
 
最简单的办法还是按照renyi的办法写代码。
 
谢谢大家,我找到方法了(看的demo),就是用qrgroup和 qrsubdetail,设置expression,qrexpr等等,如果有谁还为此困扰,我能解决一些简单的报表了,可以告诉大家 qq 50555660 (不常上)请注明 大富翁 ,石家庄的朋友也可以给我打电话。
to renyi:
你的方法太复杂了,qreport 自带了小记功能。
 
多人接受答案了。
 
我的方法可以随意控制,想怎么样就怎么样?
甚至一行可以输出多条记录的数据,总之,想怎么控制,就怎么控制,方便得很。
 
to renyi:
呵呵,我有仔细看了看你说的,有些细节不是很明白,用query提取出数据来以后,是个集合,怎么把字段赋给label呢,我怎样联系你呢??
 
可以如下,得到指定列的字符值:
QRLabel1.Caption:=Trim(AdoQuery1.FieldByName('Field_name').AsString);
 
然后再进行判断,至于要如何控制,就在这个地方写代码了,比如:为0不显示。
if QRLabel1.Caption='0' then
QRLabel1.Caption:='';
这只是举个例子,是不是很方便就可以控制啊?
 
to renyi:
我的意思是用adoquery select 出来的数据肯定是一个集合,怎样把这个集合给label呢?比如 select 数量 from table where time< and time> ,她的结果是17,25,33,怎样把这三个结果给label1呢,不需要三个lable吗
 
to renyi:
如果只需要 一个 label,哪怎么判断她跟上一个label.caption是不是同一个值呢?还有你说的合计数是不是需要两个adoquery,一个是明细,一个是合计,这两个怎么联系呢?还是用union把合计和明细用一个adoquery提出来
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
680
import
I
I
回复
0
查看
843
import
I
后退
顶部