您所在的位置:e-works首页 > 产品创新数字化(PLM) > CAPP

CAPP中BOM表的结构研究

发表时间:2006-4-19 王 宇 蔡长韬 封志明
关键字:BOM CAPP 工艺设计 XML
为了提高CAPP 系统的集成能力,本文作者对工艺设计过程中的数据结构进行了分析,提出了基于BOM 表的CAPP 系统设计方案,使该系统的数据结构能够适应现代关系型DBMS 系统,并能够与ERP 等生产管理系统实现数据通信。最终利用XML 技术,实现了数据的一致性,共享性和可维护性。

    4  PPBOM 功能的实现

    4-1  PPBOM中数据的可视化

    实现数据的可视化,主要是使PPBOM 的各类数据关系从逻辑结构转向物理结构。基于本文设计思想的CAPP 系统选用TreeCt rl 控件来显示产品、部件、零件的装配关系及与之对应的工艺卡片信息如图3 所示,这样也易于实现各个节点的添加、删除、修改等操作。

    在数据的显示,读取和存储方法上,本文作者使用了XML 技术来实现,对于每一张工艺卡片,用XML 代码进行描述,如图4 所示为一张工艺卡片的部分单元格:

    对图3 所示表格的XML 描述为:

    < Table row =“2”col =“4”x1 =“34”y1 =“156”x2 =“187”y2 =“176”type =“Ver”>
    < TH name =“ProcessNo”>
    < Rect x1 =“34”y1 =“146”x2 =“47”y2 =“156”type =“F1”>
  < Row font =“”size =“14”> 工序号< / Row >
    < / Rect >
    < / TH >
    < TH name =“OperationName”>
    < Rect x1 =“47”y1 =“146”x2 =“109”y2 =“156”type =“F1”>
  < Row font =“”size =“14”> 工序名称< / Row >
    < / Rect >
    < / TH >
    < TH name =“OperationDec”>
  < Rect x1 =“109”y1 =“146”x2 =“148”y2 =“156”type =“F0”>
    < Row font =“”size =“14”> 工序内容< / Row >
  < / Rect >
    < / TH >
    < TH name =“Equipment”>
  < Rect x1 =“148”y1 =“146”x2 =“187”y2 =“156”type =“F0”>
    < Row font =“”size =“14”> 设备< / Row >
  < / Rect >
    < / TH >
    < / Table >

    采用XML 语言对工艺卡片进行描述后,根据每张卡片中各个表格所填数据的特点,经过抽象整理,将每张卡片分为表头区(CardHead) , 表中区(CardBody) ,版本区( Edition) ,编校区(Revision) 及附件区(Appendix) 五个部分,程序中采用面向对象的思想将这五个部分抽象为五个类,并定义相应类的方法和属性,数据读取时将读入XML 描述的卡片格式信息,然后从数据库中根据不同的类对应的数据表读取相应的数据填入到卡片的正确位置。数据储存时将已经填写好的表格数据从XML 格式中解析出来,根据表格各部分所属类存储到相应的数据表中。

    4-2  PPBOM中数据的查询、汇总

    使用XML 语言对工艺卡片描述后,由于每张卡片的数据信息分别以XML 格式存储到PPBOM
表中,而工艺卡片的一些关键信息,如零件清单图号、零件图号等,是以字段的形式存储的。因此进行数据的查询时需要根据卡片的关键信息找到数据库中相应的表,得到对应的XML 文档描述,从而检索出XML 元数据。此查询过程在关系数据库中采用简单的结构化查询语言( SQL) 即可实现,在程序开发语言中只需要进行字符串的匹配操作即可实现。

    在进行数据汇总处理时,由于汇总输入条件多样化,而输出数据结构化,所以需要在数据库操作系统中编写相应的存储过程。汇总时以数据的查询为基础,在程序中编入不同的查询条件,在数据库操作系统中执行对应的存储过程,检索出需要的数据后,再进行一些后置处理,比如排序、分类或者数学计算等,最后以XML 文档形式输出,或在CAPP 中显示,或供其它系统使用。

责任编辑:况长进
2