我做的是一个药品的进销存管理软件``有进货表、出货表、库存表
如何实现这样的功能``在进货、出货时都是有时间的```这样如何实现库存表的不断变化啊?
例如:进货表: 货名XXX 数量10 进货日期 2007年1月10日
货名XXX 数量20 进货日期 2007年2月15日
货名XXX 数量30 进货日期 2007年3月18日
货名YYY 数量20 进货日期 2007年2月15日
货名ZZZ 数量20 进货日期 2007年2月15日 出货表: 货名XXX 数量5 出货日期 2007年1月18日
货名XXX 数量15 出货日期 2007年2月16日
货名XXX 数量30 出货日期 2007年3月18日
货名YYY 数量8 出货日期 2007年2月18日
货名ZZZ 数量20 出货日期 2007年2月26日
如何能实现最后的库存表结果为:
库存表: 货名XXX 数量10 进货日期 2007年3月18日
货名YYY 数量12 进货日期 2007年2月15日不晓得在vb +sql 环境中能否使用游标~~~要用的话怎么用?
如何实现这样的功能``在进货、出货时都是有时间的```这样如何实现库存表的不断变化啊?
例如:进货表: 货名XXX 数量10 进货日期 2007年1月10日
货名XXX 数量20 进货日期 2007年2月15日
货名XXX 数量30 进货日期 2007年3月18日
货名YYY 数量20 进货日期 2007年2月15日
货名ZZZ 数量20 进货日期 2007年2月15日 出货表: 货名XXX 数量5 出货日期 2007年1月18日
货名XXX 数量15 出货日期 2007年2月16日
货名XXX 数量30 出货日期 2007年3月18日
货名YYY 数量8 出货日期 2007年2月18日
货名ZZZ 数量20 出货日期 2007年2月26日
如何能实现最后的库存表结果为:
库存表: 货名XXX 数量10 进货日期 2007年3月18日
货名YYY 数量12 进货日期 2007年2月15日不晓得在vb +sql 环境中能否使用游标~~~要用的话怎么用?
select a.货名,a.入数量-b.出数量 as 数量,a.进货日期 from (select 货名,sum(数量) as 入数量,max(进货日期) as 进货日期 from 进货表) a,(select 货名,sum(数量) as 出数量 from 出货表) b where a.货名=b.货名
1.实现库存表的不断变化
可以用触发器,每当向入货表或者出货表插入记录的时候,触发触发器,然后触发器里面的代码做修改库存的操作。(触发器可以在数据库里面写)
或者是不用触发器,直接在程序里面写,当向入货表或者出货表插入记录之后,再写一句修改库存的sql语句,执行一下就行了
2.注意这个库应该有先进的货先出货的这个约定
比如某个货先进了10个,10号进的,又进了10个20号进的,在入货表就应该存这两条记录了,库存表里面也应该有这两条记录,因为这两个的日期是不一样的
然后卖了5个 出货表就应该有一条卖了5个的记录,这时候库存表应该有2条这个货的记录,日期早的变成5个,日期晚的还是10个;
然后如果又卖了10个,出货表应该加一条10个的记录,库存表应该先卖日期早的那个的5个,再买日期晚的那个的5个,这时候库存剩5个,是后进的日期的