我们编了一个软件:
冷库库存软件,外部的客户在冷库里放置自己的货品,并且付一定的费用.即冷藏费.
现在冷藏费的报表生成非常慢.
冷藏费的计算如下:
出库时间-入库时间(俺期算,10天为一期,每月1号入库跟9号入库是没有区别的)
*每期价格(其中这个价格也可能会变化,6月份是40 9月份可能只要30了)
这里还有个计量单位的问题,有些货品是按公斤计,有些是按件计的.
(入库跟出库是按 先进先出的算法.)
除了冷藏费还有装卸费,装卸费比较简单,就是按入库的时候,按照重量算出需要多少装卸费,跟时间无关.
每月的报表,要做的数据是每个客户的每一货品,每一种规格的入库,出库,冷藏费(借额,贷额,余额)装卸费(借额,贷额,余额)
现在的算法非常慢,也没有存储过程,按照行家的说法是没有将逻辑和业务分开
但是存储过程偶不是特别懂,应该将哪些部分写在存储过程里呢
这个问题这么长,看起来非常麻烦,如果有哪位高手有兴趣能够耐心的看的话,小女子感激不尽
分不够的话再加,偶一个帖子只能给100分:(

解决方案 »

  1.   

    8会的, 再复杂的公式, 也不会是很长, 很久.
    把你的所有参数存在库里, 运行时, 用SQL一次完成, 而不是每次取到程序中, 在程序中计算机来再存回库中.
      

  2.   

    把你的所有参数存在库里, 运行时, 用SQL一次完成, 而不是每次取到程序中, 在程序中计算机来再存回库中.???存到库里是什么意思呢?
      

  3.   

    根据调用的参数,取得数据表,进行计算,生成结果表。
    可以把上面的部分写到一个存储过程,在delphi中只要调用一下就可以了。
      

  4.   

    把库的结构拿出来看一下
    还有读冷藏的sql语句出库时间-入库时间(10天一期,那么就写开始时间,另外在写个字段做入库时间)
    每期价格(做个价格的参数表,取入库时间的month)