低阶码计算系统和方法

文档序号:6598767阅读:2845来源:国知局
专利名称:低阶码计算系统和方法
技术领域
本发明涉及一种物料需求规划系统和方法,尤指一种物料需求规划系统中计算物料低阶码的系统和方法。
背景技术
生产任何一个产品都需要一份清单(list)说明它是由哪些材料构成,并依据它来计算所需的物料。传统的材料表(part list)是一份清单,它的主要功能是说明一个产品是由哪些零件或原料所构成以及用量多少,但自从物料需求计划(Material Requirement Planning;MRP)于1970年发展之后,材料清单演变成用料表(Bill of Material;BOM),其功能增加了许多,而其本身也成为一个产品结构(Product Structure)。一份用料表(BOM)不仅列出构成一个项目的所有零件,也将半成品考虑进去,由父项(parentitem)和其子项(component item)连结而成,其中每一项都有一个阶码,成品(最终项目)位于0阶,其余由1、2......阶依序往下,直至最低阶,同一项目若出现在不同产品的不同阶上,会由系统产生低阶码(Low LevelCode;LLC)。用料表中各项目的低阶码表明了该项目被用作较高阶成品或半成品部件的最低阶次。一般来说,成品(最终项目)处于最高阶次,它的低阶码为零。在用料表中阶次越低,其低阶码的数值就越大。
物料需求规划(MRP)使用用料表(BOM)、库存数据以及主生产排程(MPS)等计算物料的需求,它具有时程化的功能。时程化的MRP从MPS的项目开始展开计算,然后决定要生产这些MPS的项目所需要的原料或零件及其数量,以及这些原料或零件需要的日期。时程化的MRP是由展开用料表、调整库存和未完成订单的数量,并依照合适的前置时间对净需求作逆推(offsetting)而得。然而,企业所应用的MRP应用软件缺乏低阶码(low-level code)计算的功能,使用者自己还要计算。这样使得用料表在物料需求规划中的应用效率大为降低。因此需要一种系统和方法以辅助计算物料需求计划中所用物料的低阶码。

发明内容针对上述现有技术的不足,本发明提供一种计算低阶码的系统和方法,其可辅助计算物料需求规划所用用料表中物料的低阶码。
本发明所提供的低阶码计算系统包括有一数据库,用于存储用料表以及产品结构图;一数据读取单元,用于从数据库中读取用料表;一数据赋值单元,用于初始化用料表的低阶码字段以及给用料表中每一料号设定一低阶码;一数据判断单元,用于判断用料表中的料号是否存在于用料表中一指定字段中,以及一数据计算单元,用于计算用料表中指定料号的笔数。
本发明提供的低阶码计算方法包括如下的步骤(a)将一变量LLC之值初始化为零,并将用料表中的低阶码字段设为空;(b)读取用料表中的第一笔料号;(c)判断所读取的料号是否存在于用料表的子项字段中;(d)如果步骤(c)中判断所读取的料号不存在于用料表的子项字段中,则将该笔料号的低阶码设为零,否则读取下一笔料号并返回步骤(c);(e)判断是否用料表中所有料号均已读取完毕;(f)如果步骤(e)中判断所有料号已读取完毕,则将变量LLC加1,并读取用料表中的第一笔料号;(g)判断该笔料号的低阶码字段是否为空;(h)如果该笔料号的低阶码字段为空,计算用料表中子项料号为该料号且父项的低阶码为该变量减1的笔数,反之则读取下一笔料号并返回步骤(g);(i)如果步骤(h)中所计算的笔数不为零,则计算用料表中子项料号为该料号且父项的低阶码为该变量的笔数,否则读取下一笔料号并返回步骤(g);(j)如果步骤(i)中所计算的用料表中子项料号为该料号且父项的低阶码为该变量的笔数为零,则将该笔料号的低阶码设定为该变量之值,否则读取下一笔料号并返回步骤(g);(k)如果该次循环中用料表中所有料号均已读取完毕,则检查用料表中所有料号是否均已设定低阶码;(l)如果用料表中还有其它料号没有设定低阶码,则返回步骤(f)以进行下一循环的计算,否则整个计算流程结束。
采用本发明所述的低阶码计算系统和方法,可借助计算机自动计算用料表中各项目的低阶码,提高了物料需求规划应用的效率。

