【新】EOS至MES的假捻报工数据导入-V2.0版本

假捻自动线的数据和MES没有进行对接,直接入库至EOS。

因此可信平台上缺少这部分的报工数据,需要把EOS的入库数据导出,整理成报工数据,导入到MES,然后通过定时任务集成到可信平台。

MES这边的报工数据整理,主要是添加订单明细ID,和完工单号。

订单明细ID(根据批次号和等级确定)

在这里插入图片描述
完工单号
在这里插入图片描述

1.订单明细ID导出

订单ID只和批号+等级有关联。

select distinct a.GRADE_ as 等级, a.batch_ as 批次编号,
                a.id_ as 订单ID
  from LT_PR_PRODUCT_ORDER_DETAIL a
  left join LT_PR_Product_Order_line b    on a.parent_Id_ = b.id_
  left join LT_PR_Product_Order c    on b.parent_id_ = c.id_
 where a.grade_ is not null   and a.batch_ is not null
   and b.is_Close_ = 0   and c.is_Close_ = 0
   and c.dept_id_ in ('667759966777507857', '667759966777507858', '667759966777507859')
 order by a.batch_ asc

数据如下:

在这里插入图片描述

把这些订单数据导出。

在这里插入图片描述

2.成品入库数据导出

-- 包装记录
SELECT DISTINCT TM AS 包装箱号, QFH AS 区分号, JZ AS 完工数量, WPBM AS 物料, PCH AS 批次, DJ AS 等级 , TGS AS 辅数量, JZ AS 总重量, JZ AS 总净重
 , dbsj AS 包装日期,CJM AS 车间名
FROM bzjlh
WHERE rkzt = 'Y' AND CJM LIKE '%假捻%'
 AND CJM != '假捻一部_外发加工车间'
 AND BZX IN ('89', 'Z2','84')
 AND dbsj >= '2023-2-28'
 AND dbsj < '2023-3-1'
 
 -- 包装记录历史
  SELECT DISTINCT TM AS 包装箱号, QFH AS 区分号, JZ AS 完工数量, WPBM AS 物料, PCH AS 批次, DJ AS 等级 , TGS AS 辅数量, JZ AS 总重量, JZ AS 总净重
 , dbsj AS 包装日期,CJM AS 车间名
FROM bzjllsh
WHERE CJM LIKE '%假捻%' AND CJM != '假捻一部_外发加工车间'
 AND BZX IN ('89', 'Z2','84')
 AND dbsj >= '2023-2-28'
 AND dbsj < '2023-3-1'

导出数据如下:

在这里插入图片描述

3.准备本地数据以及导入

新建报工数据表

-- 报工数据表
CREATE TABLE `bgsj` (
  `BZXH` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '箱码',
  `QFH` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '区分号',
  `WGSL` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '完工数量',
  `WPBM` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '物料',
  `PCH` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '批次号',
  `DJ` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '等级',
  `FSL` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '辅数量',
  `ZZL` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '总重量',
  `ZJZ` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '总净重',
  `BZRQ` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '包装日期',
  KEY `bgsj_dj_pch` (`DJ`,`PCH`),
  KEY `bgsj_dj` (`DJ`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

新建工单明细表

--工单明细表
CREATE TABLE `gdmx` (
  `DJ` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '等级',
  `PCH` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '批次号',
  `DDID` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '订单ID',
  KEY `bgsj_dj_pch` (`DJ`,`PCH`),
  KEY `bgsj_pch` (`PCH`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

注意,报工数据表中的BZRQ,我设置成字符串类型,因为导入到MES是文本,省的来回切换。

所以EOS的报工数据导入到MES里,要先把这个dbsj 由数字转为文本型数字。

导入数据就不用多说了,选择哪个sheet页,把列和属性对上,直接导入就可以了。

3.本地数据关联查询并导出

SELECT DISTINCT
 a.BZXH AS 包装箱号, a.QFH AS 区分号,
 a.WGSL AS 完工数量, a.WPBM AS 物料,
 a.PCH AS 批次, a.DJ AS 等级,
 b.DDID AS 订单明细ID, 'MES查询' AS 完工单号,
 a.FSL AS 辅数量, a.ZZL AS 总重量, a.ZJZ AS 总净重,
 'EWJBZX85' AS 设备, '85' AS 工作中心, 'RC01' AS 加工工序,
 'RC0102' AS 子工序, a.BZRQ as 包装日期, '1' AS 箱数, '成功' AS 是否集成 
FROM bgsj a LEFT JOIN gdmx b ON a.DJ = b.DJ AND a.PCH = b.PCH;

这里要注意的问题,是数据重复。

加入EOS导出数据1000条,通过这条语句关联查询,可能由1200条报工数据。

这个问题是因为,同区分号+同等级+同批次号的订单ID,有可能重复(一般来说,一个是Z2,一个是85)

这个问题没有影响,数据正常导入到MES中,等到集成到可信平台后,把重复的数据删除即可。

步骤总结

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值