您的位置:程序门 -> vb -> 基础类



如何实现库存?


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


如何实现库存?[已结贴,结贴人:mtshlj1002]
发表于:2007-03-22 23:38:39 楼主
我做的是一个药品的进销存管理软件``有进货表、出货表、库存表
如何实现这样的功能``在进货、出货时都是有时间的```这样如何实现库存表的不断变化啊?
例如:进货表:   货名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   环境中能否使用游标~~~要用的话怎么用?
发表于:2007-03-23 08:19:091楼 得分:5
一个sql   就搞定了
发表于:2007-03-23 08:26:582楼 得分:7
---try
select   a.货名,a.入数量-b.出数量   as   数量,a.进货日期   from   (select   货名,sum(数量)   as   入数量,max(进货日期)   as     进货日期   from   进货表)   a,(select   货名,sum(数量)   as   出数量   from   出货表)     b   where   a.货名=b.货名
发表于:2007-03-23 08:36:293楼 得分:0
select   a.货名,a.入数量-b.出数量   as   数量,a.进货日期   from   (select   货名,sum(数量)   as   入数量,max(进货日期)   as     进货日期   from   进货表   group   by   货名)   a,(select   货名,sum(数量)   as   出数量   from   出货表   group   by   货名)     b   where   a.货名=b.货名
发表于:2007-03-26 17:25:224楼 得分:0
谢谢````回家我试了看~~~~
发表于:2007-03-27 14:03:045楼 得分:8
我有两条要说的:
1.实现库存表的不断变化
    可以用触发器,每当向入货表或者出货表插入记录的时候,触发触发器,然后触发器里面的代码做修改库存的操作。(触发器可以在数据库里面写)
    或者是不用触发器,直接在程序里面写,当向入货表或者出货表插入记录之后,再写一句修改库存的sql语句,执行一下就行了
2.注意这个库应该有先进的货先出货的这个约定
    比如某个货先进了10个,10号进的,又进了10个20号进的,在入货表就应该存这两条记录了,库存表里面也应该有这两条记录,因为这两个的日期是不一样的
    然后卖了5个   出货表就应该有一条卖了5个的记录,这时候库存表应该有2条这个货的记录,日期早的变成5个,日期晚的还是10个;
    然后如果又卖了10个,出货表应该加一条10个的记录,库存表应该先卖日期早的那个的5个,再买日期晚的那个的5个,这时候库存剩5个,是后进的日期的
发表于:2007-03-27 14:32:286楼 得分:0
结贴,点管理-----给分


快速检索

最新资讯
热门点击