一种基于存储过程的BOM遍历算法

本文档下载自文库下载网,内容可能不完整,您可以点击以下网址继续阅读或下载:http://www.wenkuxiazai.com/doc/f1d73c1fc5da50e2524d7f87.html一种基于存储过程的BOM遍历算法一种基于存储过程的BOM遍历算法JournalofHefeiUniversity(NaturalSciences)2007年2月第17卷第1期Feb.2007Vol.17No.1合肥学院学报(自然科学版)一种基于存储过程的BOM遍历算法檀明,袁,钟伯成,胡学友,吴晓琴(合肥学院计算机科学技术系,合肥230601)摘要:BOM是ERP系统中的基础数据,其数据结构的确定与操作算法的设计直接影响到ERP系统的效率.通过对BOM概念的分析,提出一种基于存储过程的BOM的遍历算法,同时介绍了将遍历算法与Dephi6.0的树形控件相结合,实现从数据库中提取产品数据,直观地显示BOM的层次关系的方法.关键词:BOM;存储过程;ERP中图分类号:TH166文献标识码:A:-(-0040-06BOM(物料清单),、中间件、零件、.BOM实质是产品结构关系的反映,并将.由于BOM处于ERP(企业资源计划)系统中的关键地位,BOM的数据ERP系统中数据模型的核心,BOM设计的好坏直接影响ERP系统的实施和运行的效率.为了优化ERP系统的性能,提高系统运行的效率,从数据结构的角度研究BOM的构造方法与遍历算法,对ERP系统的设计与开发有着重要的实际意义.[1]761BOM的数据结构设计由于实际产品的结构应该是网状结构,网状结构的产生源于父部件与子部件之间的关系,并非一对多或多对一,而是多对多,也即父部件通常由许多子部件装配而成,而许多通用子部件又被用在多种产品或父部件的装配中.网状数据结构在当今主流的关系数据库中通常难以实现,BOM中的数据在关系数据库中只能以二维的形式表示,因此二维数据在数据库中如何表示也就成了BOM构造的关键.常见的BOM主[1]79要有多层BOM和单层BOM.1.1多层BOM多层BOM采用“单父—多子”的数据结构,要求详细地记录了产品的结构信息,即便是同样的零http://www.wenkuxiazai.com/doc/f1d73c1fc5da50e2524d7f87.html部件结构,只要存在于不同的产品中,也要多次详尽地记录.例如,产品A的结构如图1所示,其多层BOM数据表如表1.多层BOM结构的优点是:(1)产品间结构不互相影响,各个产品之间的数据记录没有交叉,因而维护比较方便;(2)多层BOM结构再分解时算法比较简单,只要根据产品的编码查询出最底层子件(即需要制造和采购的零部件)的编码和数目即可,效率比较高.但多层BOM结构也存在很多缺点:(1)数据冗余量大,零部件结构的重复定义,也增加了系统启动时录入基础数据的工作量.(2)虽然定义了子件的层次关系,但是它属于哪一个父层并没有记录,因此,并不收稿日期:2006-11-01修回日期:2007-01-04作者简介:檀明(1974—),男,安徽望江人,合肥学院计算机科学技术系讲师,硕士;研究方向多媒体、数据库技术、嵌入式系统.第1期檀明,等:一种基于存储过程的BOM遍历算法41能反查出某零部件的上一层父件,而只能查出它属于哪个产品,无法清晰地显示产品的树型结构.(3)结构不灵活,缺乏扩展性.比如,当某个产品下的一个零部件要作为产品销售时,需要重新录入该零部件.(4)BOM结构设计必须按由部件到小部件再到零件的由大到小的顺序进行.1.2单层BOM单层BOM结构采用“单父—单子”的数据结构,即BOM表中相同的零部件装配关系只记录一次.BOM以“父件号件号”为联合主关键字.同样以图1所示的产品A为例,其单层BOM在数据[2,3]库中的存储形式,如表2所示.表2产品A单层BOM数据表单层BOM结构对于每种层次结构只定义一次,可以大大节省存储空记录号父件号件号用量数间,另外在产品的设计阶段,由于零部件结构和一些相关属性需经常改1AB1动,为便于BOM的生成和管理,应采用单层BOM结构.笔者综合以上23456AABBCCDCDE13124BOM两种结构模型特点,BOM结构模型,如表3所示.表3BOM数据表结构://www.wenkuxiazai.com/doc/f1d73c1fc5da50e2524d7f87.htmlr序号字段名1Feed_no23456789101112131415161718192021222324Ffeed_noSpread_tagUse_potEditionMap_noUnitUnit_useMemoDos_countEffect_dateInvalid_dateHarmCost_ratioOver_controlBring_makeRoot_noDoc_unitProc_modeCheck_fomuLengthWidthHighTypeVarcharVarcharVarcharVarcharVarcharVarcharNumericVarcharNumericDatetimeDatetime...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

文秘专家
机构认证
内容提供者

1

确认删除?