说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

用Delphi4的QReport部件生成报表

HTML文档下载 WORD文档下载 PDF文档下载
用Delphi4的QReport部件生成报表

---- 用户在使用数据库应用程序时经常要生成报表,利用Delphi 4的QReport 部件,可以帮助我们快速方便地生成报表。这里以一个设备管理报表为例说明如何用QReport部件与Query部件设计从多个数据表中生成报表。

---- 一、 所用数据库

---- 这里用到三个Foxpro数据表,DLBMK(设备大类编码)、SBXHK(设备型号及配置)、BMSBK(设备所在部门),存放在D:\SB目录下。其库结构如下:

---- (一) DLBMK

字段名称 字段类型 解释

1. DLBH N3 设备大类的编号

2. DLMC C20 设备大类的名称

(二)SBXHK

字段名称 字段类型 解释

1. XHBM N3 设备型号的编码

2. DLBH N3 同DLBMK中的DLBH字段

3. SBXH C30 设备型号

4. SBPZ C30 设备配置

5. SBSL N3 设备数量

(三)BMSBK

字段名称 字段类型 解释

1. BMMC C20 部门名称

2. XHBM N3 同SBXHK中的XHBM字段

3. SL N3 数量

---- 利用这三个数据表,要生成一个只有电脑部有而其他部门没有的设备型号的情况。

---- 二、 程序中的部件及属性

---- 程序中有两个窗体:主窗体mainForm与报表窗体repForm。

---- 主窗体mainForm中有两个TButton部件,设置如下:

部件 属性及属性值

PreviewBtn:TButton Caption:预览

PrintBtn: TButton Caption:打印

---- 报表窗体repForm中的部件及属性设置如下:

部件 属性及属性值

Query1: TQuery DatabaseName:d:\sb

Active: True

Qrep1: TQuickrep Dataset:query1

TitleBand1: TQRBand BandType:rbTitle

HeadBand1: TQRBand BandType:rbColumnHeader

DrawLeft : True

DrawRight : True

DrawTop : True

DrawBottom : True

DetailBand1: TQRBand BandType:rbDetail

DrawLeft : True

DrawRight : True

DrawTop : True

DrawBottom : True

ChildBand1: TQRChildBand ParentBand:DetailBand1

DrawLeft : True

DrawRight : True

DrawTop : True

DrawBottom : True

TitleLabel: TQRLabel Caption:设备统计表

DlmcLabel: TQRLabel Caption:类别

SbxhLabel: TQRLabel Caption:型号

SbpzLabel: TQRLabel Caption:配置

SbslLabel: TQRLabel Caption:数量

DlmcDBText: TQRDBText Dataset:Query1

Datafield: dlmc

SbxhDBText: TQRDBText Dataset:Query1

Datafield: sbxh

SbpzDBText: TQRDBText Dataset:Query1

Datafield: sbpz

SbslDBText: TQRDBtext Dataset:Query1

Datafield: sbsl

Shape1~9: TQRShape Shape:qrsVertline

Top:0

Width:1

Query1的SQL属性设置为:

select a.dlbh

a.dlmc

b.sbxh

b.sbpz

b.sbsl

from dlbmk a

sbxhk b

where a.dlbh=b.dlbh and b.xhbm not in

(select xhbm from bmsbk where trim(bmmc)<>’电脑部’)

order by a.dlbh

---- 设置几个TQRband部件的DrawLeft、DrawRight、DrawTop、DrawBottom属性值为True

是为了打印表格边框及横线。利用TQRShape部件,是为了打印出表格竖线。DlmcDBText放置在DetailBand1上,其它几个TQRDBText部件放置在ChildBand1上,Shape1~3放置在HeadBand1上,Shape4~6放置在DetailBand1上

Shape7~9放置在ChildBand1上。

---- 三、 为程序增加代码

---- 1.mainForm窗体中的两个按钮事件

procedure TmainForm.PreviewBtnClick(Sender : TObject)

begin

repForm.Qrep1.Preview;

end;

procedure TmainFormPrintBtnClick(Sender : TObject)

begin

repForm.Qrep1.Print;

end;

---- 2.HeadBand1、DetailBand1及ChildBand1的BeforePrint事件

procedure TrepForm.HeadBand1Before

Print(Sender : TQRCustomBand;

Var PrintBand : Boolean)

Begin

Shape1.Height:=HeadBand1.Height;

Shape2.Height:=HeadBand1.Height;

Shape3.Height:=HeadBand1.Height;

End;

procedure TrepForm.DetailBand1Before

Print(Sender : TQRCustomBand;

Var PrintBand : Boolean)

begin

PrintBand:=bh< >Query1[‘dlbh’];

if PrintBand then

begin

bh:=Query1[‘dlbh’];

Shape4.Height:=DetailBand1.Height;

