使用FastReport如何生成这样的报表?

fleamboy 2005-01-12 12:05:00
数据结构如下:
A表(客户信息): 序号,姓名,地址
b表(消费信息): 序号,客户序号,消费物品,数量,金额

需要生成如下报表,关键是格子如何绘制?
┏━━━━┳━━━━━┳━━━━┳━━━━━┳━━━┳━━━━┓
┃ 姓名 ┃地址 ┃消费合计┃ 消费物品 ┃数量 ┃ 金额 ┃
┣━━━━╋━━━━━╋━━━━╋━━━━━╋━━━╋━━━━┫
┃ ┃ ┃ ┃ 物品A ┃ 4 ┃ 80.00 ┃
┃张三 ┃地址1 ┃100.00 ┣━━━━━╋━━━╋━━━━┫
┃ ┃ ┃ ┃物品B ┃ 5 ┃ 20.00 ┃
┣━━━━╋━━━━━╋━━━━╋━━━━━╋━━━╋━━━━┫
┃ ┃ ┃ ┃物品A ┃ 5 ┃ 100.00 ┃
┃ ┃ ┃ ┣━━━━━╋━━━╋━━━━┫
┃李四 ┃地址2 ┃ 150.00 ┃物品B ┃ 5 ┃ 20.00 ┃
┃ ┃ ┃ ┣━━━━━╋━━━╋━━━━┫
┃ ┃ ┃ ┃物品C ┃10 ┃ 30.00 ┃
┣━━━━╋━━━━━╋━━━━╋━━━━━╋━━━╋━━━━┫
┃王五 ┃地址3 ┃75.00 ┃物品D ┃3 ┃ 75.00 ┃
┗━━━━┻━━━━━┻━━━━┻━━━━━┻━━━┻━━━━┛
...全文
399 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
benchozhang 2005-04-12
  • 打赏
  • 举报
回复
mark
shotking 2005-03-14
  • 打赏
  • 举报
回复
我发给你个Demo,Delphi5+Access的,FastReport2.53
Name 2005-03-14
  • 打赏
  • 举报
回复
不用那么复杂,
直接把你所需要的资料放在一个MasterData上就可以了,
记住:
一个MasterDataBand可以放多行数据的,把思维转一下,
我以前也做过
caiso 2005-03-14
  • 打赏
  • 举报
回复
顶一下
dezxp 2005-03-14
  • 打赏
  • 举报
回复
to shotking(小金_(想找工作,Delphi+数据库,地点在上海))
我也遇到类似的问题,麻烦您也发给我一份:dez_0609@163.com 谢谢!
fleamboy 2005-03-13
  • 打赏
  • 举报
回复
我得邮箱fleamboy◎163。com,能不能发一个演示代码给我,谢谢!!!
fleamboy 2005-03-10
  • 打赏
  • 举报
回复
能不能说的详细点,最好给个例子!!!
shotking 2005-03-10
  • 打赏
  • 举报
回复
试了一下,用主-子表可以实现,
1.首先两个数据集表A和表B必须是主-子表的关系
2.在主表A的语句中,需要包含B表的合计值和记录数,建议用Query查询,查询后的数据集如下
数据结构如下:
A表(客户信息): 序号,姓名,地址,物品数,总金额
b表(消费信息): 序号,客户序号,消费物品,数量,金额

然好在FastReport上放一个主数据的Band,数据集为A表,上面显示
姓名 ┃地址 ┃消费合计
对应的Memo,
再在主数据的Band上放一个子报表(SubReport),数据集为B表,子报表上显示
消费物品 ┃数量 ┃ 金额
对应的Memo
最后是设定关于显示垂直居中的问题,这里假定子报表上的Band或Memo的高度是20
那么就在前面的“姓名 ┃地址 ┃消费合计”的对应的Memo里面写上一条代码就行了
begin
Height := 20 * [Query1."物品数"];
end;
注意要首先把这些Memo的对齐方式设定为“垂直居中”
shotking 2005-03-10
  • 打赏
  • 举报
回复
比较困难,去研究研究,先帮你顶上去!!
yiyideyi 2005-03-10
  • 打赏
  • 举报
回复
垂直居中也有个按钮的,你选择memo然后在工具栏上找,在水平居中的旁边
tgtcn 2005-01-20
  • 打赏
  • 举报
回复
用一个明细BAND,再画好格子,把主明细表的数据按序排好
tgtcn 2005-01-17
  • 打赏
  • 举报
回复
不会,帮你顶
Rail100 2005-01-12
  • 打赏
  • 举报
回复
打开报表编辑器,留意顶上的工具栏,是不是有些表格线以及一个表格框?懂怎么用吧
fleamboy 2005-01-12
  • 打赏
  • 举报
回复
我知道啊。可是关键是 姓名、地址、消费合计如何居中???
另外如何生成这个消费合计????
fleamboy 2005-01-12
  • 打赏
  • 举报
回复
另外主表A的数据和细表B的数据需要在同一行中,真的只是使用『有些表格线以及一个表格框』就可以完成啊!
fleamboy 2005-01-12
  • 打赏
  • 举报
回复
晕,我说的是他们垂直居中啊,这些数据是被压缩的数据行,我还真的没有找到压缩的数据行垂直居中的属性!?
yilesoft 2005-01-12
  • 打赏
  • 举报
回复
学习一下,再帮你顶一下吧!
Rail100 2005-01-12
  • 打赏
  • 举报
回复
问题应该一次提出来
居中,左右对齐这些东西,自己点点控件,看看属性就知道怎么调了,动动手吧.要学会论坛搜索

2,495

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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