Fastreport报表问题,请教大侠,分可以加。(300分)

  • 主题发起人 主题发起人 ynjt
  • 开始时间 开始时间
Y

ynjt

Unregistered / Unconfirmed
GUEST, unregistred user!
我做的是电力系统报表:
我只有一个表:dfk.dbf,表里面有线路号、照明,动力,及电量字段,我做的报表
要实现不同的线路上,照明电量、动力电量及线路总电量的合计值。
格式如下:
标题
汇总名 电量
线路1+照明 照明电量合计
线路1+动力 动力电量合计
线路1 照明电量合计+动力电量合计
线路2+照明 照明电量合计
线路2+动力 动力电量合计
线路2 照明电量合计+动力电量合计
 
你可以在报表中使用主从表,线路号为分组字段。这样就能实现。
 
可以将数据组织成需要的格式,然后再打印,几乎可以打印所有的报表格式。
 
同意楼上
可以统计汇总成如上的表
并不一定要FR来实现
 
DBF? 麻烦点:
用ClientDataSet作个简单的内存表,只有两个字段:汇总名及电量
然后自己将各数据汇总并存入内存表中,FR引用此表就行了
 
建立个临时表,这样就方便多了!
 
还是用数组来得方便些,
 
各位能说详细点吗?
 
to yanghaijun我没有用过clientdataset,能讲一下吗?
 
照明电量、动力电量为计算字段,由表码算出,照明用户和动力用户有标志区分?请各位帮忙!
 
我在FR中设三个分组,打印时却数据重复,为何?
如下:
031照明
031动力
031合计
031照明
031动力
031合计
031照明
031动力
031合计
032照明
032动力
032合计
032照明
032动力
032合计
.....
 
hfghfghfg你能帮助我吗?
 
照明电量、动力电量为计算字段,由表码算出,照明用户和动力用户有标志区分?
不能用fastreport直接实现吗?
 
这么简单的问题问得这么复杂!
//首先指出你的表设计有问题!照明、动力不应该是两个字段、用一个字段(类型)就可以
//如果两个字段谁能保证你的数据没有歧义。可能既是照明又是动力电量呢?
//改成
我只有一个表:dfk.dbf,表里面有线路号、类型,及电量字段,我做的报表
要实现不同的线路上,照明电量、动力电量及线路总电量的合计值。
//两级分组就可以了
sql:
select * from dfk order by 线路号、类型//order by很重要//外分组在前,内分组在后
然后在报表上放两个分组:第一个分线路号;分组条件是线路号//外分
第二个分线路号+类型;分组条件是线路号+类型//内分
中间是主项数据
然后放两个分组脚:第一个内分组统计sum(电量)
第二个外分组统计sum(电量)
 
to vmao
线路总电量合计在哪里显示?而且我发现sum(电量)数据都一样。
怎么解决?我会给你分数的,不论最后是否成功。
 
线路总电量合计放在分组脚上啊!
放一个memo在第一个内分组脚上:内容是sum([电量])
--解释:由于它在第一个内分组脚上所以他统计的条件是"线路号+类型"不用设定的
-------fr控件如果有多级分组会自动从内往外一组组对应的!
放一个memo在第二个分组脚上:内容是sum([电量])
--虽然这两个内容是一样的但结果不一样!这个分组脚对应外分组头所以条件是"线路号"
我不知道你在数据库中会不会有这样的值:线路+类型有重复的数据,如果有的话要这样写
sql:
select 线路号,类型,sum(电量) as 电量 from dfk
group by 线路号,类型
order by 线路号、类型
//这样相当于把数据先合并好,再出报表
--sql的sum分组和报表的分组是两码事!sql分组是把按条件重复的数据合并
--报表的分组相当于按排序的条件在分组脚上计算合计值!
你这个问题实际很简单!但要解释起来确实比较费劲!

 
to vmao是不是用三个分组?第一个分组用线路号,第二个线路号+用电编号<300,第三个线路号+用电编号>300,
线路+类型有重复的数据,电量是计算字段不能用SQL,类型是按用电编号区分(大于300是动力,反之是照明)
)我以前没有用过FastReport,所以很菜。请帮助解决。谢谢。
 
用两个分组就够了!因为order by的条件只有两个啊!用两个就可以解决问题了!
实际上你这里存在两个问题:
1。报表分组问题2。sql问题;你的sql是不对的!而你又没有把数据库的实际字段说清楚!
sql:
select 线路号,类型=case 用电编号 when 用电编号>300 then
动力 else
照明 end,
sum(电量) as 电量 from dfk
group by 线路号,类型
order by 线路号、类型
//case语句可以根据条件返回不同的类型//上面的语句可能通过不了要拆成两条!
你先看看有关sql 的书吧!你的思维太乱了,而且问题描述不清!
 
电量是计算字段能用在SQL中吗?
 
后退
顶部