求助一个月物资盘点汇总报表的写法,急用,万分感激!

想要实现的功能:

从领料单和入库单中统计各大类物资从上月29号到本月28号的全部出库单金额,入库单金额,期初金额和期末金额。

出库领料单又进一步分为单位劳保领用单和个人劳保领用单两种。

使用到的几个表的结构如下:

A类代码:
类别编码 物资类别

物资库存:
物资代码 单价 数量

其中物资代码格式为AABBCCDDD,A类代码中的类别编码就是定义物资代码中的AA。

个人劳保领料单(按单位汇总):
单位id 物资代码 单价 数量 总价 出库时间

单位劳保领料单:
单位id 物资代码 单价 数量 总价 出库时间

希望生成的报表格式如下:

物资盘点汇总表
****年**月29日——****年**月28日

物资大类 期初金额 入库金额 出库金额 期末金额

合计:

不知怎么下手,求教如果要生成这样格式的报表,应该怎样实现?用数据窗口可以么?

或者哪位大人有类似的例子可以给我发一下看看。感激不尽~~
[588 byte] By [evachen210] at [2008-1-9]
# 1
入库单呢
caoyin-嘈几几 at 2007-10-19 > top of Msdn China Tech,PowerBuilder,基础类...
# 2
入库单:
物资代码 单价 数量 总价 入库时间

还有些别的项,不过在这个报表里,相关的就是这些,这样应该怎么写呢?

谢谢楼上的提醒~
evachen210 at 2007-10-19 > top of Msdn China Tech,PowerBuilder,基础类...
# 3
什么环境
sql server?
caoyin-嘈几几 at 2007-10-19 > top of Msdn China Tech,PowerBuilder,基础类...
# 4
如果是sql server的话,先建一个view
create view v_all
as

select 物资类别=left(物资代码, 2),
入库金额=入库单.总价,
出库金额=0,
发生日期=入库时间,
库存金额=0
from 入库单

union all

select 物资类别=left(物资代码, 2),
入库金额=0,
出库金额=领料单.总价,
发生日期=出库时间,
库存金额=0
from 领料单

union all

select 物资类别=left(物资代码, 2),
入库金额=0,
出库金额=0,
发生日期=null,
库存金额=库存.总价
from 库存

go
--------------------------------------------------------
然后建一个datawindow,数据源为sql select
如下:
select 物资大类 = A类代码.物资类别,
入库金额=sum(入库金额),
出库金额=sum(出库金额),
期末=sum(库存金额) - (select sum(入库金额) - sum(出库金额) from v_all v1 where 发生日期 > '??-??-28' and 物资类别=v_all.物资类别)
from v_all, A类代码
where 发生日期 between '??-??-29' and '??-??-28'
and v_all.物资类别 = A类代码.类别编码
group by A类代码.物资类别

-------------------------------------------------
最后在datawindow中增加一列计算字段"期初金额",表达式为:
期末 - (入库 - 出库)

大概就是这个方法,细节上可能处理一下
caoyin-嘈几几 at 2007-10-19 > top of Msdn China Tech,PowerBuilder,基础类...