Office中国论坛/Access中国论坛

标题: 说说自己的BOM,请大家提提意见. [打印本页]

作者: Roadbeg    时间: 2003-2-22 06:41
我的 bom 由两个表组成.
第一个 储存一些关键信息(通常是一个BOM的表头)

包括以下字段:
单号 用以唯一的标识一个BOM(系统内部使用此名称作标识)
机种 BOM 的名称,唯一索引(使用人员利用此机种名称方便记忆)
客户 此BOM是发球那一个客户的(描述性信息)
版本 版本号
日期 (产生此BOM的日期)
修改日期(最后一次修改的日期)
确认日期(确认此BOM的日期)
备注
用户 建立此BOM的操作员.

以下是四个布尔型字段:
确认,作废,计算,结案 记录一些系统必须的信息.
作者: Roadbeg    时间: 2003-2-22 06:47
第二个表 储存 bom 的明细

包括以下字段:
关联: 对应于 表并头的单号字段
序号:
料号: 零件代码
用量: 零件数量
损耗: 允许损耗范围
位置: 零件使用描述
备注:
组,优先级,扩展 三个字段描述了零件代用及实现多阶 bom 的信息.

其中:关联及料号 为组合索引.

作者: Roadbeg    时间: 2003-2-22 06:49
我看这两天 access-cn 的帖子一天比一天少,所以把自己的东西拿来请大家指教.
也希望access-cn 能热闹一些!!!
作者: Roadbeg    时间: 2003-2-22 06:58
bom 编辑器的功能:
手动产生: 以手动方式生成新bom
复制: 从已有BOM 中复制数据到指定BOM或新BOM 中
....
导出: 将指定bom 导出为其它格式的文件(如 html,excel等等)
改名: 将现有BOM 改名(因BOM 的名字牵涉太广,故必须单独写一段代码以保证改名的正确性)
验证: 通常指定的规则,检查BOM 中的错误.
恢复: 恢复当前BOM到编辑前状态(可以是多条记录恢复)
确认,取消确认 确认(取消确认)当前BOM ,BOM 只有在确认之后才生效.
作废,取消作废 作废(取消作废)当前BOM

作者: eio    时间: 2003-2-22 07:06
就界面而言,难看;BOM是材料管理吧,为何是客户的?
作者: majian77    时间: 2003-2-22 16:10
我觉的还没错!继续努力呀!
作者: Roadbeg    时间: 2003-2-22 16:39
公司为代料加工类型,故 bom 对应于客户.但该字段只是描述性文字,既它不具有实际意义.
作者: Roadbeg    时间: 2003-2-22 16:45
该 bom 已实现的主要功能:

1.理论上支持无限阶.
2.当某种材料不足时,能自动根据现有库存计算最佳代用.并能处理诸如:
2个 A 相当于 1个B 之类的代用.
3.能自动处理虚拟件(所谓虚拟件,即非物理的零件,比如:加工费用,工时等)

作者: Roadbeg    时间: 2003-2-22 16:47
当然,我一向不会做界面.
所以,我的编辑器一向都是只讲求功能
这与本人没有美感有很大的关系!!!
作者: zhengjialon    时间: 2003-2-22 17:02
另存慢慢看,一直对BOM什么的早有耳闻,具体案例倒没见过,这下Roadbeg帮了忙啦,谢谢,不过你不怕你公司告你泄露公司机密?:)
作者: Roadbeg    时间: 2003-2-22 17:08
这完全是我自己设计的,并且也没提到什么机密内容.
作者: Roadbeg    时间: 2003-2-22 17:48
标题: 说说自己的BOM,请大家提提意见.
先请看看 bom编辑窗体

[此贴子已经被作者于2003-2-22 9:48:29编辑过]


作者: 竹笛    时间: 2003-2-22 21:53
我看很不错,由于没有具体分析和对业务不熟悉,我提不出什么意见。
作者: 竹笛    时间: 2003-2-23 09:44
帮你抄了一篇goodidea转的,看看:
[转]BOM的构造方法

BOM的构造方法

物料清单BOM是运行MRP三个基本输入信息之一,根据产品的特性进行不同的构造可以减少基础数据准备实施工作量,提高物料分解算法的速度。本文详细分析几中BOM的构造方法,以供同行参考。

一、常规方法

在传统的MRP软件中,BOM是采用网状的结构存储数据的,因此可能出现一个父项编号下面有很多个子项编号,一个子项编号同时属于不同的父项编号的情况。其数据结构为:父项编号,子项编号,结构数量,低层码。软件可以通过项目缩进的方式表示物料间的层次关系。

