PDM与用友ERP的集成方案之英泰南方路机案例 PLM > PDM PLM客户案例 >

一、集成技术方案
  
1、集成技术
     信息系统的集成技术的研究多年来一直是一个热门研究方向,目前主要的系统集成方式 有三种模式为:基于工作流技术的过程集成方法、基于 EAI 企业门户的过程与数据集成方 法、及基于数据交换标准(XML 语言、STEP 标准)的异构系统集成方法等三类集成方式。

    基于工作流技术的过程集成是通过工作流技术,将产品 PDM 系统中各过程的工作流程 统一,可有效地保证 PDM 系统中过程目标和过程支持对象的一致性,从而达到产品全生命 周期中过程各种信息资源和制造资源的统一。基于 EAI 企业门户实现过程与数据集成是将 采用基于消息事件驱动的协同集成服务器框架,统一负责系统间集成组件的封装、配置、执 行、跟踪,采用中间件技术以统一的接口形式封装各应用系统的公共服务功能,实现在一个 EAI 集成服务框架下,扩展完善系统间的集成功能,通过集成服务框架完成系统间的集成。 目前这两种模式的集成正处于研究过程之中,在企业中的成功集成应用还很少见到。

    清软英泰目前采用的主要集成方式是基于数据交换标准(XML  语言、STEP 标准)的 异构系统集成方式。英泰 PDM 与各系统之间的集成是以 PDM 为平台紧紧围绕 BOM 这条 主线进行,将设计 BOM 和工艺 BOM 在 PDM 系统中进行有效的管理,其主要集成思路为: 在 PDM 系统中编辑维护工艺 BOM,在投入生产时,由 PDM 对 PBOM 进行配置运算,从 而一次性产生符合要求的 PBOM 信息传递给 ERP。
 
2、集成体系结构

 

 PDM系统与ERP数据集成图

 
    清软英泰 PDM 与 CAPP、ERP 的集成采用的是基于数据库方式的集成, CAPP 使用 PDM 的控件浏览 PDM 中的相关文档,CAPP 使用 PDM 控件完成 PBOM 数据的导入工作。 PDM 使用 CAPP 控件浏览 CAPP 中的工艺卡片内容;ERP 使用 PDM 控件浏览 PDM 中的相 关文档,ERP 使用 PDM 控件完成 PBOM 数据的导入工作。其基本体系结构如示:

 

1)    设计人员在 PDM 系统中完成设计 BOM 的搭建,设计 BOM 中包含配置情况

2)    工艺人员在 PDM 中进行工艺 BOM 的搭建,工艺 BOM 包含毛坯节点和原材料节点以 及零件的工艺路线属性以及其它物料属性。(工艺 BOM 也包含配置情况)
3)    ERP 系统中相关人员根据订单情况利用 PDM 提供的控件导出实例化的工艺 BOM 到ERP 系统中。并从 PDM 中规定数据表中读取工艺信息。
 
二、集成应用应用解决方案
 
 
1、集成说明
 
 
    A)   英泰 PDM 中除管理设计 BOM 外,可进行工艺 BOM 的管理,工艺 BOM 由工艺部相关 人员使用,可进行自制或外购属性定义、工艺路线、毛坯、材料以及材料定额的编制。 毛坯和材料,要以树节点形式在工艺 BOM 中管理。
    B)   PDM 提供数据导出控件供 CAPP 使用。CAPP 利用 PDM 提供的控件将 PDM 中产品全 局树中的自制件物料清单导出到 PDM 中间表中然后处理到 CAPP 系统中。控件导出物 料清单时,按照 CAPP 的要求,将毛坯和原材料节点的有关信息补充到零件的相应属性 中。
    C)   CAPP 完成工艺规程的编辑后将全局的自制件工艺物料按照规定的格式进行汇总,然后 传递到 PDM 系统中。
    D)   PDM 提供数据导出控件供 ERP 使用。ERP 系统相关使用人员根据销售订单情况使用 PDM 控件选择产品配置状态进行产品配置,并将配置后的数据导入 PDM 中间数据库 中,对增删改的数据进行标识。然后由 ERP 将中间表的数据处理到 ERP 系统中。
    E)   ERP 利用 PDM 控件导出 PDM 中实例化的工艺 BOM 时,PDM 控件要对选配件的装配 父件及根据父子关系蔓延至根节点的所有零件、发生更改的零件及其父件以及根据父子 关系蔓延至根节点的所有零件进行变号处理。同时,控件要保证导出 PDM 中最新版本 的物料和结构数据。
    F)    PDM 中数据更改后,通过 PDM 流程功能通知 CAPP 与 ERP,然后由 CAPP 系统和 ERP系统根据各自的情况进行处理。
 
