private void Comm_IDSet() { string Hex_Data = ""; try { byte[] ASCIIBytes = System.Text.Encoding.Default.GetBytes(EquipInfo.BODY_NO + EquipInfo.ORDER_DATE + EquipInfo.CMT); for (int i = 0; i < ASCIIBytes.Length; i++) { Hex_Data = Hex_Data + ASCIIBytes[i].ToString(); } Dabom.TagAdapter.Item.WorkDataUp datup = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datup.Variables.Add("TOOL_MAX", new VariableItem { VarID = "RF_WR_VALUE", Value = Hex_Data }); System.Threading.Thread.Sleep(1000); //메세지폼에서 TAG정보를 비교한다. //frmMsg = new frmMsg("TAG", "TAG에 BODY 정보를 기록 중 입니다."); //frmMsg.ShowDialog(); } catch (Exception ex) { slog = DateTime.Now + "[frmWorkeeper] : " + ex; Global.EquipInfo.fh_Err_Log.TextFileWriteAppend(slog); } }
private void ProcessToolCheck() { try { int ArryCount = 0; commStatus = NetRemoting.Comm_IDGet(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO); if (commStatus != null) { Dictionary <string, Dabom.TagAdapter.Item.VariableItem> mVariableItems = (new Dabom.TagAdapter.StateParse(commStatus)).ToVariableItems();//DICTIONARY 넣기 string[] Tool_Value = mVariableItems["TOOL_VALUE"].Value.ToString().Split(':'); if (Tool_Value[0].Equals("") && Tool_Value.Length == 1) { ArryCount = 0; } else { ArryCount = Tool_Value.Length; } if (ArryCount != 0) { if (Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString() != "") { lblWorkType.Text = "A0001"; lblWorkValue.Text = Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString(); Dabom.TagAdapter.Item.WorkDataUp datup = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datup.Variables.Add("TOOL_VALUE", new VariableItem { VarID = "TOOL_VALUE", Value = "" }); datup.Variables.Add("TOOL_MAX", new VariableItem { VarID = "TOOL_MAX", Value = "" }); datup.Variables.Add("TOOL_MIN", new VariableItem { VarID = "TOOL_MIN", Value = "" }); datup.Variables.Add("TR_ID", new VariableItem { VarID = "TR_ID", Value = "" }); NetRemoting.Comm_IDSet(datup); tmrToolCheck.Enabled = false; } } } } catch (Exception ex) { slog = DateTime.Now + "[frmWorkDailyInspection] : " + ex; Global.EquipInfo.fh_Err_Log.TextFileWriteAppend(slog); } }
private void btn_Cancle_Click(object sender, EventArgs e) { //RESET Dabom.TagAdapter.Item.WorkDataUp datup = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datup.Variables.Add("TOOL_VALUE", new VariableItem { VarID = "TOOL_VALUE", Value = "" }); NetRemoting.Comm_IDSet(datup); // timer_Position.Enabled = false; timer_Tool_Check.Enabled = false; EquipInfo.Tool_Cancle_Rtn = "CANCLE"; //frmMsg = new frmMsg("TOOL CLOSE", ""); //frmMsg.ShowDialog(); this.Close(); }
private void TagSet() { for (int i = 0; i < dataGridView_Insp.Rows.Count; i++) { if (dataGridView_Insp.Rows[i].Cells["@@WORK_TYPE"].Value.ToString().Contains("A")) { DataSet ds = new DataSet(); Procedure.PPC_LOAD_TOOL_TYPE(EquipInfo.WORKCENTER, EquipInfo.ROUTE_NO, ref ds); if (ds.Tables[0].Rows.Count > 0) { ToolType = ds.Tables[0].Rows[0]["TOOL_TYPE"].ToString(); } if (ToolType == "ATOOL") { NetRemoting.TagSet(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO + "_ATOOL", "S"); } if (ToolType == "ATOOL2") { NetRemoting.TagSet(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO + "_ATOOL2", "S"); } Dabom.TagAdapter.Item.WorkDataUp datup = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datup.Variables.Add("TOOL_VALUE", new VariableItem { VarID = "TOOL_VALUE", Value = "" }); datup.Variables.Add("TOOL_MAX", new VariableItem { VarID = "TOOL_MAX", Value = "50" }); datup.Variables.Add("TOOL_MIN", new VariableItem { VarID = "TOOL_MIN", Value = "1" }); datup.Variables.Add("TR_ID", new VariableItem { VarID = "TR_ID", Value = "" }); NetRemoting.Comm_IDSet(datup); tmrToolCheck.Enabled = true; } } }
private void Comm_IDSet() { string Hex_Data = ""; try { byte[] ASCIIBytes = System.Text.Encoding.Default.GetBytes(EquipInfo.BODY_NO + EquipInfo.ORDER_DATE + EquipInfo.CMT); for (int i = 0; i < ASCIIBytes.Length; i++) { Hex_Data = Hex_Data + ASCIIBytes[i].ToString(); } Dabom.TagAdapter.Item.WorkDataUp datup = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datup.Variables.Add("TOOL_MAX", new VariableItem { VarID = "RF_WR_VALUE", Value = Hex_Data }); System.Threading.Thread.Sleep(1000); } catch (Exception ex) { } }
private void BindData() { DataTable dt = new DataTable(); DataSet ds; try { lbl_OrderDate.Text = EquipInfo.ORDER_DATE; lbl_Commit.Text = EquipInfo.CMT; lbl_BodyNo.Text = EquipInfo.BODY_NO; lbl_Alc.Text = EquipInfo.ALC; //TOOL CHECK 수량 조회; ds = new DataSet(); if (EquipInfo.Virtual == false) { Procedure.PPC_LOAD_TOOL(EquipInfo.WORKCENTER, EquipInfo.BODY_NO.Substring(0, 2), EquipInfo.ROUTE_NO, EquipInfo.PART_ID, EquipInfo.TR_ID, EquipInfo.ASSY_SEQ, EquipInfo.ORDER_DATE, EquipInfo.BODY_NO, EquipInfo.CMT, ref ds); } else { Procedure.PPC_VIRTUAL_LOAD_TOOL(EquipInfo.WORKCENTER, EquipInfo.BODY_NO.Substring(0, 2), EquipInfo.ROUTE_NO, EquipInfo.PART_ID, EquipInfo.TR_ID, EquipInfo.ASSY_SEQ, EquipInfo.ORDER_DATE, EquipInfo.BODY_NO, EquipInfo.CMT, ref ds); } dataGridView_Alc.RowTemplate = null; dt.Columns.Add("순서"); dt.Columns.Add("@@측정값"); dt.Columns.Add("결과"); tgdTotalCnt = int.Parse(ds.Tables[0].Rows[0]["WORK_QTY"].ToString()); ////// slog = DateTime.Now + "[frmWorkElectricTool- 작업횟수] : " + tgdTotalCnt; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// for (int i = 0; i < tgdTotalCnt; i++) { dt.Rows.Add(i + 1); } dataGridView_Alc.DataSource = dt; BinddataGridView_AlcSet(ref dataGridView_Alc); Tool_Position(); ds.Dispose(); ///////////2013.09.05 툴 체결값을 체크하기전에 한번더 PARM MAIN/MAX 값을 체크한다. /////////////// string pHigh_Value = ""; string pLow_Value = ""; pHigh_Value = NetRemoting.TagGet(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO + "_TOOL_MAX"); pLow_Value = NetRemoting.TagGet(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO + "_TOOL_MIN"); if (pHigh_Value == "0" || pHigh_Value == "" || pLow_Value == "0" || pLow_Value == "") { Dabom.TagAdapter.Item.WorkDataUp datup = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datup.Variables.Add("TOOL_MAX", new VariableItem { VarID = "TOOL_MAX", Value = High_Value }); datup.Variables.Add("TOOL_MIN", new VariableItem { VarID = "TOOL_MIN", Value = Low_Value }); NetRemoting.Comm_IDSet_Etool(datup); } ////////////////////////////////////////////////////////////////////////////////////// timer_Tool_Check.Enabled = true; ////// slog = DateTime.Now + "[frmWorkElectricTool TOOL 체결값 체크 시작] : "; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// } catch (Exception ex) { slog = DateTime.Now + "[frmWorkElectricTool] : BindData " + ex; Global.EquipInfo.fh_Err_Log.TextFileWriteAppend(slog); } }
private void dataGridView_Alc_CellClick(object sender, DataGridViewCellEventArgs e) { try { if (e.RowIndex == tgdToolOkCnt) { frmNumer frmNumer = new frmNumer(lbl_Number); frmNumer.ShowDialog(); if (lbl_Number.Text != "") { if (double.Parse(lbl_Number.Text) >= double.Parse(Low_Value) && double.Parse(lbl_Number.Text) <= double.Parse(High_Value)) { ////// slog = DateTime.Now + "[frmWorkElectricTool 측정값 OK] : dataGridView_Alc_CellClick " + lbl_Number.Text; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// dataGridView_Alc.Rows[tgdToolOkCnt].Cells["@@측정값"].Value = lbl_Number.Text; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Value = "OK"; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Style.ForeColor = Color.Blue; tgdToolOkCnt++; tgdToolRecvCnt++; //TOOL 작업 이력 INSERT Procedure.PPC_ETOOL_CHECK_HIST(EquipInfo.WORKCENTER, EquipInfo.TR_ID, EquipInfo.ROUTE_NO, EquipInfo.PART_ID, Convert.ToString(tgdToolOkCnt), lbl_Number.Text, "OK", "M"); ////// slog = DateTime.Now + "[frmWorkElectricTool OK 판정 INSERT SP] : PPC_ETOOL_CHECK_HIST " + EquipInfo.WORKCENTER + "/" + EquipInfo.TR_ID + "/" + EquipInfo.ROUTE_NO + "/" + EquipInfo.PART_ID + "/" + Convert.ToString(tgdToolOkCnt) + "/" + lbl_Number.Text + "/" + "OK" + "/" + "M"; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// Tool_Position(); } else { ////// slog = DateTime.Now + "[frmWorkElectricTool 측정값 NG] : " + double.Parse(lbl_Number.Text); Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// dataGridView_Alc.Rows[tgdToolOkCnt].Cells["@@측정값"].Value = lbl_Number.Text; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Value = "NG"; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Style.ForeColor = Color.Red; Procedure.PPC_ETOOL_CHECK_HIST(EquipInfo.WORKCENTER, EquipInfo.TR_ID, EquipInfo.ROUTE_NO, EquipInfo.PART_ID, Convert.ToString(tgdToolOkCnt + 1), lbl_Number.Text, "NG", "M"); ////// slog = DateTime.Now + "[frmWorkElectricTool NG 판정 INSERT SP] : " + EquipInfo.WORKCENTER + "/" + EquipInfo.TR_ID + "/" + EquipInfo.ROUTE_NO + "/" + EquipInfo.PART_ID + "/" + Convert.ToString(tgdToolOkCnt + 1) + "/" + lbl_Number.Text + "/" + "NG" + "/" + "M"; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// return; } if (tgdTotalCnt == tgdToolOkCnt) { //RESET Dabom.TagAdapter.Item.WorkDataUp datup = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datup.Variables.Add("TOOL_VALUE", new VariableItem { VarID = "TOOL_VALUE", Value = "" }); NetRemoting.Comm_IDSet_Etool(datup); // timer_Position.Enabled = false; timer_Tool_Check.Enabled = false; dataGridView_Alc.Refresh(); System.Threading.Thread.Sleep(1000); ////// slog = DateTime.Now + "[frmWorkElectricTool TOOL 작업 완료됨] : "; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// //frmMsg = new frmMsg("WORK_COMPLETE", "작업이 완료 되었습니다!."); //frmMsg.ShowDialog(); //frmMessageClose(); //System.Threading.Thread.Sleep(500); this.Close(); } lbl_Number.Text = ""; } } } catch (Exception ex) { slog = DateTime.Now + "[frmWorkElectricTool] : dataGridView_Alc_CellClick " + ex; Global.EquipInfo.fh_Err_Log.TextFileWriteAppend(slog); } }
private void ProcessToolCheck() { try { string Too_Value_Flag = ""; int ArryCount = 0; commStatus = NetRemoting.Comm_IDGet(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO); if (commStatus != null) { Dictionary <string, Dabom.TagAdapter.Item.VariableItem> mVariableItems = (new Dabom.TagAdapter.StateParse(commStatus)).ToVariableItems();//DICTIONARY 넣기 //------------------------- 수정 2017.02.21------------------------------------- VariableItem result = new VariableItem(); //string[] Tool_Value = mVariableItems["TOOL_VALUE"].Value.ToString().Split(':'); string[] Tool_Value = null; bool exist = mVariableItems.TryGetValue("TOOL_VALUE", out result); if (exist) { Tool_Value = mVariableItems["TOOL_VALUE"].Value.ToString().Split(':'); } //-------------------------------------------------------------------------------- //if (Tool_Value[0].Equals("") && Tool_Value.Length == 1) if (Tool_Value[0].Equals("") && Tool_Value.Length == 1) { ArryCount = 0; // 2014 11 18 유민호 수정 --------------------------------------------------------------------------- mVariableItems = null; mVariableItems = (new Dabom.TagAdapter.StateParse(commStatus)).ToVariableItems();//DICTIONARY 넣기 Tool_Value = mVariableItems["TOOL_VALUE"].Value.ToString().Split(':'); ArryCount = Tool_Value.Length; //if (Tool_Value[0].Equals("") && Tool_Value.Length == 1) if (Tool_Value.Length == 1) { ArryCount = 0; } // 여기까지---------------------------------------------------------------------------------------------- } else { ArryCount = Tool_Value.Length; } ///// slog = DateTime.Now + "[frmWorkElectricTool] : " + "mVariableItems 개수 " + Tool_Value.Length + "ArryCount 개수" + ArryCount; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ///// //if (ArryCount > tgdToolRecvCnt && ArryCount != 0) if (ArryCount > tgdToolRecvCnt && ArryCount != 0 && tgdTotalCnt != 0) { if (Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString() != "") { Too_Value_Flag = Tool_Value[ArryCount - 1].ToString().Split('_')[0].ToString(); //// slog = DateTime.Now + "[ArryCount & tgdToolRecvCnt & tgdTotalCnt] : " + ArryCount + " // " + tgdTotalCnt + " // " + tgdToolRecvCnt + " // " + tgdToolOkCnt; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); //// if (Too_Value_Flag == "Y") { ////// slog = DateTime.Now + "[frmWorkElectricTool 측정값 OK] : " + Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString() + "@" + tgdToolRecvCnt + "@" + ArryCount; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// if (double.Parse(Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString()) >= double.Parse(Low_Value) && double.Parse(Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString()) <= double.Parse(High_Value)) { dataGridView_Alc.Rows[tgdToolOkCnt].Cells["@@측정값"].Value = Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString(); dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Value = "OK"; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Style.ForeColor = Color.Blue; tgdToolOkCnt++; Tool_Position(); } } else { ////// slog = DateTime.Now + "[frmWorkElectricTool 측정값 NG] : " + dataGridView_Alc.Rows[tgdToolOkCnt].Cells["@@측정값"].Value; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// dataGridView_Alc.Rows[tgdToolOkCnt].Cells["@@측정값"].Value = Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString(); dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Value = "NG"; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Style.ForeColor = Color.Red; } tgdToolRecvCnt++; } } //그리드의 총 로우 수량과 체결 수량이 같으면 폼을 CLOSE 한다. //2017.03.24 예외파트 구별로 인한 화면 멈춤현상 수정 : 전제 그리드 카운트가 0일 때 확인하는 방법 if (tgdTotalCnt == tgdToolOkCnt || tgdTotalCnt == 0) { //RESET Dabom.TagAdapter.Item.WorkDataUp datup = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datup.Variables.Add("TOOL_VALUE", new VariableItem { VarID = "TOOL_VALUE", Value = "" }); datup.Variables.Add("TR_ID", new VariableItem { VarID = "TR_ID", Value = "" }); NetRemoting.Comm_IDSet_Etool(datup); // ////// slog = DateTime.Now + "[frmWorkElectricTool-TAG TOO_VALUE/TR_ID 초기화 함] : "; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// timer_Position.Enabled = false; timer_Tool_Check.Enabled = false; ////// slog = DateTime.Now + "[frmWorkElectricTool TOOL 체결값 체크 끝] : "; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// dataGridView_Alc.Refresh(); System.Threading.Thread.Sleep(500); ////// slog = DateTime.Now + "[frmWorkElectricTool TOOL 작업 완료됨] : "; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// //frmMsg = new frmMsg("WORK_COMPLETE", "작업이 완료 되었습니다!."); //frmMsg.ShowDialog(); //frmMessageClose(); //System.Threading.Thread.Sleep(500); this.Close(); } } } catch (Exception ex) { slog = DateTime.Now + "[frmWorkElectricTool] : ProcessToolCheck " + ex; Global.EquipInfo.fh_Err_Log.TextFileWriteAppend(slog); } }
private void TagSet() { string rTR_ID = ""; try { DataSet ds = new DataSet(); Procedure.PPC_TOOL_CHECK(EquipInfo.WORKCENTER, EquipInfo.BODY_NO.Substring(0, 2), EquipInfo.ROUTE_NO, EquipInfo.PART_ID, ref ds); if (ds.Tables[0].Rows.Count > 0) { rTR_ID = NetRemoting.TagGet(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO + "_TR_ID"); if (rTR_ID == "0" || rTR_ID == "") { High_Value = ds.Tables[0].Rows[0]["MAX_VALUE"].ToString(); Low_Value = ds.Tables[0].Rows[0]["MIN_VALUE"].ToString(); Dabom.TagAdapter.Item.WorkDataUp datupS = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datupS.Variables.Add("TOOL_MAX", new VariableItem { VarID = "TOOL_MAX", Value = High_Value }); datupS.Variables.Add("TOOL_MIN", new VariableItem { VarID = "TOOL_MIN", Value = Low_Value }); datupS.Variables.Add("TR_ID", new VariableItem { VarID = "TR_ID", Value = EquipInfo.TR_ID }); NetRemoting.Comm_IDSet_Etool(datupS); ////// slog = DateTime.Now + "[frmWorkElectricTool TAG MIN/MAX/TR_ID(재전송) 전송] : " + High_Value + "/" + Low_Value + "/" + EquipInfo.TR_ID; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// } else { High_Value = ds.Tables[0].Rows[0]["MAX_VALUE"].ToString(); Low_Value = ds.Tables[0].Rows[0]["MIN_VALUE"].ToString(); Dabom.TagAdapter.Item.WorkDataUp datupT = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datupT.Variables.Add("TOOL_MAX", new VariableItem { VarID = "TOOL_MAX", Value = High_Value }); datupT.Variables.Add("TOOL_MIN", new VariableItem { VarID = "TOOL_MIN", Value = Low_Value }); datupT.Variables.Add("TR_ID", new VariableItem { VarID = "TR_ID", Value = EquipInfo.TR_ID }); NetRemoting.Comm_IDSet_Etool(datupT); ////// slog = DateTime.Now + "[frmWorkElectricTool TAG MIN/MAX 전송] : " + High_Value + "/" + Low_Value; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// } } else { timer_Tool_Check.Enabled = false; frmMsg = new frmMsg("ERROR", "SPEC 기준정보가 없습니다."); frmMsg.ShowDialog(); timer_Tool_Check.Enabled = true; } ds.Dispose(); } catch (Exception ex) { slog = DateTime.Now + "[frmWorkElectricTool] : TagSet " + ex; Global.EquipInfo.fh_Err_Log.TextFileWriteAppend(slog); } }
private void dataGridView_Alc_CellClick(object sender, DataGridViewCellEventArgs e) { try { if (e.RowIndex == tgdToolOkCnt) { frmNumer frmNumer = new frmNumer(lbl_Number); frmNumer.ShowDialog(); if (lbl_Number.Text != "") { if (double.Parse(lbl_Number.Text) >= double.Parse(Low_Value) && double.Parse(lbl_Number.Text) <= double.Parse(High_Value)) { ////// slog = DateTime.Now + "[frmWorkTool 측정값 OK] : " + lbl_Number.Text; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// dataGridView_Alc.Rows[tgdToolOkCnt].Cells["측정값"].Value = lbl_Number.Text; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Value = "OK"; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Style.ForeColor = Color.Blue; tgdToolOkCnt++; tgdToolRecvCnt++; //TOOL 작업 이력 INSERT Procedure.PPC_TOOL_CHECK_HIST(EquipInfo.WORKCENTER, EquipInfo.TR_ID, EquipInfo.ROUTE_NO, EquipInfo.PART_ID, Convert.ToString(tgdToolOkCnt), lbl_Number.Text, "OK", "M"); ////// slog = DateTime.Now + "[frmWorkTool OK 판정 INSERT SP] : " + EquipInfo.WORKCENTER + "/" + EquipInfo.TR_ID + "/" + EquipInfo.ROUTE_NO + "/" + EquipInfo.PART_ID + "/" + Convert.ToString(tgdToolOkCnt) + "/" + lbl_Number.Text + "/" + "OK" + "/" + "M"; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// Dabom.TagAdapter.Item.WorkDataUp datup = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); commStatus = NetRemoting.Comm_IDGet(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO); Dictionary <string, Dabom.TagAdapter.Item.VariableItem> mVariableItems = (new Dabom.TagAdapter.StateParse(commStatus)).ToVariableItems();//DICTIONARY 넣기 string[] Tool_Value = mVariableItems["TOOL_VALUE"].Value.ToString().Split(':'); datup.Variables.Add("TOOL_ASSY_POINT", new VariableItem { VarID = "TOOL_ASSY_POINT", Value = tgdToolOkCnt + 1 }); if (Tool_Value[0].Equals("") && Tool_Value.Length == 1) { datup.Variables.Add("TOOL_VALUE", new VariableItem { VarID = "TOOL_VALUE", Value = "Y_" + lbl_Number.Text }); } else { string strToolValue = ""; for (int i = 0; i < Tool_Value.Length; i++) { if (i == 0) { strToolValue = Tool_Value[i]; } else { strToolValue = strToolValue + ":" + Tool_Value[i]; } } datup.Variables.Add("TOOL_VALUE", new VariableItem { VarID = "TOOL_VALUE", Value = strToolValue + ":Y_" + lbl_Number.Text }); } NetRemoting.Comm_IDSet(datup); Tool_Position(); } else { ////// slog = DateTime.Now + "[frmWorkTool 측정값 NG] : " + double.Parse(lbl_Number.Text); Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// dataGridView_Alc.Rows[tgdToolOkCnt].Cells["측정값"].Value = lbl_Number.Text; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Value = "NG"; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Style.ForeColor = Color.Red; Procedure.PPC_TOOL_CHECK_HIST(EquipInfo.WORKCENTER, EquipInfo.TR_ID, EquipInfo.ROUTE_NO, EquipInfo.PART_ID, Convert.ToString(tgdToolOkCnt + 1), lbl_Number.Text, "NG", "M"); ////// slog = DateTime.Now + "[frmWorkTool NG 판정 INSERT SP] : " + EquipInfo.WORKCENTER + "/" + EquipInfo.TR_ID + "/" + EquipInfo.ROUTE_NO + "/" + EquipInfo.PART_ID + "/" + Convert.ToString(tgdToolOkCnt + 1) + "/" + lbl_Number.Text + "/" + "NG" + "/" + "M"; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// return; } if (tgdTotalCnt == tgdToolOkCnt) { //RESET Dabom.TagAdapter.Item.WorkDataUp datup = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datup.Variables.Add("TOOL_VALUE", new VariableItem { VarID = "TOOL_VALUE", Value = "" }); NetRemoting.Comm_IDSet(datup); // timer_Position.Enabled = false; timer_Tool_Check.Enabled = false; dataGridView_Alc.Refresh(); System.Threading.Thread.Sleep(1000); ////// slog = DateTime.Now + "[frmWorkTool TOOL 작업 완료됨] : "; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// //frmMsg = new frmMsg("WORK_COMPLETE", "작업이 완료 되었습니다!."); //frmMsg.ShowDialog(); //frmMessageClose(); //System.Threading.Thread.Sleep(500); this.Close(); } lbl_Number.Text = ""; } } } catch (Exception ex) { slog = DateTime.Now + "[frmWorkTool] : " + ex; Global.EquipInfo.fh_Err_Log.TextFileWriteAppend(slog); } }
private void ProcessToolCheck() { try { string Too_Value_Flag = ""; int ArryCount = 0; commStatus = NetRemoting.Comm_IDGet(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO); if (commStatus != null) { Dictionary <string, Dabom.TagAdapter.Item.VariableItem> mVariableItems = (new Dabom.TagAdapter.StateParse(commStatus)).ToVariableItems();//DICTIONARY 넣기 string[] Tool_Value = mVariableItems["TOOL_VALUE"].Value.ToString().Split(':'); if (Tool_Value[0].Equals("") && Tool_Value.Length == 1) { ArryCount = 0; // 2014 11 18 유민호 수정 --------------------------------------------------------------------------- mVariableItems = null; mVariableItems = (new Dabom.TagAdapter.StateParse(commStatus)).ToVariableItems();//DICTIONARY 넣기 Tool_Value = mVariableItems["TOOL_VALUE"].Value.ToString().Split(':'); ArryCount = Tool_Value.Length; if (Tool_Value[0].Equals("") && Tool_Value.Length == 1) { ArryCount = 0; } // 여기까지---------------------------------------------------------------------------------------------- } else { ArryCount = Tool_Value.Length; } if (ArryCount > tgdToolRecvCnt && ArryCount != 0) { if (Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString() != "") { Too_Value_Flag = Tool_Value[ArryCount - 1].ToString().Split('_')[0].ToString(); if (Too_Value_Flag == "Y") { ////// slog = DateTime.Now + "[frmWorkTool 측정값 OK] : " + Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString(); Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// if (double.Parse(Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString()) >= double.Parse(Low_Value) && double.Parse(Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString()) <= double.Parse(High_Value)) { dataGridView_Alc.Rows[tgdToolOkCnt].Cells["측정값"].Value = Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString(); dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Value = "OK"; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Style.ForeColor = Color.Blue; //TOOL 작업 이력 INSERT //Procedure.PPC_TOOL_CHECK_HIST(EquipInfo.WORKCENTER, EquipInfo.TR_ID, EquipInfo.ROUTE_NO, EquipInfo.PART_ID, tgdCurrentCnt.ToString(), ToolValue.ToString()); tgdToolOkCnt++; Tool_Position(); } } else { ////// slog = DateTime.Now + "[frmWorkTool 측정값 NG] : " + dataGridView_Alc.Rows[tgdToolOkCnt].Cells["측정값"].Value; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// dataGridView_Alc.Rows[tgdToolOkCnt].Cells["측정값"].Value = Tool_Value[ArryCount - 1].ToString().Split('_')[1].ToString(); dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Value = "NG"; dataGridView_Alc.Rows[tgdToolOkCnt].Cells["결과"].Style.ForeColor = Color.Red; } tgdToolRecvCnt++; } } //그리드의 총 로우 수량과 체결 수량이 같으면 폼을 CLOSE 한다. if (tgdTotalCnt == tgdToolOkCnt) { //RESET Dabom.TagAdapter.Item.WorkDataUp datup = new Dabom.TagAdapter.Item.WorkDataUp(EquipInfo.WORKCENTER + "_" + EquipInfo.ROUTE_NO, true); datup.Variables.Add("TOOL_VALUE", new VariableItem { VarID = "TOOL_VALUE", Value = "" }); datup.Variables.Add("TR_ID", new VariableItem { VarID = "TR_ID", Value = "" }); NetRemoting.Comm_IDSet(datup); // ////// slog = DateTime.Now + "[frmWorkTool-TAG TOO_VALUE/TR_ID 초기화 함] : "; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// timer_Position.Enabled = false; timer_Tool_Check.Enabled = false; ////// slog = DateTime.Now + "[frmWorkTool TOOL 체결값 체크 끝] : "; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// dataGridView_Alc.Refresh(); System.Threading.Thread.Sleep(500); ////// slog = DateTime.Now + "[frmWorkTool TOOL 작업 완료됨] : "; Global.EquipInfo.fhLog.TextFileWriteAppend(slog); ////// //frmMsg = new frmMsg("WORK_COMPLETE", "작업이 완료 되었습니다!."); //frmMsg.ShowDialog(); //frmMessageClose(); //System.Threading.Thread.Sleep(500); this.Close(); } } } catch (Exception ex) { slog = DateTime.Now + "[frmWorkTool] : " + ex; Global.EquipInfo.fh_Err_Log.TextFileWriteAppend(slog); } }