仓酷云

标题: ERP体系中库存表的表布局创立剖析 [打印本页]

作者: 再现理想    时间: 2015-1-16 14:07
标题: ERP体系中库存表的表布局创立剖析
刚安装好的MySql包含一个含空密码的root帐户和一个匿名帐户,这是很大的安全隐患,对于一些重要的应用我们应将安全性尽可能提高,在这里应把匿名帐户删除、root帐户设置密码在erp体系中,一个完全的库存信息应当能供应给用户甚么样的信息呢?我想一共有以下几点:
1,检察以后立即库存的库存信息,包含每一个堆栈每种物料的数目分离是几(固然有大概物料另有区分形态批号等)。
2,每种物料在每一个堆栈中如今被预用了几,另有几可用(预用就是锁库,预用的部分是不克不及被新的票据所援用)。
3,可以疾速的查询到每种物料的每一个时段的库存数目,也就是汗青库存
4,每种物料的收支情形,就是该物料是甚么时分进库的,进库的源单与数目是几。甚么时分出库的,出库的源单与数目又是几?
5,假如物料被预用了,那末该物料又是被那些票据预用了呢?

针对下面五个成绩,我共创立了三个表来完成它们。
1,库存信息表
2,库存收支明细表
3,库存预用明细表

一,库存信息表
库存信息表包括以下字段:
字段名功效申明仓位物料库存数目预用数目可用数目该字段能够为盘算字段,它的值=库存数目-预用数目这个表中存储的是每一个物料在每一个堆栈以后的库存信息,有了它,我们就能够完成下面成绩1和2功效了。

为何必要"可用数目"这个字段呢?由于库存信息表一样平常信息量是很年夜的,我们能够冗余该字段,以在读取库存可用数目时加速数据的读取工夫。

二,库存收支明细表
库存收支明细表包括以下字段:
字段名功效申明仓位物料收支标识1代表进库,-1代表出库肇端数目该数目为以后收支明细表操纵库存前的库存数目,它能够用来盘算滚存数目收支数目滚存数目该字段能够为盘算字段,它的值=肇端数目+收支标识*收支数目收支源单号收支工夫这个表中存储的是每一个物料在堆栈中的收支明细,有了这个表,我们就能够完成下面成绩3与4的功效了。

为何必要"滚存数目"这个字段呢?由于有了这个字段,再加上"收支工夫"这个字段的信息,我们就能够疾速的查询出汗青的库存信息了。好比,我要晓得汗青工夫2012-1-10,物料"A"在堆栈"AC"中的库存数目,我们就能够在该表中检索工夫<="2012-1-10"and物料="A"and堆栈="AC"中最初一笔数据的滚存数目就是了。

三,库存预用明细表
库存预用明细表包括以下字段
字段名功效申明仓位物料收支数目收支源单号收支工夫这个表存储的是每一个物料在堆栈中被预用的票据明细,有了这个表,我们能够完成下面成绩5的功效。

那末,这些表有甚么的划定规矩与接洽呢?
起首,我们要把持到体系中一切表单都不克不及间接操纵"库存信息表",由于该表的值应当是由"库存收支明细表"与"库存预用明细表"中的了局反应来的。

好比:
1,当"库存收支明细表"中新增一笔数据时,我们就要判别新增的这笔数据的"物料+堆栈"信息有无在"库存信息表"存在了,假如已存在,就依据收支标识来增添或削减"库存信息表"中对应物料信息的库存数目,假如没有存在,就在"库存信息表"中新增一笔对应的数据。

2,当"库存预用明细表"中新增一笔数据的时分,我们就依据"库存预用明细表"中"物料+堆栈"的信息来增添"库存信息表"中预用数目字段的值。当"库存预用明细表"中的数据被删除时(也能够在该表中增添一个字段来识标完成时),依据"库存预用明细表"中"物料+堆栈"的信息来削减"库存信息表"中预用数目字段的值。

那末,甚么时分往"库存收支明细表"中增添数据,甚么时分往"库存预用明细表"增添数据呢?当有必要操纵库存信息表的票据在新增时,往"库存预用明细表"中增添数据,当有必要操纵库存信息表的票据在考核时,往"库存收支明细表"中增添数据,同时更新"库存预用明细表"中数据。


好了,以上只是自己对erp体系中库存表布局的团体意见,仅供参考。mysql的原来开发者又开发了MariaDB,MariaDB适合用来替代mysql吗
作者: 若相依    时间: 2015-1-18 12:01
呵呵,这就是偶想说的
作者: 分手快乐    时间: 2015-1-25 10:57
这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。
作者: admin    时间: 2015-2-2 21:54
SQL语言是学习所有数据库产品的基础,无论你是做数据库管理还是做数据库开发都是这样。不过具体学习的侧重点要看你将来做哪一块,如果是做数据库管理(DBA),侧重点应该放在SQLServer的系统管理上.
作者: 变相怪杰    时间: 2015-2-8 08:09
代替了原来VB式的错误判断。比Oracle高级不少。
作者: 兰色精灵    时间: 2015-2-25 04:45
如果是将来做数据库的开发设计,就应该详细学习T-SQL的各种细节,包括T-SQL的程序设计、存储过程、触发器以及具体使用某个开发语言来访问数据库。
作者: 第二个灵魂    时间: 2015-3-7 17:33
不过话说回来了,绝大多数的性能优化准则与对sqlserver存储的结构理解息息相关
作者: 因胸联盟    时间: 2015-3-15 10:42
现在是在考虑:如果写到服务器端,我一下搞他个10个存储过程导过去,那久之服务器不就成垃圾箱了吗?即便优化了我的中间层.




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2