用进货-销售-出货,然后汇总查询出一个库存表,这样写合适吗? 感觉这样写比较灵活一个,但是,如果累积几年的进货,销售和出货,如果这样汇总速度会不会很慢,有没有好的解决方案?
   或都还有其它方法?望大侠们提点意见,只要50分了,如果有合适的方案,分全给了

解决方案 »

  1.   

    有两个方法可以做到:
    1、用余额表,就在数据库里建立一个余额表,每次在进仓单、销售单、采购退货、销售退货、商品调仓等等单据里,每次审核后这些单据就写入余额表里;每次进行库存查询时就从余额表里取数据2、原单查询,不用建立余额表,直接查询进仓单、销售单、采购退货、销售退货、商品调仓等等单据,直接生成临时报表问题:
    一、用余额表进行查询有一个优点就是查询结果的速度很快,但有几个明显的缺点:
        1.1  软件维护很高,因为每次进仓、出仓、删除、作废时,都要直接与余额表同步,这样的话软件就要写很多防止余额表不同步的问题
        1.2  软件架构就有很局限性,不好扩展功能。比如客户提出上期未结账,本期可以审核,或者要求一些软件的扩充时,往往就要受制于余额表
        1.3  如果没有使得余额数据同步,就很容易查询统计出来的结果是错误的二、用原单查询的优点是数据不会出错,软件维护很低,而且稳定。软件功能非常容易扩展,但也有缺点:
        2.1  写查询的sql语句要求很高,要充分考虑其数据库的整体优化性能,比如索引、查询条件、如何利用游标等等问题要充分考虑好
        2.2  查询结果的速度会比较慢所以综合起来,我还认为用原单查询库存是比较好的一种方法