using System; using MesServerWork; using MisDataFunDll; namespace MesServerFunctions { partial class FunctionMES { /// /// 保存完成(针对半自动和手动压装工位) /// /// /// private void MesRead(object e) { try { var msgEvent = (DeviceDriver_BasicData.CustomeEvetnArgs)e; string OpName = Convert.ToString(msgEvent.OpName); int tagValue = Convert.ToInt32(msgEvent.TagValue); int EngineTypeID; string EngineType; string EngineID; int PartPallet_Code; string OrderForm; string OpName1 = ""; if (tagValue == 1) { MisDataFun.LogRecording_OP(OpName, "INFO", "MIS", "PLC允许保存数据!"); int qualityMask = 1; // 读取返修上线的产品编号 MIS_BASE.Read_TagValueByTagTypeID(74, OpName, out EngineID); // 读取返修上线的工位号 MIS_BASE.Read_TagValueByTagTypeID(110, OpName, out OpName1); // PDC产线plc只写了发动机号和机型代码,其余要从数据库中读取 MisDataFun.Moby_Select_PDC(EngineID, out OrderForm, out EngineType, out EngineTypeID); // 保存过站信息 MisDataFun.WorkStartInsert_FX(OpName, OpName1, EngineID, qualityMask); //通知PLC,MES保存完成 MIS_BASE.Write_MesReadOver(OpName, true); // 写入加工合格还是不合格 根据工位合格标志写 MIS_BASE.Write_OpNameIsOk(OpName, qualityMask); MisDataFun.LogRecording_OP(OpName, "INFO", "MIS", "MES保存数据完成!"); } else { MIS_BASE.Write_MesReadOver(OpName, false); // 写入加工合格还是不合格 根据工位合格标志写 MIS_BASE.Write_OpNameIsOk(OpName, -99); // 写返修上线工位号给PLC MIS_BASE.Write_TagValueByTagTypeID(74, OpName, ""); MIS_BASE.Write_TagValueByTagTypeID(110, OpName, ""); // 写申请返修上线给PLC MIS_BASE.Write_TagValueByTagTypeID(28, OpName, false); MIS_BASE.Write_EngineTypeID_MES(OpName, 0); // 机型标志(MES) MIS_BASE.Write_EngineID_MES(OpName, ""); // 工件编号(MES) MIS_BASE.Write_EngineType_MES(OpName, ""); // 产品型号(MES) MIS_BASE.Write_OrderForm_MES(OpName, ""); // 订单号(MES) MIS_BASE.Write_MachineTime_ReadOver(OpName, false); // 托盘校验完成 MIS_BASE.Write_MesErrorType(OpName, 0); // MES报警点 MIS_BASE.Write_TagValueByTagTypeID(93, OpName, 0); // 返修上线标志 MIS_BASE.Write_TagValueByTagTypeID(28, OpName, 0); // 返修点 MIS_BASE.Write_TagValueByTagTypeID(118, OpName, 0); // 再起始工位号 MisDataFun.LogRecording_OP(OpName, "INFO", "MIS", "PLC允许保存数据取消!"); } } catch (Exception err) { ////ApplicationLog.WriteLog(err, "Function08:MesReadOver"); } } } }