以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 即时库存数据如何高效处理 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=47321) |
-- 作者:supwork -- 发布时间:2014/3/8 8:53:00 -- 即时库存数据如何高效处理 要获得即时库存数据,可供选择的方案有:
方案一、取所有即时有效入库数量-所有即时有效了库数量。(该方案所得结果随时随地绝对准确)
方案二、即期初库存余额+本期所有即时有效入库数量-本期所有即时有效了库数量。(该方案关键要每月末结存,但结存后如果要改前期数据有点麻烦,需取消后面每月结存状态,然后修正数据,再结存每月数据)
方案三、建立即时库存数据表,当有出入时动态改变库存表数据。(但本方案好像风险最大,如果事务回滚处理不好,就有可能出现库存表显示数据不对之可能,另多人操作可能也有风险)
不同的方案均有各自的优缺点,但综合考虑安全怀性(库存数据报告必须随时随地100%准确),及计算机算是效率,客户端运行速度,那么大家在狐表中的最佳或常用方案是哪一个?
另一个问题是: 确定了大方案之后具体处理方案有两种:
处理方案A:依赖SQL数据库系统之视图进行所有数据处理,狐表开发程序只取符合条件之结果。(该项方案应该比较消耗服务器资源,但也正是数据库服务器的长处。开发程序过程中不需要代码统计数据,直接引用即可)
处理方案B:不用SQL数据库系统之视图。每次需要结果时,用狐表提供统计工具,直接后台统计,因为狐表对数据统计处理专门做了优化。但我想这个后台处理SQL数据库的查询代码,最终应该还是交给了数据库服务器来处理(从这方面来讲,是否没有降低数据库服务器处理负担)。
以上理解正确如否,该如何选择方案一,方案二,方案三?及方案A,方案B?希望大家展开讨论。 |
-- 作者:狐狸爸爸 -- 发布时间:2014/3/8 9:14:00 -- 方案一和方案二选一个,数据量大用方案二比较好。 如果公司觉得月结没有必要,你可以改月结为季度结,或者年结。 如果修改已结数据的概率较高,那么建议当前数据库保存两期甚至三期数据,以季度结为例,三季度开始的时候,结存一季度的数据,四季度开始的时候结存二季度的数据,保留多期数据可以避免烦恼。 [此贴子已经被作者于2014-3-8 9:25:00编辑过]
|
-- 作者:xiaoohoo -- 发布时间:2014/3/8 9:14:00 -- 我认为大型软件一般三个方法都用: 表: 期初表(月底你可以选择结存方案1,也可以不结存方案2。) 现存量表 单据表 ’---- 保存单据时,取现存量数据,并更改现存量。 增加一个整理过程,根据方案1+方案2修正现存量。 以上是本人个人思路。 |
-- 作者:lsy -- 发布时间:2014/3/8 9:52:00 -- 方案二、即期初库存余额+本期所有即时有效入库数量-本期所有即时有效出库数量。 这个方案最实用,但应该不允许更改以前的数据。 如果前期数据有错,可在以后的盘存中修正:盘盈或盘亏。 [此贴子已经被作者于2014-3-8 9:53:07编辑过]
|
-- 作者:jodiesiu -- 发布时间:2014/4/20 3:21:00 -- 菜鸟弱弱的问一句为何搜索得到的主题看不到回复~~~ 去栏目里直接打开的就能看到~~~
|
-- 作者:jspta -- 发布时间:2014/4/20 7:09:00 -- 一和二,结合,一用于时时计算,二用于记录保存验证,如果,每月都有几万行数据,可以考虑半年或一年备份一次。具体看你的读取效率而定,mssql几十万行应该不在话下没有太大压力。 |
-- 作者:逛逛 -- 发布时间:2014/4/20 10:50:00 -- 这个问题怎么说呢?
及时库存是一个最常用的数据,如果每次都靠查询的话,服务器的压力会很大。
所以,你的服务器还可以的话,数据量也不很大的情况下,用一二结合会好一点。
否则的话,还是用三比较好。但最好还是用触发器来实现。 |
-- 作者:hanxuntx -- 发布时间:2014/4/20 11:06:00 -- 昭乎哉问也。 |