Shape5.Height:=DetailBand1.Height;

Shape6.Height:=DetailBand1.Height;

end

end;

procedure TrepForm.ChildBand1Before

Print(Sender : TQRCustomBand;

Var PrintBand : Boolean)

Begin

Shape7.Height:=ChildBand1.Height;

Shape8.Height:=ChildBand1.Height;

Shape9.Height:=ChildBand1.Height;

End;

bh应在变量定义部分定义:

Var bh : shortint=0;

---- 几个TQRShape部件的高度(Height)与所在TQRBand 部件保持一致,使竖线打印得整齐。如果在设计阶段调整了TQRBand部件的高度,也不会出现竖线断线或过长的情况。

---- 在DetailBand1的BeforePrint事件中用PrintBand进行控制,可使每个设备大类名称只需打印一次,而不是每个型号都对应打印一次大类名称。因为dlbh字段的值都大于0,bh初值设为0使它与任一记录的dlbh字段的值都不同,以确保第一个大类名称被打印。这样就生成了一个从多个数据表中提取数据,并带有表格线的数据报表。

---- 注:本例工程文件为sbgl.dpr,原程序文件为main.pas和sbrep.pas,若要测试请将dlbmk.dbf、 sbxhk.dbf、bmsbk.dbf三个文件放在d:\sb目录下。