2、通过XML中间数据集成
 
 
    XML 中间文件的集成方式是 PDM 提供一个产品数据导出工具,完成 PDM 中产品数据 的导出,导出格式除了  XML  外还支持  EXCEL 、文本文件、 DBF  文件和中间数据表

 

    (MSSQL/Oracle);同时可以以 XML 格式导出常用 ERP 系统所需的数据格式英泰 PDM 集成导出功能可以根据用友 ERP 的物料与 BOM 结构(参考如下表)自动导 出 XML 格式的中间文件(存货物料.xml 与 BOM 结构.xml),用友 ERP 导入这两个文件后 就自动完成 PDM 中设计/工艺 BOM 的完整导入!

{Type}BOM 类别

列名

描述

数据类型

可否为空

主键

BOMID

BOMID

Int

N

P

BomType

BOM 类别

Varchar

 

 

Version

版本

varchar

 

 

VersionDesc

版本说明

varchar

 

 

VersionEffDate

版本生效日

varchar

 

 

 

 u    {Parent}BOM 母件

 

列名

描述

数据类型

可否为空

主键

BOMID

BOMID

int

N

 

InvCode

母件编码

varchar

 

 

ParentScrap

母件损耗率

varchar

 

 

u    {Component}BOM 子件
 

列名

描述

数据类型

可否为空

主键

BOMID

BOMID

int

N

P

OpComponentId

OpComponentId

int

 

 

SortSeq

子件行号

varchar

 

 

OpSeq

工序行号

varchar

 

 

InvCode

存货编码

varchar

 

 

EffBegDate

起始日期

varchar

 

 

EffEndDate

结束日期

varchar

 

 

FVFlag

固定\变动

varchar

 

 

BaseQtyN

基本用量分子

varchar

 

 

BaseQtyD

基本用量分母

varchar

 

 

CompScrap

子件损耗率

varchar

 

 

ByproductFlag

是否产品出品

varchar

 

 

OptionsId

子件选项关联

int

 

 

u    {Option}BOM 子件选项
 

列名

描述

数据类型

可否为空

主键

OptionsId

子件选项关联

int

N

P

Offset

偏置期

varchar

 

 

WIPType

供应类型

varchar

 

 

AccuCostFlag

成本累计

varchar

 

 

OptionalFlag

可选否

varchar

 

 

MutexRule

选择规则

varchar

 

 

PlanFactor

计划比例

varchar

 

 

u    {Remark}BOM 子件备注
 

列名

描述

数据类型

可否为空

主键

RemarkId

RemarkId

int

N

P


 

SortSeq

行号

varchar

 

 

OpComponentId

OpComponentId

int

 

 

Remark

备注

varchar

 

 

3、通过集成PDM数据导出组件接口无缝集成
 
     PDM 数据导出组件提供详细的二次开发接口与说明,可以提供第三方系统做紧密的集 成,实现对 PDM 中相关产品数据的读取!
 
三、集成接口说明
 
 
1、实现功能
 
 
    根据  PDM&ERP/CAPP  的集成要求, PDM  需要为  ERP/CAPP  提供接口控件, ERP/CAPP 系统可以通过该接口控件“PDMOutput.ocx”访问 PDM 产品结构信息和零件 信息并进行信息的导出/导入。
 
