请问该如何进行计算(100分)

  • 主题发起人 主题发起人 狂龙
  • 开始时间 开始时间

狂龙

Unregistered / Unconfirmed
GUEST, unregistred user!
大家好!
小弟的问题是:我做了个单位上的报表,该报表中有两个关于计算的字段,不知道
该如何去做,请大家帮忙解决。
一是:关于月累计的计算(其中用到了多个表的数据),就是把当月的数据进行累加,
到下个月时重新累加;
另一个是:关于年累计的计算(也是多个表的数据),就是对这一年的数据进行累加;
请问该如何做呀!?
 
在报表中将QRLabel放置在显示累加数的地方,
在调用报表的事件中通过SQL求和后给QRLabel的Caption赋值。
 
在onneeddata事件中对这两个值计算,用两个qrlabel分别显示这两个值
 
如果调一下多个月,每个月的都有月累计,年累计怎么办
我也遇到过这样的问题
dxdbgrid 可能比较好用
 
用SQL语句在后台计算,然后再给QRLabel.Caption
 
请问该怎么样去写呀
 
建议建立一个新表 table,该表结构与月报结构一致,
需要再加一个能区分报表所属年月的字段 ssny
将当月数据添加到该表 insert into table select .....(注意加年月)
以后输出数据就简单了:
输出本月数 select 项目名称,..... from table where ssny=当期年月
输出月累计数 select 项目名称,sum(.)..... from table
where ssny>='当年1月' and ssny<=当期年月 group by 项目名称
输出年累计数 select 项目名称,sum(.)..... from table
where ssny>='当年1月' and ssny<=当期12月 group by 项目名称

这样的方式 用SELECT 语句输出报表非常灵活,而且一次建立,多年使用,功能实在
 
创建视图,然后把视图做成报表打印出来
 
游标+临时表
 
同意 smallbs 所说的。
不知道你所说的报表格式是不是这样的:
先打印出每月的统计数,接着计算该年的统计数,然后按此规律重复,
计算下一年的月、年统计数。即
一月,月统计,年统计。
二月,......,.....
。。。
12 月

如果是的话。而且假如每年的每个月都有数据,可以用一个SQL完成:
select a1+a2+... newvalue,tt1.newmonth,tt1.year from
(select sum(value) a1,to_char(month,'yyyy') year,to_char(month,'mm') newmonth
from t1 group by to_char(month,'yyyy'),to_char(month,'mm')) tt1,
(select sum(value) a2,to_char(month,'yyyy') year,to_char(month,'mm') newmonth
from t2 group by to_char(month,'yyyy'),to_char(month,'mm')) tt2
.............. ttN
where tt1.newmonth=tt2.newmonth ...and tt(n-1).newmonth=ttn.newmonth
and tt1.year=tt2.year... and tt(n-1).year=ttn.year
order by tt1.year
注释:
N表示虚拟的表的个数.
 
用动态增加计算字段方法!
 
很多种办法,Ehlib 也可以。
 
我说的表是这样的:
这是一张单位的日报表,上面有当天的数据,也有月累计、年累计等数据
月累计是在当天的数据上进行累加的,而年累计是在月累计的数据上累加的(也可以
在当天的数据上进行累加),这些数据只限于一年,请大家看看该如何解决,谢谢!!!
 
把你要的数据通过临时表连接起来!
 
后退
顶部