Bootstrap

基于金碟云星空实现硬件ECN校验

	基于金碟云星空实现硬件ECN校验
	制造业的同仁都能意识到,ECN变更不成功的风险,对于最终产品的品质影响很大,有时候是致命的,但是对于普通企业来说,想要完全杜绝ECN错误似乎很难,不管多少人力介入把关,最终也很难完全杜绝。
	所以,我就尝试用Python制作一个工具,用于ECN的系统复检,希望能帮助到有需要的人。

欢迎关注,相关开发陆续更新中

复检流程及数据关系

复检程序主要分为两大类:
1.系统的变更单是否生效,实际数据跟需要变更的数据进行复核;
2.原始需要表格与系统实际数据进行复核;

通过如上两者的比较,基本可以确定ECN变更完整性。

大致关系,如下图:

本地变更表 系统变更表 ERP数据 本地HW工程师变更需求,转移到系统变更单中 修改工程BOM或生产用料单 本地文件变更表复核 系统单据变更复核 本地变更表 系统变更表 ERP数据

核心技术点介绍

1、打通软件访问金碟的逻辑,主要通过金碟Webapi接口,访问不同的表单,从而获取系统数据。

首先我们需要拿到访问ERP的账号的相关单据的权限,并且明确数据格式。
ERP相关数据如下:
“acctid”:“”,
“username”:“”,
“password”:“”,
“lcid”:
以上是读取ERP数据的关键。

def getERPData(FormId, FieldKeys, columns, FilterValue):
    post_data = {"data": json.dumps({
        "FormId": FormId,  # 表名
        "FieldKeys": FieldKeys,
        # 我这里就取两个字段
        "FilterString": FilterValue,
        "OrderString": "",
        "StartRow": 0,
        "Limit": 100000,
        "TopRowCount": 100000
    })}
    response = requests.post(url=viewall_url, data=post_data, cookies=login())
    data = json.loads(response.text)
    ExcelData = DataFrame(data=data, columns=columns)
	

如上函数,再添加不同表单的参数,既可返回对应的数据表,由于每家的系统参数不一样,就不针对每张表进行介绍。

2、本地数据标准化;

在实际数据处理中,数据的标准性很重要,这直接影响到执行效率和核检的结果,所以制定标准的文件是首要任务,这样才能保证工作的顺利进行,也预防后期工程师众多导致的非标,影响实际复检结果。
如下数据,一定要求标准,表格如下:

生产单号BOM版本号子项物料编码分子用量分母用量位置号
PO_001BOMV1.01.01.001.0551U2,U3 U4,U5 U6
PO_001BOMV1.11.01.001.0511D2
PO_001BOMV1.21.01.001.0521C2,C4

根据上表中的生产单核和BOM版本号,基本就可以判定复检的类型,支持如下类型的复检:
1、生产单号变更复检;
2、工程变更单的复检;
3、同时检测生产单号和工程变更单;

;