优点:1)适应性好,存储数据量小。

2)便于进行物料分解和材料汇总。

缺点:1)需编制大量程序实现直观显示产品构成。

2)不便于进行反查零件适合产品的情况。

二、树型结构方法

在MRP软件中,特别是在WINDOWS平台下的MRP软件,一般BOM采用树型结构进行构造,其数据结构为:Treekey,Parent,物资编码,结构数量,分解标志。其中Treekey标识节点号,Parent标识父节点号。

优点:1)利用WINDOWS平台的TreeView控件可以实现节点的添、删、复制等操作。

2)界面构造美观、直观易懂,用户操作简单。

3)适应单件小批量生产方式下产品BOM的构造。

缺点:1)对于多系列多产品的情况,数据量会急剧膨胀。

2)不便于进行反查零件适合产品的情况。

3)物料分解算法编制比较复杂,处理不当效率会很低。


三、标志位方法

此方法适合多系列多产品的情况,每一种不同的零件都要标识出它适合的系列和产品型号,采用在相应型号标志位置位的方法。

例如:某机车厂有17个产品系列,每个系列大约有20~25个不同型号的产品,每个产品有80~90个零件,采用Treekey,Parent构造BOM,其记录条数大约为17*20*80=27,200,其数据量非常巨大。编辑,修改,计算BOM可能效率很低。

采用标志位方法按每个系列构造BOM可能可以解决问题:每个系列零件数大约在150~200条,其总记录数大约在2550条。

1)构造方法:

·BOM表结构:物资编码,结构数量,所属系列,适应型号,物资类别

注释:在物资适应该系列的某型号时,其标志位置1

物资类别分为:产成品,自制件,外购件,外协件

·MARK表结构:系列编号,物资编码,码位

注释: 此处存放各产成品对应的型号标志位。

2)物料分解算法

取出MPS中的一条记录,查询BOM.dbf,若该物资为产成品,查询MARK.dbf,取出系列编号-->xlbh,码位-->mw,取出BOM.dbf中所属系列=xlbh,适应型号中mw=1的记录。

MPS中产成品需求数量*BOM中的结构数量既为零件毛需求量。此算法不用递归,一个简单的SELECT语句即可,效率高。

优点:1)适合多系列多产品的情况,基础数据可按系列整理,实施工作量小。

2)物料分解算法效率高,速度快。

3)便于进行反查零件适合的系列和型号。

缺点:1)要求BOM只有一层,系列为根,该系列下的零件为叶子,适应性受限制。

2)不能以直观的方式显示每个产品的组成。


四、模块化BOM构造

模块化BOM主要应用于多系列多产品情况。该产品由基本件、特征件、可选件组成,其中特征件有多种(必选一种)因此可构成不同的产品。例如:卡车生产厂,有10种发动机,2种栏板,4种底盘,30种颜色,便可形成10*2*4*30=2400种产品,如果按产品结构存储,就要存入2400种结构,并使MRP物料分解很复杂。采用模块化BOM构造,去掉产品层,以部件层做为最终状态,其结构只有:10+2+4+30种。其数据量会大大减少。

BOM表数据结构为:父项编号,子项编号,选件号,结构数量,预测比率

注释:选件号表示:基本件、特征件序号,可选件

MRP物料分解基本算法:根据MPS种产品需求数量,分解为各基本件和特征件的数量(需求数量*结构数量*预测比率)。
作者: Roadbeg    时间: 2003-2-23 22:07
我正是使用的第一种方法.
作者: yuab    时间: 2003-2-25 16:03
Bom还是用树形控件来做比较好, 我曾经用过其它方法来试过, 太麻烦, 但用了树形控件后却变得简单多了。
在根据订单来运算物料需求结果清单时,要以用查询来达到, 但这里却要有点技巧性。因为设计时,一般情况下不会定义层数的。先算出每种物料的需求,再来汇总。
作者: Roadbeg    时间: 2003-2-25 16:13
我想的话,树形结构对共用子BOM 的处理可能不是很好.
所以我选用的网状.
并且,我的需求结果是不能用查询来实现的(一般的网状应可以),因为我在运算时还必须考虑到很多其它因素.
作者: cdbus    时间: 2006-5-12 23:46
不错!
作者: vogala    时间: 2009-5-30 10:42
bom嵌套计算物料问题是怎么解决的呢?




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3