《近匠》云巴创始人张虎:低门槛云服务为小团队创造更多机会 Oculus公司同意收购Xbox 360手柄设计团队 公有云VS私有云 哪个数据更安全? 调查:开发者越老越吃香吗? Facebook在线支付:取代虚拟货币的终极边界 Google I/O前析:关于新一代设计框架Quantum Paper的猜想 Google I/O 2014前瞻:“令人发指”的Android产品线 福昕熊雨前:PDFium开源项目的背后 Dropbox无法登陆,国内企业网盘横向评测! 如果编程语言是超级英雄…… 谷歌发布Material Design设计语言 系统、功能与设计,Android L究竟新在哪儿? 《近匠》游道易副总裁孙可:发行商眼中的手游市场 布道师徐立:Docker是标准化IT结构的新方式 解读全新Google Play Games:多屏游戏时代终于来了! 设计神器PaintCode 2.1发布,完全支持Swift 一周消息树:天河二号以每秒3.3亿亿次的速度再居世界超算榜首 传闻微软计划用Lumia品牌取代Surface 【CTO俱乐部读书会】杨立东:技术团队留人“三板斧” 蓝港在线王世颖:浅谈手机游戏发行的成功基因 美国高通公司执行董事长Paul E. Jacobs:移动科技——精彩现在,辉煌未来 告别公用云,Instagram已将服务迁至Facebook数据中心 华为助力凤凰实现全媒体战略 跨平台2D/3D游戏开发框架libGDX发布1.2.0更新 Docker CEO Ben Golub:Docker借助开源、天时走向成功 社交网络先驱、服役十年的Orkut被谷歌关闭 支付宝风控系统对外输出 联合机构建支付安全生态圈 不同设备不同界面:Windows 9正在逼近! 福特联手英特尔 为汽车打造智慧感应系统 《近匠》环信:标准化即时通讯与未来社交构想 支持Swift!全新“四步测”BDD框架Quick诞生 用VB.NET连接数据库老是连不了,快精神分裂了,救命啊! 关于SendMessage(高分相送,紧急) 急!!!高手进! 在查找结果中如果某一字段的值相等,只取出其中一条的问题! squid的安装问题???????????????????? SQL语句问题? 冒昧求救,光驱不能使用,不能boot 我的主机总收到外面发的广告信息? 高分求助急!!! 见鬼了,我添加一个TServerSocket控件,然后编译出现:Declaration terminate incorrectly 有谁知道用哪款打印机比较好呢? 按钮BitBtn1上有图片,在图片上写字的问题。(在先给分!) cystal reports 8.5 english显示繁体问题,急,等待 Unix下用什么源代码检测工具比较好? 我的电脑出什么问题了?各位帮帮忙 界面导航如何分类? 怎样得到本机的网卡号??? %¥#问个小问题,知道的都来抢分啊 谁知道哪儿有支持认证的SMTP组件下载? 有什么软件能查看PE文件的? ADO问题!!!! 100分求购最简单的串口程序!需要详细注释! 怎么给大家份呀?to wyz_csdn等(500分诚征wav 转换到MP3的源程序(VC++的例子)) 在directshow中,不知道怎样对播放的画面的亮度进行控制? 如果深愛的人要離開你,是變心還是死亡好一點?(讨论) 贴了二次为什么没有人指教? 戒水快两年了,如今回来看看,物不是人非啦 新手一问 关于datagrid 修改数据的问题,帮我看看,多谢 谁有这两本书,请帮忙发到我的邮箱里,100分相送 到底应该怎么办? 大家好,如何打开DLL文件? 建议成立一个程序员协会 关于IE中图片的保存 VB 语言支持问题 高分求李维《delphi5.xDELPHI5.X ADO/MTS/COM+高级程序设计》示例源码!!!! 请yangshu进来!给妳点分!!!倒分! 请教各位如何实现dbgrid中按住shift多选的问题? 请问把sql-server7中的数据文件copy出来行吗? 找不到类,请大家帮忙解决,谢谢 异常处理问题 怎样恢复被损坏的"本地用户和组" 小弟在线等待,一小问题,,大家来帮忙?? 求jsp树的原代码 最好是jsp+js+xml 执行效率要高。(从数据库中动态生成的)在线 关于多层结构中事务处理的问题. VB6.0升级到VB.NET的问题。 在ASP中使用ActiveX Control ADOTable表名如何在运行时“递进” 这样的待遇能招到人吗? 不好意思,问个技术问题。其他版实在没人气!只好来这问! 不爽,辞职,散分! 傅雷在第一封信中对儿子寄予了怎样的期望 吾尝终日不食 终夜不寝 已死无益 不如学也 血浆中co2能不能运到组织液中原题所问:co2的来源及其去向?来源一空有血浆,去向一空有组织液,是不是表明血浆中的co2可以进入组织液? 了解傅雷这封家书是在什么情况下写给儿子的.2,傅雷想通过这封书信告诉儿子什么 子曰:吾尝终日不食,终夜不寝,以思,无益,不如学也. 英语翻译(一) (甲)良尝闲从容步游下邳圯上,有一老父衣褐,至良所,直堕其履圯下,顾谓良曰:“孺子,下取履!”良愕然,欲殴之.为其老,强忍,下取履.父曰:“履我!”良业为取履,因长跪履 傅雷在这封信中对儿子寄予了怎样的期望' 用烤箱时烤鸡翅的油滴到加热管上要紧吗? 宋太祖的杯酒释兵权是什么意思? 傅雷先生的信写给哪个儿子《傅雷家书》 孔子曰:吾尝终日不食,终夜不寝,以思无益,RT.并讲明了什么学习道理?温故而知新的“温故”和“知新”顺序能否调换?为什么?“学而时习之,不亦说乎?有朋自远方来,不亦乐乎?人不知而不愠, 为什么干电池长时间放置又有了电?3q 联合国吧世界上的国家分为两大类一是.2是.中国属于哪一类 宋太祖杯酒释兵权的目的是 该化合物该怎么命名?书上有命名为4-甲基-2-戊胺的? 文言文中“为所结构” 除表被动,意思是? 北宋建立后,宋太祖杯酒释兵权的主要目的是什么? 为什么没电的干电池长时间不用后还会生出电来. 联合国把世界上的国家大致分为两大类,一是什么,二是什么.我们中国属于什么 为什么宋太祖要“杯酒释兵权” "四亚甲基二矾四胺"是什么东西啊知道那有卖的吗?这边的耗子成灾,没有办法,善哉善哉 θ=arctan(4/3)=53.13° 怎么算出53.13°的 怎样改变共射放大器的偏置电路来改变组合放大器的性能 N'N-二(2-羟丙基)-N'N-四甲基己烯二胺有谁知道这个东西那里有销售的,或者是相关产品,以及类似的产品,只要是N'N-二(2-羟丙基)-N'N-四甲基这种类型的就可以了,(CH3)3[CH3CH(OH)CH2]N+-(CH2)6-+N(CH3)2[CH2CH(O co2不从毛细血管进入胰腺组织细胞的原因是?答案说co2不从毛细血管进入胰腺组织细胞的原因是胰腺产生co2,且浓度高.胰腺怎么会产生co2,为什么要产生co2?毛细血管不就是淋巴吗?最好不都是要 世界有几个字 赵匡胤为什么杯酒释兵权? 用酚酞作指示剂 用酚酞作指示剂 盐酸滴定Na2co3 达到滴定终点 离子浓度关系为什么达到滴定终点时恰好完全反应生成NaHco3和Nacl? 谁能给我看一个世界上笔画最多的字? 宋太祖 杯酒释兵权 那些权臣为什么听他的呢? 工业上制备纯硅反应的热化学方程式如下:SiCl4(g)+2H2(g)⇌Si(s)+4HCl(g);△H=+QK工业上制备纯硅反应的热化学方程式如下:SiCl4(g)+2H2(g)⇌Si(s)+4HCl(g);△H=+QKJ/mol(Q> 古文中的“以”翻译成“把”表什么?比较翻译成“用”表方式.比如 A=arctan1/2 工业制备纯硅的反应为SiCl4(g)+2H2(g)=Si(s)+4HCl(g);△H=+240.4J/mol,生成的HCl 通入100ml/mol 的NaOH溶液恰好反应,则反应过程中( )(填吸收或释放)的热量为( )kj.需要两空的详解哦,不求多,但要易 钠和酸反应时是不是也先跟水反应先的啊 现有某钢样10g,在充足的氧气中燃烧后,生成二氧化碳0.22g,求钢样的含碳量比率写出方程式及主要过程 液化气热水器在用个几分钟后为什么火会熄灭后马上又自动点燃,并如此重复,是怎么回事? 文言文中被动句往往会有哪些标志? 它的主谓宾有什么特点? 韩信,张良,萧何各是哪个时代的人,成就是什么RT 找一个成语含有寝 睡觉( ) 钠先和水反应还是先和酸反应? 大家认为张良;萧何;韩信,你会更信任谁?我最喜欢张良,信任他简单或具体说明原因 7、8、9、10、11 文言文 为表被动时这时候为连带的介词结构 做状语么?例句 吾从板外相为应答 y=arctan(1-x^2)/(1+x^2)这个算不算复合函数答案是dy=[-2x/(1+x^4)]dx 但是我认为求微分应该是arctanu求导再乘du,但是du应该有等于u求导乘dx,可是看答案的意思好像没有再算du,而是直接用arctanu求导乘dx ( 足量钠钠与盐酸反应中,先与酸反应还是先与水反应,化学方程式怎么写,写两个还是合在一起写,什么样的两个方程式可以合在一起,最好举个例子, 英语翻译《三峡》“素湍绿潭,回清倒影. 请问y=arctan(1-x),求y' 由古文《孙权劝学》引出的成语是什么?一定要准确无误! 奥尔良烤鸡翅的做法我想用烤箱做奥尔良烤鸡翅,佐料怎么拌? ∫∫(D)arctan y/x dxdy.D:1≤x^2+y^2≤4,y≥0,y≤x 孙权劝学和祖逖北伐中的成语 1、一块蔬菜基地,种着4种蔬菜,其中西红柿有105亩,占总面积的35%,另外三种蔬菜,黄瓜90亩,芹菜45亩,青菜60亩.问另外三种蔬菜占总面积的百分之几?2、 y=2x*arctan(y/x),求y‘’ Arctan的反运算怎么算不用科学计算器 口算 比如arctan1=45‘ 那arctan6.441=多少度 吾尝终日不食,终夜不寝,以思,无益,不如学也.的意思 做饭时若要时柴草燃烧更旺 可将柴草架空 其原因是? arctan(-1)=-π/4,怎么算的? 终夜不寝的寝的意思 柴草燃烧释放的是生物能吗 崔永元:美国人\"放心吃了十几年转基法国德国抗议美国监听 敦促美国建立合墨前警长向美贩毒 被判13年监禁罚款菲律宾尴尬改口 撤回有关中国在黄岩岛默克尔打破沉默亲评美监听事件:朋友间白宫宣传乳癌防治月活动 点亮粉红色灯澳大利亚否认山火与全球变暖有关 总理蒙古国成为“黄金国” 法德纷纷“带团默克尔向奥巴马要说法 奥巴马避谈“未澳大利亚一名17岁男生步行赴学校途中美国拟投资82亿美元治水 有望以此刺日少年5人组专撬豪车车标 称可在好友克里称美国最大威胁非对手 而是内部机默克尔向奥巴马要说法 奥巴马避谈“未\"大黄鸭\"中国之旅进入倒计时 成奥斯卡影后赞与查尔斯王子跳舞比“亲热世界最高大的狗在美国去世 身高可比肩日媒调查:出轨女性的异常行为表现冰岛蝉联全球男女最平等国家 中国再排日本一女子被控在网吧卫生间生下男婴后潘晓婷赢得第十个世界冠军:十全十美太微评论一男子身系钢绳蹊跷坠亡一村官挪用3200万元公款给儿子痴呆太婆武昌走失 半年后在孝感找到图文:商场吊顶垮塌 砸烂珠宝柜台被坠楼者砸伤的男子暂时脱险图文:汉阳锅顶山化石群见证武汉曾是浅辽宁省高院院长缪蒂生:法官当有以身许行政检察正在发生四大变化饶阳第三届蔬菜葡萄节启幕 展现“大菜杨学增挂帅四川女大学生穿旗袍森林悬崖“凌波微步”修原标题:中石油404人因战火从南苏丹联合国任命人道主义筹资高级别小组广平:环城水系蓄水 群众围观“新河”李克强抵达波哥大 中国总理30年来首国际油价21日继续上涨原标题:天津大学否认美方指控 反对科国际油价21日继续上涨2015省业余足球联赛总决赛开赛关震:我只想好好踢几年球
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