图1是本发明一产品结构图的低阶码排列示意图。
图2是本发明一用料表的示意图。
图3是本发明低阶码计算系统的软件构成图。
图4是本发明低阶码计算方法的作业流程图。
图5是图4中所示低阶码计算方法作业流程图的续图。
具体实施方式图1所示为一种产品结构图的低阶码排列图。一产品结构图可被视为是一种树状结构。在树的顶端是成品(最终项目),其低阶码为零。如图1中所示之A、K即为成品,相应的其低阶码亦为零(括号中所示)。所有的子项的低阶码数值均大于成品(最终项目)的低阶码数值。如产品A的结构图中B和C的低阶码分别为1和2。对于被重复使用的子项,如产品A的结构图中所示的C、X、Y和Z等项目,其在产品结构图中所用到的最大阶次的数值即被设定为该项目之低阶码。亦即,低阶码表示一被重复应用的子项在整个产品结构图中被使用的最低阶次。
图2所示为本发明中所用的一种用料表200的示意图,其基于图1中A的产品结构图所列。在该用料表中,共表示出了如下四项字段父项料号201、子项料号203、单位用量205以及低阶码207。其中,子项料号203表示父项料号201字段中所示父项由哪些子项所构成,单位用量205表示构成一个单位的该父项所需子项的数量,低阶码字段207中所示为对应字段中父项的低阶码。
图3所示为本发明低阶码计算系统的软件构成图。在本实施方式中,本发明低阶码计算系统包括有一数据库301、一数据读取单元303、一数据赋值单元305、一数据判断单元307以及一数据计算单元309。数据库301内主要存储有物料需求规划所需物料的用料表或产品结构表。数据读取单元303用于从数据库301内获取用料表或产品结构表,从而读取用料表或产品结构表中物料(项目)的料号。数据赋值单元3 05用于初始化用料表的低阶码字段以及给用料表中的每一料号设定一低阶码。数据判断单元307用于判断用料表中的料号是否存在于用料表中一指定字段中。数据计算单元309用于计算用料表中指定料号的笔数。
图4所示为本发明低阶码计算方法的作业流程图。在该作业流程中,先确定产品结构图中最终项目的低阶码,然后再确定其它子项项目的低阶码。在步骤S401,数据赋值单元305首先将一变量LLC之值初始化为0。该变量LLC用来在后面的流程中作为循环值,以确定在每一循环中所确定项目的低阶码值。在步骤S403,数据赋值单元305将用料表中的低阶码字段设置为空,以利后续的作业流程。在步骤S405,数据读取单元303读取用料表中的第一笔料号。如读取用料表200的父项料号字段中的第一笔料号A。在步骤S407,数据判断单元307判断该料号是否存在于用料表的子项料号字段中。如该料号存在于用料表的子项料号字段中,则转至步骤S409读取下一笔料号以继续进行判断。如当读取到料号B时,由于料号B在子项料号字段内存在,则跳过该笔料号读取下一笔料号。该笔料号B的低阶码字段仍然为空白。反之,如果在用料表的子项料号字段中没有该料号,则在步骤S411,数据赋值单元305将该笔料号的低阶码设置为变量LLC的初始值“0”。如在用料表200的子项料号字段中没有上述所读取的料号A,则该笔料号A的低阶码被设为0,亦即该笔料号A为最终项目(成品)。在步骤S413,数据判断单元判断是否用料表中的所有料号均已读取完毕。如果还未读取完毕,则转至步骤S409读取下一笔料号以继续进行判断。
图5是图4所示低阶码计算方法作业流程图的续图。在图4所示步骤S413,如果数据判断单元判断用料表中的所有料号已读取完毕,则转至图5所示步骤S415。在步骤S415,数据计算单元309将变量LLC之值加1,亦即此时变量LLC之值变为了1。在步骤S417,数据读取单元303读取用料表中的第一笔料号,亦即料号A。在步骤S419,数据判断单元307判断该笔料号的低阶码字段是否为空。如果不为空,说明该笔料号已设定低阶码,则转至步骤S421读取下一笔料号以进行判断。由于料号A在前述流程中已设定低阶码,所以在此流程中会循环读取直至读取到料号B,料号B的低阶码字段此时仍然为空。当所读取料号的低阶码字段为空时,在步骤S423,数据计算单元309计算用料表中子项料号为该料号且父项的低阶码为变量LLC之值减1的笔数,亦即在此循环中子项料号为该料号且父项之低阶码为0的笔数。在步骤S425,数据判断单元307确定该笔数是否为零。如果为零,则转至步骤S421读取下一笔料号以进行判断。反之,如果不为零,在步骤S427,数据计算单元309计算用料表中子项料号为该料号且父项的低阶码为变量LLC之值的笔数。在用料表200中,B为A之子项,且A之低阶码为零,即变量LLC减1之值。此时需由数据计算单元309计算用料表中子项料号为B且父项的低阶码为变量LLC之值,亦即低阶码为1的笔数。
在步骤S429,数据判断单元307确定用料表中子项料号为所读取料号且父项的低阶码为变量LLC之值的笔数,在此循环中亦即子项料号为B且父项的低阶码为1的笔数是否为零。如果不为零,则转至步骤S421读取下一笔料号以进行判断。反之,如果为零,在步骤S431,数据赋值单元305将所读取料号的低阶码设定为变量LLC之值,在此循环中亦即将料号B的低阶码设定为1。
在步骤S433,数据判断单元307判断此循环中是否所有的料号均已读取完毕。如果该次循环中用料表中的料号还未读取完毕,则转至步骤S421读取下一笔料号以进行判断。如果该次循环中用料表中所有的料号均已读取完毕,在步骤S435,数据判断单元307判断是否用料表中的所有料号均已设定低阶码。如果还有料号没有设定低阶码,则转至步骤S415,将变量LLC再加1,并进行下一循环的计算。如果用料表中的所有料号均已设定低阶码,则整个计算流程结束。
权利要求
1.一种低阶码计算系统,用于辅助计算用料表中所包含项目的低阶码,其特征在于包括一数据库,用于存储用料表以及产品结构图;一数据读取单元,用于从数据库中读取用料表;一数据赋值单元,用于初始化用料表中的低阶码字段以及给用料表中每一料号设定一低阶码;一数据判断单元,用于判断用料表中的料号是否存在于用料表中一指定字段中。
2.如权利要求1所述的低阶码计算系统,其特征在于还包括有一数据计算单元,用于计算用料表中指定料号的笔数。
3.如权利要求2所述的低阶码计算系统,其特征在于数据判断单元还用于判断所计算的笔数与一指定值的大小。
4.如权利要求1所述的低阶码计算系统,其特征在于数据赋值单元在进行低阶码计算前将用料表的低阶码字段设置为空。
5.如权利要求4所述的低阶码计算系统,其特征在于数据赋值单元在进行低阶码计算前还将一变量值初始化为0。
6.如权利要求4所述之低阶码计算系统,其特征在于数据判断单元还用于判断用料表中料号的低阶码字段是否为空。
7.一种低阶码计算方法,用于辅助计算用料表中所包含项目的低阶码,其特征在于包括有如下步骤(a)将一变量LLC初始化为零,并将用料表中的低阶码字段设置为空;(b)读取用料表中的第一笔料号;(c)判断所读取的料号是否存在于用料表的子项字段中;(d)如果步骤(c)中判断所读取的料号不存在于用料表的子项字段中,则将该笔料号的低阶码设为零;(e)判断是否用料表中所有料号已读取完毕;(f)如果步骤(e)中判断所有料号已读取完毕,则确定其它项目的低阶码。
8.如权利要求7所述的低阶码计算方法,其特征在于步骤(d)更包括有当判断所读取的料号存在于用料表的子项字段中时,读取下一笔料号并返回步骤(c)的步骤。
9.如权利要求7所述的低阶码计算方法,其特征在于步骤(f)更包括有当判断用料表中料号还未读取完毕时,读取下一笔料号并返回步骤(c)的步骤。
10.如权利要求7所述的低阶码计算方法,其特征在于步骤(f)更包括有如下步骤(f1)将变量LLC加1;(f2)读取用料表中的第一笔料号;(f3)判断该笔料号的低阶码字段是否为空;(f4)如果该笔料号的低阶码字段为空,计算用料表中子项料号为该料号且父项的低阶码为该变量减1的笔数;(f5)如果步骤(f4)中所计算的笔数不为零,则计算用料表中子项料号为该料号且父项的低阶码为该变量的笔数,否则读取下一笔料号并返回步骤(f3);(f6)如果步骤(f5)中所计算的用料表中子项料号为该料号且父项的低阶码为该变量的笔数为零,则将该笔料号的低阶码设定为该变量之值,否则读取下一笔料号并返回步骤(f3);(f7)如果该次循环中用料表中所有料号均已读取完毕,则检查是否用料表中所有料号均已设定低阶码;(f8)如果用料表中所有料号均已设定低阶码,则整个流程结束。
11.如权利要求10所述之低阶码计算方法,其特征在于步骤(f8)更包括有如下步骤如果用料表中还有其它料号没有设定低阶码,则返回步骤(f1)以进行下一循环的计算。
全文摘要
本发明提供有一种低阶码计算系统和方法,该系统包括有一数据库,用于存储用料表以及产品结构图;一数据读取单元,用于从数据库中读取用料表;一数据赋值单元,用于初始化用料表的低阶码字段以及给用料表中每一料号设定一低阶码;一数据判断单元,用于判断用料表中的料号是否存在于用料表中一指定字段中,以及一数据计算单元,用于计算用料表中指定料号的笔数。采用本发明低阶码计算系统和方法,可通过计算机设定用料表中各项目的低阶码,提高物料需求规划的效率。
文档编号G06F17/00GK1508716SQ0214965
公开日2004年6月30日 申请日期2002年12月14日 优先权日2002年12月14日
发明者魏鸿珊 申请人:鸿富锦精密工业(深圳)有限公司, 鸿海精密工业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1