Ejemplo n.º 1
0
        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);
            }
        }
Ejemplo n.º 2
0
        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);
            }
        }
Ejemplo n.º 3
0
        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();
        }
Ejemplo n.º 4
0
        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;
                }
            }
        }
Ejemplo n.º 5
0
        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)
            {
            }
        }
Ejemplo n.º 6
0
        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);
            }
        }
Ejemplo n.º 7
0
        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);
            }
        }
Ejemplo n.º 8
0
        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);
            }
        }
Ejemplo n.º 9
0
        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);
            }
        }
Ejemplo n.º 10
0
        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);
            }
        }
Ejemplo n.º 11
0
        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);
            }
        }