2、开发与集成软件环境
 
 
开发环境:vb6.0+sp5(ado2.6)+MSSQL
集成环境支持:VB/VC/.NET
 
 
3、PDMOUTPUT控件提供了两种调用方式
 
 
    1. 连接 PDM 数据库成功后,通过控件提供的接口函数得到产品大类、产品、配置状 态等数据组织用户界面,从而导出数据。该方式需要将控件的 Visible 属性设为 False
 
    2. 连接 PDM 数据库成功后,直接使用控件提供的用户界面进行操作,从而导出数据。 该方式需要将控件的 Visible 属性设为 True
 
4、PDMOutPut.OCX接口说明
 
 
一、连接 PDM 数据库说明:
通过指定 PDM 用户和密码、PDM 中间服务器的名称连接数据库,控件通过 PDM 的权 限机制对登录用户的权限进行判断MidServerName  属性功能:指定 PDM 中间服务器的名称 说明:该属性数据类型为“字符型” UserName  属性

 

说明:指定 PDM 用户
Password  属性
说明:指定 PDM 用户密码 Connect() as integer 方法 功能:初始化连接
说明:该函数返回值为“整型”。如返回值为 0 表示连接成功,2 表示没有输入中间服务器;
3 表示登录用户名不正确。 PDMOutPutDLL.CloseConnect()方法 功能:关闭连接 说明:直接调用该函数可关闭连接 ViewType 属性
说明:指定视图类型 OutputSoft 属性 说明:指定调用软件的名称,”CAPP”或”ERP”

二、得到配置 BOM 说明:
1、 GetPrdClassCount() As Integer
功能:获取产品大类的方法,返回系统中产品大类的总数量
说明:该函数的返回值为整型,如返回值为 0 则表示没有 PDM 系统中没有定义任何产品大 类

2、 GetPrdCount(PrdSubClassID As String, PrdSubClassName As String) As Integer
功能:通过传入产品大类代号 PrdSubClassID  、产品大类名称 PrdSubClassName,返回该大
类下的产品的总数量
说明:该函数的返回值为整型,如返回值为 0 则表示该产品大类下没有定义任何产品

3、GetPrdStatusCount(prdid As String) As Integer 功能:通过产品代号 prdid  获取该产品下的配置状态的总数量 说明:该函数的返回值为整型,如返回值为 0 则表示该产品大类下没有没有定义任何产品

4、GetAllPartPropCount() as integer
功能:得到 PDM 中零件的所有属性的数量

5、GetPrdCollectCount() as integer
功能:得到 PDM 中汇总条件的数量

6、GetViewtypeCount() As Integer
功能:得到系统中定义的视图类型

7、SetPartPropCount(iCount As Integer) As Boolean
功能:通过传入参数 iCount 初始化记录需要输出的零件属性(代号/名称)的数量 说明:iCount 的值是用户选择的需要输出的零件属性的数量

8、SetPartPropId(iSerial As Integer, PartPropId As String) As Boolean 功能:将选择后的零件属性的代号传回控件中 说明:iSerial:零件属性的输出序号,其值不能大于选择输出的零件属性的数量
PartPropId:零件属性的代号

9、SetPartPropName(iSerial As Integer, PartPropName As String) As Boolean 功能:将选择后的零件属性的名称传回控件中 说明:iSerial:零件属性的输出序号,其值不能大于选择输出的零件属性的数量
PartPropName:零件属性的名称

10、getValueID(iSerial As Integer) As String

功能:通过传入的序号 iSerial, 获取指定序号的产品大类代号或产品代号或配置状态代号 或零件属性的代号或汇总条件名称或视图类型值

11、getValueName(iSerial As Integer) As String
功能:通过传入的序号 iSerial, 获取指定序号的产品大类名称或产品名称或配置状态名称 或零件属性的名称或汇总条件描述或视图类型名称

