U8 ERP与MES接口信息
文档名称: | U8 ERP与MES接口信息 |
确认签字 |
|
创建时间: | 2015年12月8日 |
最新修订日期 | 2016年2月24日 |
版本 | V3.0 |
目录
ERP与MES出入库接口对照
接口名称 | 接口传输 | ERP业务 | MES业务 | 备注 |
销售订单同步 | ERP->MES | 销售订单 | 销售订单 | 后台存储该表单,供成品仓出库时调用 |
成品销售发货 | MES->ERP | 成品销售发货 | 成品出库 |
|
成品退货 | MES->ERP | 退货单 | 成品退货单(新增) |
|
采购到货 | ERP->MES | ERP到货单 | 采购到货单(后台) |
|
采购入库 | MES->ERP | 采购入库 | 采购入库 |
|
采购退货 | MES->ERP | 采购退货 | 采购退货 | 调用采购到货 |
产成品入库 | MES->ERP | 产成品入库 | 产成品入库 |
|
其他入库 | MES->ERP | 其他入库 | 其他入库 |
|
生产计划 | ERP->MES | 生产计划 | 生产订单(未发布) |
|
生产订单 | MES->ERP | 生产订单 | 生产订单(整理发布) | 1.MES回传的生产订单需要绑上订单BOM材料清单回传。 |
BOM | ERP->MES | 产品BOM | 订单BOM |
|
材料出库单 | MES->ERP | 材料出库单 | 配送出库单 |
|
其他出库单 | MES->ERP | 其他出库 | 其他出库单 |
|
调拨单 | MES->ERP | 调拨单 | 调拨计划单(完成) |
|
盘点单 | MES->ERP | 盘盈盘亏单 | 盘盈盘亏结果 |
|
组装单 | ERP->MES | 组装单 | 其他出入库单 |
|
拆卸单 | ERP->MES | 拆卸单 | 其他出入库单 |
|
部门资料 | ERP->MES | 部门资料 | 部门资料 |
|
工作中心 | ERP->MES | 仓库资料、成本中心 | 工作中心 |
|
客户档案 | ERP->MES | 客户档案 | 客户档案 |
|
供应商档案 | ERP->MES | 供应商档案 | 供应商档案 |
|
人员资料 | ERP->MES | 人员资料 | 人员资料 |
|
存货档案 | ERP->MES | 存货档案 | 物料档案 |
|
接口业务逻辑图
详细字段设计
基础档案中,关于收发类别、计量单位、客户类型、供应商类别、人员类别基础静态数据,双发在各自系统中维护,保证编码、名称一致性。
接口通用字段表
接口说明:通用字段是指所有接口表中必须存在的字段,以下接口表中不再一一列出。
所属表 | 字段名称 | 字段类型 | 字段说明 |
所有主表 | 主表ID | Int | 主表唯一KEY。 |
处理标示 | Int(采用整型便于后续拓展) 0否 1完成 2处理中 3出错 | 是/否,默认为否,表示该数据是否被读取处理或者被业务调用。 | |
创建时间 | Datetime | 该数据创建时间 | |
完成时间 | Datetime | 该数据完成时间,有些业务不需要回写,供需要的业务回写。 | |
操作标示 | Int(枚举) | 增加/修改/删除。用于记录该条记录是新增、修改还是删除。 | |
所有子表 | 子表ID | Int | 该子表数据唯一KEY |
关联主表ID | Int | 所属主表记录的ID | |
创建时间 | Datetime | 该数据创建时间 | |
完成时间 | Datetime | 该数据完成时间,有些业务不需要回写,供需要的业务回写。 | |
操作标示 | Int(枚举) 0 1 2 | 增加/修改/删除。用于记录该条记录是新增、修改还是删除。 |
销售订单同步
接口说明:用于MES系统接收ERP的销售订单,用来作为销售出库单的来源单据。该表单存储于后台,供产成品出库业务进行调用。
所属表 | 字段名称 | 字段 | 字段类型/长度 | 字段说明 |
订单主表 | 订单号 | cSoCode | Narchar(30) | 唯一KEY |
客户代码 | cCusCode | Nvarchar(20) |
| |
客户名称 | cCusName | Nvarchar(98) |
| |
业务类型ID | cBusTypeID | Nvarchar(15) |
| |
业务类型名称 | cBusType | Nvarchar(8) |
| |
销售类型ID | cStCode | Nvarchar(2) |
| |
销售类型名称 | cStName | Nvarchar(20) |
| |
销售部门ID | cDepCode | Nvarchar(12) |
| |
销售部门名称 | cDepName | Nvarchar(255) |
| |
业务员代码 | cPersonCode | Nvarchar(20) |
| |
业务员名称 | cPersonName | Nvarchar(40) |
| |
订单状态 | cStatus | int | 0=有效,1=无效。(MES只需要知道哪些订单需要发货,哪些不需要) | |
备注 | cRemark | Nvarchar(60) |
| |
订单子表 | 行ID | isosid | int | 唯一KEY,需要出库单上带行号回传 |
产品编号 | cinvcode | Nvarchar(20) |
| |
产品名称 | cinvname | Nvarchar(255) |
| |
订单数量 | iquantity | Decimal(32,12) |
|
成品销售发货
接口说明:MES做完产成品出库业务之后,发送给ERP销售发货出库单,作为实际出库依据。涉及的MES表单:产成品出库单,产成品出库单完成出库之后,写入该接口。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
主表 | 出库单号 | cdlcode | Nvarchar(30) |
|
出库日期 | ddate | datetime |
| |
收发类别 | cRdCode | Nvarchar(5) | 此字段是编码字段 | |
业务类型ID | cBusTypeID | Nvarchar(15) |
| |
业务类型名称 | cBusType | Nvarchar(8) |
| |
销售类型ID | cSTCode | Nvarchar(2) |
| |
销售类型名称 | cSTName | Nvarchar(20) |
| |
订单号 | cSoCode | Nvarchar(30) |
| |
客户代码 | cCusCode | Nvarchar(20) |
| |
销售部门代码 | cDepCode | Nvarchar(12) |
| |
业务员代码 | cPersonCode | Nvarchar(20) |
| |
发货地址 | cAddress | Nvarchar(255) | 客户档案中取得,可修改 | |
发运方式 | cSCCode | Nvarchar(2) | 客户档案中取得,可修改。发运方式双方系统各自维护,代码名称一致即可。 | |
备注 |
|
|
| |
子表 | 销售订单子表行号ID | isosid | Int |
|
明细行号ID |
|
| MES明细行号 | |
仓库 | cWhCode | Nvarchar(10) | 仓库编码 | |
存货编码 | cinvcode | Nvarchar(20) |
| |
数量 | iquantity | Decimal(32,12) |
| |
供应商编号 | cVenCode | Nvarchar(20) | 材料出库时取材料的供应商,成品出库时为空。 |
成品退货入库
接口说明:MES发送给ERP成品退货入库单。MES做完出库单业务之后发给ERP。
注:成品退货的字段和字段类型请参照成品发货出库
所属表 | 字段名称 | 字段说明 |
主表 | 退货单号 |
|
退货日期 |
| |
收发类别 |
| |
业务类型ID |
| |
业务类型名称 |
| |
销售类型ID |
| |
销售类型名称 |
| |
发货单号 | 成品销售发货单号 | |
客户代码 |
| |
销售部门 |
| |
业务员代码 |
| |
备注 |
| |
子表 | 销售订单子表行号ID |
|
MES明细行号 |
| |
仓库 |
| |
存货编码 |
| |
数量 | 传接口时负数 | |
供应商编号 | 材料出库时取材料的供应商,成品出库时为空。 |
采购到货单
接口说明:ERP给MES传采购到货数据,供采购入库单作为来源。采购到货单ERP中需要处理,如果明细物料中有材料的价格信息没有维护,则不能下发给MES。必须维护好相关的价格信息,才可以发给MES。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
到货单明细 | 到货单号 | dhCode | Nvarchar(20) |
|
到货单明细行号ID | dhid | int | KEY | |
采购订单号 | cPoCode | Nvarhcar(20) |
| |
到货日期 | ddate | datetime |
| |
供应商编码 | cVenCode | Nvarchar(20) |
| |
部门编码 | cDepCode | Nvarchar(12) |
| |
业务员编码 | cPersonCode | Nvarchar(20) |
| |
采购类型编码 | cPTCode | Nvarchar(2) |
| |
采购类型名称 | cPTName | Nvarchar(20) |
| |
存货编码 | cInvCode | Nvarchar(20) |
| |
数量 | iquantity | Decimal(32,12) |
| |
单据状态 | cstatus | int | 0=有效,1=无效 |
采购入库单
接口说明:MES采购入库单发送给ERP。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
主表 | 入库单号 | cRdCode | Nvarchar(30) |
|
入库日期 | ddate | datetime |
| |
仓库 | cWhCode | Nvarchar(10) | 仓库编码 | |
供应商 | cVenCode | Nvarchar(20) |
| |
部门 | cDepCode | Nvarchar(12) |
| |
业务员 | cPersonCode | Nvarchar(20) |
| |
收发类别 | cRdCode | Nvarchar(5) | 此字段是编码字段 | |
备注 | cRemark | Nvarchar(255) |
| |
子表 | 子表行号ID |
|
| MES |
到货单号 | dhCode | Nvarchar(20) |
| |
订单号 | cPoCode | Nvarhcar(20) |
| |
到货单行号ID | dhid | int |
| |
存货编码 | cInvCode | Nvarchar(20) |
| |
数量 | iquantity | Decimal(32,12) |
|
采购退货单
接口说明:MES采购入库单发送给ERP。
注:采购退货的字段和字段类型请参照采购入库
所属表 | 字段名称 | 字段说明 |
主表 | 退货单号 |
|
退货日期 |
| |
仓库 |
| |
供应商 |
| |
部门 |
| |
业务员 |
| |
收发类别 |
| |
备注 |
| |
子表 | 子表行号ID | MES |
到货单号 |
| |
订单号 |
| |
到货单行号ID |
| |
存货编码 |
| |
数量 |
|
产成品入库单
接口说明:MES发给ERP产成品入库单。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
主表 | 入库单号 | cRdCode | Nvarchar(30) |
|
入库日期 | ddate | datetime |
| |
仓库 | cWhCode | Nvarchar(10) | 仓库编码 | |
收发类别 | cRdCode | Nvarchar(5) | 此字段是编码字段 | |
部门(工作中心) | cDepCode | Nvarchar(12) |
| |
备注 | cRemark | Nvarchar(255) |
| |
子表 | 生产订单号 | MoCode | Nvarchar(30) |
|
产品编码 | cInvCode | Nvarchar(20) |
| |
数量 | iquantity | Decimal(32,12) | 根据生产订单号和产品编码汇总 |
其他入库单
接口说明:MES发送给ERP其他入库单。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
主表 | 入库单号 | cRdCode | Nvarchar(30) |
|
入库日期 | ddate | datetime |
| |
仓库 | cWhCode | Nvarchar(10) |
| |
收发类别 | cRdCode | Nvarchar(5) |
| |
部门 | cDepCode | Nvarchar(12) | 工作中心 | |
备注 | cRemark | Nvarchar(255) |
| |
子表 | 存货编码 | cInvCode | Nvarchar(20) |
|
数量 | iquantity | Decimal(32,12) |
| |
供应商编号 | cVenCode | Nvarchar(20) | 材料出库时取材料的供应商,成品出库时为空。 |
生产计划
接口说明:ERP发给MES生产计划,作为MES的生产订单,MES可以对生产订单进行数量分批、日期、基本信息等调整,但不可以调整生产的产品等主要信息。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
表单 | 计划号 | PlanCode | Nvarchar(30) |
|
计划单行号 | DemandId | int |
| |
产品编码 | cInvCode | Nvarchar(20) |
| |
数量 | iquantity | Decimal(32,12) |
| |
销售订单号 | cSoCode | Nvarchar(30) |
| |
预测订单号 | cForCode | Nvarchar(30) |
| |
计划开始日期 | PStartDate | datetime |
| |
计划结束日期 | PDueDate | datetime |
| |
需求日期 | DmandDate | datetime |
| |
备注 | cRemark | Nvarchar(255) |
| |
|
|
|
|
生产订单
接口说明:ERP发给MES的生产计划,在MES中经过调整之后,进行发布操作。发布之后回传给ERP,作为ERP的生产订单信息。不存在合并、拆分等对订单调整的操作。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
生产订表单 | 计划号 | PlanCode | Nvarchar(30) |
|
生产订单号 | MoCode | Nvarchar(30) |
| |
工作中心 | cWcCode | Nvarchar(8) |
| |
产品编码 | cInvCode | Nvarchar(20) |
| |
数量 | iquantity | Decimal(32,12) |
| |
销售订单号 | cSoCode | Nvarchar(30) |
| |
预测订单号 | cForCode | Nvarchar(30) |
| |
计划开始日期 | PStartDate | datetime |
| |
计划结束日期 | PDueDate | datetime |
| |
需求日期 | DmandDate | datetime |
| |
订单类型 | MoType | int | (正常/返修/试制)id | |
备注 |
|
|
| |
订单材料BOM表 | 订单号 | MoCode |
|
|
BOM编号 | BomID |
| 取订单BOM的ID号 | |
材料编号 | cInvCode | Nvarchar(20) |
| |
数量(用量) | iquantity | float | 各工序汇总 | |
|
|
|
|
BOM
接口说明:ERP发给MES产品的BOM,作为MES中的订单BOM来源。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
BOM主表 | BOM编号 | bomid | Int |
|
版本号 | Version | Int |
| |
版本时间 | VersionEffDate | datetime |
| |
产品编号 | cInvCode | Nvarchar(20) |
| |
状态 | status | int | 0=有效,1=无效 | |
BOM子表 | 物料编号 | cInvCode | Nvarchar(20) |
|
标准数量 | BaseQtyN | float | 子件数量 | |
标准基数 | BaseQtyD | float | 母件数量 |
材料出库单
接口说明:MES发给ERP材料出库单,作为ERP系统的材料配送出库依据,MES系统为配送出库单。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
材料出库主表单 | 出库单单号 | cRdCode | Nvarchar(30) |
|
出库日期 | ddate | datetime |
| |
仓库 | cWhCode | Nvarchar(10) |
| |
收发类别 | cRdCode | Nvarchar(5) | 编码 | |
部门(产线) | cDepCode | Nvarchar(12) |
| |
备注 | cRemark | Nvarchar(255) |
| |
材料出库子表 | MES行号 |
|
|
|
生产订单号 | MoCode | Nvarchar(30) |
| |
产品编码 | cPInvCode | Nvarchar(20) |
| |
材料编码 | cInvCode | Nvarchar(20) |
| |
数量 | iquantity | Decimal(32,12) |
| |
供应商编码 | cVenCode | Nvarchar(20) |
|
其他出库单
接口说明:其他出库单类型很多,但是字段内容不变。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
主表表单 | 出库单单号 | cRdCode | Nvarchar(30) |
|
出库日期 | ddate | datetime |
| |
仓库 | cWhCode | Nvarchar(10) |
| |
出库类型 | cRdCode | Nvarchar(5) | ERP提供,编码 | |
部门(产线) | cDepCode | Nvarchar(12) |
| |
备注 | cRemark | Nvarchar(255) |
| |
子表 | 存货编码 | cInvCode | Nvarchar(20) |
|
数量 | iquantity | Decimal(32,12) |
| |
供应商 | cVenCode | Nvarchar(20) |
|
调拨单
接口说明:MES在完成移库任务之后,将完成的移库计划单发给ERP。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
调拨单主表 | 移库单号 | cTVCode | Nvarchar(30) |
|
移库日期 | dTVDate | Datetime | 调拨日期 | |
来源仓库 | cOWhCode | Nvarchar(10) | 编码 | |
目标仓库 | cIWhCode | Nvarchar(10) | 编码 | |
入库类别 | cIRdCode | Nvarchar(5) | 编码 | |
出库类别 | cORdCode | Nvarchar(5) | 编码 | |
备注 | cRemark | Nvarchar(255) |
| |
调拨单子表 | MES行号 |
|
|
|
存货编码 | cInvCode | Nvarchar(20) |
| |
数量 | iquantity | Decimal(32,12) |
| |
供应商 | cVenCode | Nvarchar(20) |
|
盘点单
接口说明:MES将盘点生成的盘盈盘亏单汇总,传给ERP。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
盘盈盘亏主表 | 盘点任务单号 | cCVCode | Nvarchar(30) |
|
计划盘点日期 | dCVDate | datetime | 取计划盘点日期 | |
实际盘点日期 | dACDate | datetime | 取盘点任务实际完成日期 | |
盘点部门 | cDepCode | Nvarchar(12) | 取盘点责任人所在部门 | |
盘点人 | cPersonCode | Nvarchar(20) | 取盘点责任人 | |
仓库 | cWhCode | Nvarchar(10) |
| |
盘盈盘亏子表 | 存货编码 | cInvCode | Nvarchar(20) |
|
数量 | iquantity | Decimal(32,12) | 按照存货编码、供应商来汇总,数量分正负值。 | |
供应商 | cVenCode | Nvarchar(20) |
|
组装单
接口说明:ERP发送组装单给MES,MES接收到组装单之后,自动生成其他出入库单。
说明:介于组装入库的成品,ERP没有给出其产品条码号和标识码,MES在入库时会录入产品条码和标志码,所以必须人工在系统之外给定唯一的产品条码和标志码,如果没有,MES系统不予以入库。
当实际出入库的零件数量与账面上的数量不匹配时,请用盘点功能进行调整。与ERP使用习惯保持一致。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
组装单主表 | 单号 | cAVCode | Nvarchar(30) |
|
日期 | dAVDate | Datetime |
| |
入库类别 | cIRdCode | Nvarchar(5) | 组装单 | |
部门 | cDepCode | Nvarchar(12) |
| |
出库类型 | cORdCode | Nvarchar(5) | 其他出库单类别 | |
部门 | cODepCode | Nvarchar(12) | 其他出、入库部门 | |
组装单子表 | 子表行号 | cAVDID | int | ERP |
类型 | bAVType | Nvarchar(20) | 值:散件、套件。套件作为其他入库明细,散件作为其他出库明细。 | |
存货编码 | cInvCode | Nvarchar(20) |
| |
仓库 | cWhCode | Nvarchar(10) | 作为其他出入库的仓库 | |
数量 | iquantity | Decimal(32,12) |
|
部门资料
接口说明:ERP发部门资料给MES
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
部门资料 | 部门编号 | cDepCode | Nvarchar(12) |
|
部门名称 | cDepName | Nvarchar(255) |
| |
上级部门 | cLDepCode | Nvarchar(12) |
|
工作中心
接口说明:ERP发给MES工作中心的来源是两个地方:成本工作中心和仓库档案,MES统一叫工作中心根据工作中心类别来进行区分。MES中的一级工作中心,不允许新增、删除、修改。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
工作中心 | 编号 | WcCode | Nvarchar(8) |
|
名称 | Description | Nvarchar(60) |
| |
工作中心类型 | iType | Nvarchar(10) | 生产中心、仓库,如果编码在部门表内,则是生产中心,如果再仓库档案内,则是仓库 |
客户档案
接口说明:ERP发客户档案给MES
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
客户档案 | 编号 | cCusCode | Nvarchar(20) |
|
名称 | cCusName | Nvarchar(98) |
| |
客户分类 | cCCCode | Nvarchar(12) |
| |
送货地址 | cCusAddress | Nvarchar(255) |
| |
发运方式编号 | cCusOType | Nvarchar(10) |
|
供应商档案
接口说明:ERP发供应商档案给MES
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
供应商档案 | 编号 | cVenCode | Nvarchar(20) |
|
名称 | cVenName | Nvarchar(98) |
| |
供应商类别 | cVCCode | Nvarchar(12) |
| |
联系人 | cVenContact | Nvarchar(20) |
| |
联系电话 | cVenContactPhone | Nvarchar(30) |
|
人员资料
接口说明:ERP发人员资料给MES
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
人员资料 | 编号 | cPersonCode | Nvarchar(20) |
|
姓名 | cPersonName | Nvarchar(40) |
| |
人员类别 | PersonType | Nvarchar(30) |
| |
所属部门 | cDepCode | Nvarchar(12) |
| |
性别 | Sex | Nvarchar(2) |
| |
出生日期 | dBirthDate | datetime |
| |
邮箱 | cPsnEmail | Nvarchar(100) |
|
存货档案
接口说明:ERP发存货档案给MES。
所属表 | 字段名称 | 字段 | 字段类型 | 字段说明 |
存货档案 | 物料编码 | cInvCode | Nvarchar(20) |
|
物料名称 | cInvName | Nvarchar(255) |
| |
规格型号 | cInvStd | Nvarchar(255) | 取一个字段 | |
默认仓库 | cWhCode | Nvarchar(10) |
| |
物料类别 | cInvCName | Nvarchar(255) | 存货分类ERP | |
物料类型 | iInvType | Nvarchar(10) | 采购(普通物料)、自制(产成品), | |
主计量单位 | cComUnitName | Nvarchar(20) |
| |
是否质检 | bPropertyCheck | bit |
|
数据库接口读取相关信息约定
1、接口处理数据建议都用中间库/表,在Sql server2008中建立中间库和中间表,mes和erp把各自要发送的数据都写入中间库,各自从中间库取数据,避免两个系统间的相互影响
2、中间表处理数据必须有处理状态标示,是否读取处理完毕的状态标示、创建时间、完成时间、增删改标示、子表行号。(详见接口通用字段表)
3、中间库的表名和字段名由MES那边统一定义,先开发,到时候ERP这边做接口的时候MES提供表结构说明即可。
4、数据的更新需要保留追溯功能,数据变更时(修、删)必须传新的数据过来,旧数据要保留。
具体方案咨询可联系QQ 304418200