- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
BOM表遍历
一种基于存储过程的BOM遍历算法
檀 明,袁 ,钟伯成,胡学友,吴晓琴
(合肥学院计算机科学技术系,合肥 230601)
摘 要: BOM是ERP系统中的基础数据,其数据结构的确定与操作算法的设计直接影响到ERP系统的效率. 通
过对BOM概念的分析,提出一种基于存储过程的BOM的遍历算法,同时介绍了将遍历算法与Dephi6. 0的树形
控件相结合,实现从数据库中提取产品数据,直观地显示BOM的层次关系的方法.
关键词: BOM;存储过程; ERP
中图分类号: TH166 文献标识码:A 文章编号: 1673 - 162X (2007) 01 - 0040 - 06
BOM (物料清单)是产品结构的技术性描述文件,表明了生产某个父零件所需的所有子部件、中间件、
零件、原材料的列表,它显示了组成这个父零件所需子件的数量. BOM实质是产品结构关系的反映,并将
所涉及的技术信息进行关联和整合. 由于BOM处于ERP (企业资源计划)系统中的关键地位,BOM的数据
结构和相关的算法构成了整个ERP系统中数据模型的核心, BOM设计的好坏直接影响ERP系统的实施
和运行的效率. 为了优化ERP系统的性能,提高系统运行的效率,从数据结构的角度研究BOM的构造方
法与遍历算法,对ERP系统的设计与开发有着重要的实际意义. [ 1 ]76
1 BOM 的数据结构设计
由于实际产品的结构应该是网状结构,网状结构的产生源于父部件与子部件之间的关系,并非一对多
或多对一,而是多对多,也即父部件通常由许多子部件装配而成,而许多通用子部件又被用在多种产品或
父部件的装配中. 网状数据结构在当今主流的关系数据库中通常难以实现, BOM中的数据在关系数据库
中只能以二维的形式表示,因此二维数据在数据库中如何表示也就成了BOM构造的关键. 常见的BOM主
要有多层BOM和单层BOM. [ 1 ]79
1. 1 多层BOM 多层BOM采用“单父—多子”的数据结构,要求详细地记录了产品的结构信息,即便是
同样的零部件结构,只要存在于不同的产品中,也要多次详尽地记录. 例如,产品A的结构如图1所示,其
多层BOM数据表如表1.
多层BOM结构的优点是: (1)产品间结构不互相影响,各个产品之间的数据记录没有交叉,因而维护
比较方便; (2)多层BOM结构再分解时算法比较简单,只要根据产品的编码查询出最底层子件(即需要制
造和采购的零部件)的编码和数目即可,效率比较高.
但多层BOM结构也存在很多缺点: (1)数据冗余量大,零部件结构的重复定义,也增加了系统启动时
录入基础数据的工作量. (2)虽然定义了子件的层次关系,但是它属于哪一个父层并没有记录,因此,并不
收稿日期: 2006 - 11 - 01 修回日期: 2007 - 01 - 04
作者简介:檀 明(1974—) ,男,安徽望江人,合肥学院计算机科学技术系讲师,硕士;研究方向:多媒体、数据库技术、嵌入式系统.
合肥学院学报(自然科学版) Journal of HefeiUniversity(Natural Sciences)
2007年2月 第17卷第1期 Feb. 2007 Vol. 17 No. 1
能反查出某零部件的上一层父件,而只能查出它属于哪个产品,无法清晰地显示产品的树型结构. (3)结
构不灵活,缺乏扩展性. 比如,当某个产品下的一个零部件要作为产品销售时,需要重新录入该零部件.
(4)BOM结构设计必须按由部件到小部件再到零件的由大到小的顺序进行.
1. 2 单层BOM 单层BOM结构采用“单父—单子”的数据结构,即BOM表中相同的零部件装配关系只
记录一次. BOM以“父件号+件号”为联合主关键字. 同样以图1所示的产品A为例,其单层BOM在数据
库中的存储形式,如表2所示. [ 2, 3 ]
表2 产品A单层BOM数据表
记录号父件号件号用量数
1 A B 1
2 A C 1
3 A D 3
4 B C 1
5 B D 2
6 C E 4
7 C F 2
单层BOM结构对于每种层次结构只定义一次,可以大大节省存储空
间,另外在产品的设计阶段,由于零部件结构和一些相关属性需经常改
动,为便于BOM的生成和管理,应采用单层BOM结构. 笔者综合以上
BOM两种结构模型特点,提出了基于单层BOM结构的改进的BOM结构
模型,如表3所示.
表3 BOM数据表结构
序号字段名字段类型宽度小数显示名称主键字段说明
1 Feed_no Varchar 15 料号Y Key 1
2 Ffeed_no Varchar 15 父料号Y Key 2
3 Sp read_tag Varchar 1 展开标记1:展开; 0:无展开
4 Us
文档评论(0)