using MesServerWork;
using MisDataFunDll;
using System;
using System.Threading;
//using SystemFramework;
namespace MesServerFunctions
{
partial class FunctionMES
{
///
/// 工件到位与离开时,清空MES自身信号
///
///
///
private void WorkStart(object e)
{
try
{
var msgEvent = (DeviceDriver_BasicData.CustomeEvetnArgs)e;
string OpName = Convert.ToString(msgEvent.OpName);
string tagValue = msgEvent.TagValue.ToString();
if (tagValue == "1")
{
string msg = "工件到位!";
MisDataFun.LogRecording_OP(OpName, "INFO", "MIS", msg);
MIS_BASE.Write_FalseGO(OpName, false); // 不合格放行(MES)
MIS_BASE.Write_ConfirmOkGo(OpName, false); // 合格放行(MES)
MisDataFun.MOBY_TrayStart_Update(OpName); // 记录托盘到达时间
}
else
{
string msg = "工件离开!";
MisDataFun.LogRecording_OP(OpName, "INFO", "MIS", msg);
// 清除工位数据
MIS_BASE.Write_EngineTypeGetOver_MES(OpName, false); // 传递机型(MES)
MIS_BASE.Write_MesWorkFinish(OpName, false); // 工作完成(MES)
MIS_BASE.Write_FalseGO(OpName, false); // 不合格放行(MES)
MIS_BASE.Write_ConfirmOkGo(OpName, false); // 合格放行(MES)
MIS_BASE.Write_FixAllow(OpName, false); // 允许PLC拧紧工作(MES)
MIS_BASE.Write_FixOver(OpName, false); // 拧紧结束确认(MES)
MIS_BASE.Write_ProcessCode(OpName, 0); // 拧紧序号(MES)
MIS_BASE.Write_BoltCode(OpName, 0); // 套筒号(MES)
MIS_BASE.Write_MesReadOver(OpName, false); // MES保存完数据(MES)
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); // 清空已扫Pack码
MIS_BASE.Write_TagValueByTagTypeID(77,OpName,0); // 拧紧序号
MIS_BASE.Write_TagValueByTagTypeID(88,OpName,0); // 套筒号
MIS_BASE.Write_NotAllowWork(OpName, false); // 不允许工作
MIS_BASE.Write_MesErrorType(OpName, 0); // MES报警点
MisDataFun.TightenStation_ClearTempTables(OpName); // 清空拧紧+物料临时表
}
}
catch (Exception err)
{
MisDataFun.LogRecording_OP("Function1051", "INFO", "WorkStart", err.Message.ToString());
}
}
}
}