(表1):货物库存表
货物名 类别号 货物名 数量 金额
001 001 白菜 1000 2000
002 001 青菜 800 1500
003 002 猪肉 1300 7500
004 003 可乐 100 250
(表2):入货信息表
入库单号 货物号 入货数量 进货金额 入货时间
00001 001 100 200 2004-5-5
00002 001 150 300 2004-5-26
00003 002 200 380 2004-5-24
00004 003 130 750 2004-6-2
00005 004 10 25 2004-5-30
(表3):出货信息表
出库单号 货物号 出货数量 出货数量 出货时间
00001 001 50 100 2004-5-23
00002 003 13 75 2004-5-20
生成的报表内容为:
货物名 上月结余 本月购进 本月支出 上月支出 本月购进 本月结存 当前结存
…….
小计
…..
总计
其中有三个时间 由用户输入 开始时间 结束时间 当前时间
本月购进和本月支出为 开始时间到结束时间段内的进出数量总和
本月到当前的购进=结束时间到当前时间段的进货总和
本月到当前的支出=结束时间到当前时间段的出货总和
当前结存=货物库存表的数量字段
那么 本月结存=当前结存 + 本月到当前的支出 — 本月到当前的购进
上月结余=本月结存 + 本月支出 — 本月购进须用VB 的ADO和DataReport工具实现,因为我的程序其他部分都这样做。数据库是Access,
我实在做不出来,请大家一起给个方法!
如果谁能给个好的建议,女的我就以身相许,男的就结派兄弟,至于给分更不再话下
谢谢!
货物名 类别号 货物名 数量 金额
001 001 白菜 1000 2000
002 001 青菜 800 1500
003 002 猪肉 1300 7500
004 003 可乐 100 250
(表2):入货信息表
入库单号 货物号 入货数量 进货金额 入货时间
00001 001 100 200 2004-5-5
00002 001 150 300 2004-5-26
00003 002 200 380 2004-5-24
00004 003 130 750 2004-6-2
00005 004 10 25 2004-5-30
(表3):出货信息表
出库单号 货物号 出货数量 出货数量 出货时间
00001 001 50 100 2004-5-23
00002 003 13 75 2004-5-20
生成的报表内容为:
货物名 上月结余 本月购进 本月支出 上月支出 本月购进 本月结存 当前结存
…….
小计
…..
总计
其中有三个时间 由用户输入 开始时间 结束时间 当前时间
本月购进和本月支出为 开始时间到结束时间段内的进出数量总和
本月到当前的购进=结束时间到当前时间段的进货总和
本月到当前的支出=结束时间到当前时间段的出货总和
当前结存=货物库存表的数量字段
那么 本月结存=当前结存 + 本月到当前的支出 — 本月到当前的购进
上月结余=本月结存 + 本月支出 — 本月购进须用VB 的ADO和DataReport工具实现,因为我的程序其他部分都这样做。数据库是Access,
我实在做不出来,请大家一起给个方法!
如果谁能给个好的建议,女的我就以身相许,男的就结派兄弟,至于给分更不再话下
谢谢!
Dim adoRecordsetX As New ADODB.RecordsetPrivate Sub DataReport_Initialize()
'printer.Orientation =
'以下准备数据源(记录集)
'要打印的数据源(记录集)必须是一个全局级别的,或者是本设计器模块级别的记录集
'数据库使用的是 Northwind.mdb
adoConnectionX.Open "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=" & App.Path & "\Northwind.mdb"
adoRecordsetX.Open "select * from 产品", adoConnectionX
Set DataReport1.DataSource = adoRecordsetX '设置 DataReport 的数据源
'-------------------------------------------------------------------------
End SubSQL语句你自己写吧~~~~~~~~~
好象一条sql语句实现不了,我不知道怎么写。你能指点一下吗?如何把每个报表字段算出来还有我看了lndlwwh830 (笑天星) 的贴子,
http://community.csdn.net/Expert/topic/3103/3103556.xml
但是我用他的方法,调试不出来。
能不能给个完整的例子呀!!!!
例如T1,T2,T3表
select a.field1,b.field2,c.field3
from (select ... from t1,t2 where ...) as a,
(select ... from t2,t3 where ...) as b,
(select ... from t1,t3 where ...) as c
where a.field = b.field and b.field = c.field
以上是针对Oracle,对于Access应该是Left join,ineer join方式