public void AddTaskFormMes(int taskii) { if (taskii == 0)//派工单 { for (int ii = 0; ii < TaskDataObj.m_workorderlist.Count; ii++) { LineDevice.CNC cnc = MainForm.cnclist.Find( delegate(LineDevice.CNC temp) { return(temp.BujianID == TaskDataObj.m_workorderlist[ii].EQUIP_CODE); } ); if (cnc != null) { cnc.NcTaskManage.AddMCTask(TaskDataObj.m_workorderlist[ii]); } } } else if (taskii == 1)//CNC切入切出命令 { for (int ii = 0; ii < TaskDataObj.m_equipcmdlist.Count; ii++) { LineDevice.CNC cnc = MainForm.cnclist.Find( delegate(LineDevice.CNC temp) { return(temp.BujianID == TaskDataObj.m_equipcmdlist[ii].EQUIP_CODE); } ); if (cnc != null) { cnc.CNCCMDChange(TaskDataObj.m_equipcmdlist[ii].EQUIP_CMD.ToString()); } } } }
public static void GatherAlarmData(SAlarmEvent almEV, short clientNo) { AlarmData alm = new AlarmData(); alm.time = DateTime.Now; alm.isOnOff = almEV.begin; alm.alarmNo = almEV.alarmNo; alm.alarmTxt = System.Text.Encoding.Default.GetString(almEV.alarmText).Trim('\0'); LineDevice.CNC result = MainForm.cnclist.Find( delegate(LineDevice.CNC temp) { return(temp.HCNCShareData.sysData.clientNo == clientNo); } ); if (result != null) { if (MainForm.m_CheckHander != null && MainForm.m_CheckHander.AlarmSendDataEvenHandle != null) { EquipmentCheck.AlarmSendData SendMeg = new EquipmentCheck.AlarmSendData(); // SendMeg.alardat = new ScadaHncData.AlarmData(); SendMeg.NeedFindTeX = false; SendMeg.BujianID = result.BujianID; SendMeg.alardat = alm; MainForm.m_CheckHander.AlarmSendDataEvenHandle.BeginInvoke(null, SendMeg, null, null); } if (result.HCNCShareData.alarmList.Count == result.HCNCShareData.AlmLstLen) { result.HCNCShareData.alarmList.RemoveRange(0, result.HCNCShareData.AlmLstLen / 2); } UpdateCurrentAlarmLst(result.HCNCShareData, alm); } else if (PLCDataShare.m_plclist != null && PLCDataShare.m_plclist.Count > 0 && PLCDataShare.m_plclist[0].m_hncPLCCollector != null && clientNo == Collector.CollectHNCPLC.m_clientNo)//HNC8 PLC报警 { if (MainForm.m_CheckHander != null && MainForm.m_CheckHander.AlarmSendDataEvenHandle != null) { EquipmentCheck.AlarmSendData SendMeg = new EquipmentCheck.AlarmSendData(); // SendMeg.alardat = new ScadaHncData.AlarmData(); SendMeg.NeedFindTeX = false; SendMeg.BujianID = PLCDataShare.m_plclist[0].m_hncPLCCollector.EQUIP_CODE; SendMeg.alardat = alm; MainForm.m_CheckHander.AlarmSendDataEvenHandle.BeginInvoke(null, SendMeg, null, null); } } }
/******************************************************************** * created: 2015/10/15 * created: 15:10:2015 14:45 * filename: F:\SCADA\SCADA\WindowsForm\UserControlTaskData.cs * file path: F:\SCADA\SCADA\WindowsForm * file base: UserControlTaskData * file ext: cs * author: * * purpose: 读取所有派工单中对应需要发送的G代码和作业指导书等 *********************************************************************/ private bool getCNCTaskData() { if (TaskDb == null || TaskDb.Rows.Count < 0) { return(false); } for (int i = 0; i < TaskDb.Rows.Count; i++) { SCADA.LogData.EventHandlerSendParm SendParm = new SCADA.LogData.EventHandlerSendParm(); SendParm.Node1NameIndex = (int)SCADA.LogData.Node1Name.Equipment_CNC; SendParm.LevelIndex = (int)SCADA.LogData.Node2Level.MESSAGE; SendParm.EventID = ((int)SCADA.LogData.Node2Level.MESSAGE).ToString(); SendParm.Keywords = ""; // if (checkBox_AoutoSendTask.Checked)//自动派发 // { // if (sendTaskData2CNC(TaskDataObj.m_workorderlist[i].EQUIP_CODE, TaskDataObj.m_workorderlist[i].OP_DOC_PATH, i, checkBox_AoutoSendTask.Checked)) // { // SendParm.Keywords = "派工单自动派发成功"; // } // else // { // SendParm.Keywords = "派工单自动派发失败"; // } // } if (gridRowIsChecked(i)) //选中发送 { System.Data.DataRow node = null; LineDevice.CNC cnc = MainForm.cnclist.Find( delegate(LineDevice.CNC temp) { return(temp.BujianID == TaskDb.Rows[i][(int)NCTaskDel.NodeName.机台编号].ToString()); } ); if (cnc != null) { cnc.NcTaskManage.GetDISPATCHSendOrRepor(true, out node); if (node != null) { if (!sendTaskData2CNC(node[(int)NCTaskDel.NodeName.机台编号].ToString(), node[(int)NCTaskDel.NodeName.NC作业指导书路径].ToString(), i, checkBox_AoutoSendTask.Checked)) { SendParm.Keywords = "派工单手动派发失败"; } else { SendParm.Keywords = "派工单手动派发成功"; dataGridViewTask.Rows[i].Selected = true; } } else { SendParm.Keywords = "任务已经派发"; } } else { SendParm.Keywords = "没有找到派工单对应机台 派工单手动派发失败"; } } if (SendParm.Keywords.Length > 0) { if (checkBox_XuNiSendTask.Checked) { SendParm.EventData = TaskDb.Rows[i][(int)NCTaskDel.NodeName.机台编号].ToString() + "虚拟派工;NC =" + TaskDb.Rows[i][(int)NCTaskDel.NodeName.NC文件路径].ToString(); } else { SendParm.EventData = TaskDb.Rows[i][(int)NCTaskDel.NodeName.机台编号].ToString() + "实际派工;NC =" + TaskDb.Rows[i][(int)NCTaskDel.NodeName.NC文件路径].ToString(); } SCADA.MainForm.m_Log.AddLogMsgHandler.BeginInvoke(this, SendParm, null, null); } } return(true); }