12、OutputBOM(productID As String, productName As String, statusID As String, strDate As String,strType as string) 功能:通过传入参数“产品代号”、“产品名称”、“配置状态号”、“时间”将配置后的产品结 构输出到中间文件中(c:\bom.xls;c:\bom.dbf;c:\bom.txt)
说明:如参数 strType  的值为“xls”则输出 Excel 文件;如参数 strType  的值为“dbf”则输 出 dbf 文件;如参数 strType  的值为“txt”则输出文本文件;如参数 strType 的值为“sql” 则输出到中间表。

13、OutputITEM(productID As String, productName As String, statusID As String, strDate As String,strCollection As String, SumNum As Boolean,strType as string) 功能:通过传入参数“产品代号”、“产品名称”、“配置状态号”、“时间”、“汇总条件”、“是 否合并相同 零件的数量 ”五个参数 将配置后的 产品结构输 出到中间文 件或中间表 中
(c:\item.xls;c:\item.dbf;c:\item.txt;capp_pdm_interface 表)
说明:
(1)如参数 strType  的值为“xls”则输出 Excel 文件;如参数 strType 的值为“dbf” 则输出 dbf 文件;如参数 strType  的值为“txt”则输出文本文件;如参数 strType 的值为“sql”则输出到中间表。
(2)strCollection:汇总条件名称;
(3)SumNum:值为”y”表示合并相同零件,值为”n”表示不合并相同零件

14、Public Sub ActivePrdCatOK() 功能:本函数主要用来选定产品、配置状态、视图类型、有效性时间后产生 BOM,相'当于 原控件界面中产品大类界面中的“确定”按钮

15、Public Sub ActivePrdCatCancel()
功能:相当于原控件界面中产品大类界面中的“取消”按钮

16、Public Sub ActivePartOK()
功能:相当于原控件界面中导出物料界面中的“确定”按钮

17、Public Sub ActivePartCancel()
功能:相当于原控件界面中导出物料界面中的“取消”按钮

18、Public Sub ActiveLogin()
功能:相当于原控件界面中登录界面中的“登录”按钮

19、ActiveForm 属性 功能:判断当前正处于那个界面
"cnn":登录界面 "prd":产品界面 "sel":物料导出界面 "tech"  :工艺规程界面 “prt”:零件列表界面

20、Public Sub ActiveTechOK()
功能:相当于原控件界面中工艺规程界面中的“确定”按钮

21、Public Sub ActiveTechCancel()
功能:相当于原控件界面中工艺规程界面中的“取消”按钮

 

22、strCnn 属性
功能:得到 PDM 数据库连接字符串

23、OutPutSuccess 属性 功能:判断是否导出成功,成功则为 1,失败则为 0 注意:
调用函数 OutputITEM 前必须先将本次导入涉及的零件属性回传给控件 调用函数 OutputITEM 前必须指定 ViewType 属性和 OutputSoft 属性的值
 
5、PDMOutPut.OCX界面说明
  
控件中提供用户界面用来显示产品大类、产品、配置状态以及零部件的产品结构。用户 可不使用控件的接口函数而直接调用控件所提供得用户界面,在界面中进行操作,也同样可 以实现数据的导出。用户界面如下:
1、 显示产品大类、产品和配置状态的界面

PDM ERP 集成图

连接数据库成功后,出现该界面,该界面显示产品相关的信息。界面左侧中显示产 品大类包括大类下各小类的树状结构,界面右侧显示产品大类(小类)下的产品以及产 品对应的配置状态,并且可以根据时间有效性原则进行运算。选择了需要进行配置运算 的产品和与之对应的配置状态以及时间后,点击“确定”按钮,便会得到产品的配置结 果,配置后的产品结构显示在“产品结构界面”中。
2、 产品接口输出预览界面

 

 PDM BOM导出

 

3、 产品信息导出



 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
图:以 EXCEL 格式导出用友存货物料清单


 

以 EXCEL 格式导出用友存货物料清单

图:以 XML 格式导出用友 BOM 结构

 以 XML 格式导出用友 BOM 结构

联系我们