Example #1
0
        private void tBtnStopTest_Click(object sender, EventArgs e)
        {
            // GlobalData.serialPort.TxdCommand(SerialPortControl.Command_Stop_Fire);
            tmrAutoStopFire.Enabled = false;
            GlobalData.serialPort.TxdCommand(0xF7);

            DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = GlobalData.TimerCount.ToString("f1");
            GlobalData.DataRowIndex++;
            GlobalCofigData.SystemConfig.SerialNo++;
            frmDebugInfo.StopTest();
            GlobalData.SystemStatus = SystemStatuses.SystemReady;

            //GlobalData.serialPort.TxdCommand(SerialPortControl.Command_Fall);
            if (GlobalData.DataRowIndex > 10)
            {
                try
                {
                    DataOperate.UpdateTestData();
                    menuOpenDatabase_Click(null, null);
                    NewTestData();
                    GlobalData.DataRowIndex = 0;
                }
                catch (Exception err)
                {
                    GlobalData.frmStatus.WriteLog("tBtnStopTest_Click: " + err.Message, false);
                }
            }
        }
Example #2
0
 private void MyTable_RowChanged(object sender, DataRowChangeEventArgs e)
 {
     if (beModifed && e.Row.RowState == DataRowState.Modified)
     {
         beModifed = false;
         DataOperate.UpdateTestData();
     }
 }
Example #3
0
        void DeleteData(bool flag)
        {
            try
            {
                fg.Redraw = false;
                ArrayList deletedArray = new ArrayList();

                //印尼专业版
                deleteDirectory = new ArrayList();

                int deletedIndex = 0;
                foreach (C1.Win.C1FlexGrid.Row r in fg.Rows.Selected)
                {
                    deletedIndex = r.Index - 1;
                    deletedArray.Add(deletedIndex);

                    //印尼专业版
                    try
                    {
                        string aa = (string)r["自动编号"];
                        deleteDirectory.Add(aa);
                    }
                    catch (Exception err)
                    {
                    }
                }
                for (int i = deletedArray.Count; i > 0; i--)
                {
                    DataOperate.MyTable.Rows[(int)deletedArray[i - 1]].Delete();
                }
                DataOperate.UpdateTestData();
                fg.Redraw = true;

                MessageBox.Show(Properties.Resources.DeleteRecordSuccess, Properties.Resources.HintCaption, MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception g)
            {
                fg.Redraw = true;
                MessageBox.Show(Properties.Resources.DeleteRecordErr + (char)13 + (char)10 + g.ToString(), Properties.Resources.HintCaption, MessageBoxButtons.OK);
            }
        }
Example #4
0
        private void menuOpenDatabase_Click(object sender, EventArgs e)
        {
            if (GlobalData.DataRowIndex > 0)
            {
                try
                {
                    DataOperate.UpdateTestData();
                    NewTestData();
                    GlobalData.DataRowIndex = 0;
                }
                catch (Exception err)
                {
                    GlobalData.frmStatus.WriteLog("menuOpenDatabase_Click: " + err.Message, false);
                }
            }


            // ShellExecute(this.Handle, new StringBuilder("Open"), new StringBuilder("SDAFDataBase.exe"), new StringBuilder(""), new StringBuilder(Application.StartupPath), 1);
            try
            {
                GlobalData.frmStatus.WriteLog(Properties.Resources.LogOpenDataBase);
                Process[] p = System.Diagnostics.Process.GetProcessesByName("SDAF.DataBase");
                if (p.Length == 0 && File.Exists(Application.StartupPath + @"\SDAF.DataBase.exe"))
                {
                    System.Diagnostics.Process.Start(Application.StartupPath + @"\SDAF.DataBase.exe");
                }
                else if (p.Length > 0)
                {
                    StringBuilder Str  = new StringBuilder(Properties.Resources.DataBaseName);
                    IntPtr        hWnd = WindowsDll.FindWindow(null, Str);
                    if (hWnd != null)
                    {
                        WindowsDll.SendMessage(hWnd, 0x500, 0, 0);
                    }
                }
            }
            catch
            {
                return;
            }
        }
Example #5
0
        private void btnUpdateModified_Click(object sender, EventArgs e)
        {
            try
            {
                int index = fg.Row - fg.Rows.Fixed;
                DataOperate.MyTable.Rows[index][0] = edtAutoNoaa.Text;
                DataOperate.MyTable.Rows[index][1] = edtManualNoaa.Text;
                DataOperate.MyTable.Rows[index][2] = cmbTestTypeaa.Text;

                DataOperate.MyTable.Rows[index]["实验日期"] = edtTestDate.Value;
                DataOperate.MyTable.Rows[index]["识别方式"] = edtTestMethod.Text;
                DataOperate.MyTable.Rows[index]["实验员"]  = cmbTester.Text;
                DataOperate.MyTable.Rows[index]["位置编号"] = int.Parse(edtPositionNo.Text);
                DataOperate.MyTable.Rows[index]["备注"]   = edtRemark.Text;
                DataOperate.UpdateTestData();
                MessageBox.Show(Properties.Resources.UpdateOK, Properties.Resources.HintCaption, MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception err)
            {
                MessageBox.Show(err.Message, Properties.Resources.ErrorCaption, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #6
0
        private void FormMain_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (MessageBox.Show("是否退出本系统?", "提示信息", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
            {
                e.Cancel = true;
            }
            else
            {
                if (GlobalData.DataRowIndex > 0 && MessageBox.Show("是否保存测试数据?", "提示信息", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    try
                    {
                        DataOperate.UpdateTestData();
                    }
                    catch (Exception err)
                    {
                        GlobalData.frmStatus.WriteLog("是否保存测试数据? " + err.Message, false);
                    }
                }

                tmrDisplay.Enabled = false;
            }
        }
Example #7
0
        private void tBtnStopTest_Click(object sender, EventArgs e)
        {
            tmrAutoStopTest.Enabled = false;
            StopReason dlg = new StopReason();

            dlg.ShowDialog();

            if (dlg.selectindex == 0)
            {
                DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "发火";
            }

            if (dlg.selectindex == 1)
            {
                DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "瞎火";
            }

            if (dlg.selectindex == 2)
            {
                DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "废样";
            }


            if (dlg.selectindex == 3)
            {
                System.Windows.Forms.MessageBox.Show("样品数据最少25个,正式实验已经结束!", "操作提示");
            }


            DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["温度变化"] = GlobalData.TemperatureMax;    //2014/6/30 2、解决原  温度变化和烟雾变化 在数据列中位置错误的问题。

            DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["气体变化"] = GlobalData.SmokeSensorMax;


            //{
            //    if (DataOperate.isHYGD) DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "发火";
            //    else DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "爆炸";
            //}
            //
            //{
            //    if (DataOperate.isHYGD)
            //        DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "瞎火";
            //    else
            //        DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "不爆";
            //}
            GlobalData.SmokeSensorMax = 0;
            GlobalData.TemperatureMax = 0;

            GlobalData.DataRowIndex++;



            frmDebugInfo.StopTest();
            GlobalData.SystemStatus = SystemStatuses.SystemReady;

            //GlobalData.serialPort.TxdCommand(SerialPortControl.Command_Fall);
            if (GlobalData.DataRowIndex > 10)
            {
                try
                {
                    DataOperate.UpdateTestData();
                    menuOpenDatabase_Click(null, null);
                    NewTestData();
                    GlobalData.DataRowIndex = 0;
                }
                catch (Exception err)
                {
                    GlobalData.frmStatus.WriteLog("tBtnStopTest_Click: " + err.Message, false);
                }
            }
        }
Example #8
0
        private void tBtnStopTest_Click(object sender, EventArgs e)
        {
            if (GlobalData.SystemStatus == SystemStatuses.Preparing)
            {
                btnDispStop_Click(null, null);
                return;
            }

            float oldoldTarget = 0;

            GlobalData.serialPort.TxdCommand(SerialPortControl.Command_Stop_Fire);
            if (GlobalCofigData.SystemConfig.ControlType == ControlTypes.PLC)
            {
                plc.DianhuoStop();
            }
            tmrAutoStopFire.Enabled = false;
            StopReason dlg = new StopReason();

            dlg.ShowDialog();

            if (dlg.selectindex == 0)
            {
                if (GlobalCofigData.SystemConfig.TestType == TestTypes.撞击感度)
                {
                    GlobalCofigData.SystemConfig.TargetDistance = GlobalCofigData.SystemConfig.TargetDistance + GlobalCofigData.SystemConfig.Step;
                }
                else
                {
                    if (GlobalCofigData.SystemConfig.SerialNo == 1)
                    {
                        GlobalCofigData.SystemConfig.TargetDistance = GlobalCofigData.SystemConfig.TargetDistance * 2;
                    }
                    else
                    {
                        int aa = GlobalData.DataRowIndex - 1;
                        if (aa >= 0)
                        {
                            oldoldTarget = (float)DataOperate.MyTable.Rows[aa][DataOperate.点火高度];
                        }
                        GlobalCofigData.SystemConfig.TargetDistance = GlobalCofigData.SystemConfig.TargetDistance + Math.Abs(GlobalCofigData.SystemConfig.TargetDistance - oldoldTarget) / 2;
                    }
                }


                DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "发火";

                GlobalCofigData.SystemConfig.SerialNo++;////V1.03.02LY
            }

            if (dlg.selectindex == 1)
            {
                if (GlobalCofigData.SystemConfig.TestType == TestTypes.撞击感度)
                {
                    GlobalCofigData.SystemConfig.TargetDistance = GlobalCofigData.SystemConfig.TargetDistance - GlobalCofigData.SystemConfig.Step;
                }
                else
                {
                    if (GlobalCofigData.SystemConfig.SerialNo == 1)
                    {
                        GlobalCofigData.SystemConfig.TargetDistance = GlobalCofigData.SystemConfig.TargetDistance / 2;
                    }
                    else
                    {
                        int aa = GlobalData.DataRowIndex - 1;
                        if (aa >= 0)
                        {
                            oldoldTarget = (float)DataOperate.MyTable.Rows[aa][DataOperate.点火高度];
                        }
                        GlobalCofigData.SystemConfig.TargetDistance = GlobalCofigData.SystemConfig.TargetDistance - Math.Abs(GlobalCofigData.SystemConfig.TargetDistance - oldoldTarget) / 2;
                        GlobalCofigData.SystemConfig.TargetDistance = (int)GlobalCofigData.SystemConfig.TargetDistance;//V1.14 只取整数,(如果精度为正负1mm,自动调节高度不能自动退出)
                    }
                }



                DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "瞎火";
                GlobalCofigData.SystemConfig.SerialNo++;//V1.14CS
            }

            if (dlg.selectindex == 2)
            {
                DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "废样";
            }


            if (dlg.selectindex == 3)
            {
                if (GlobalCofigData.SystemConfig.TestType == TestTypes.摩擦感度)
                {
                    //DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "预置实验结束";
                    System.Windows.Forms.MessageBox.Show("预置测试已经结束!", "操作提示");
                    GlobalCofigData.SystemConfig.TestType = TestTypes.撞击感度;
                    NewTestData();
                }
                else
                {
                    //DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "正式实验结束";
                    System.Windows.Forms.MessageBox.Show("样品数据最少25个,正式实验已经结束!", "操作提示");
                    GlobalCofigData.SystemConfig.SerialNo = 1;//V1.14CS
                }
            }

            if (GlobalData.SystemStatus == SystemStatuses.BeTesting)                                   //区分预置停止还是实验停止
            {
                DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["温度变化"] = GlobalData.TemperatureMax; //2014/6/30 2、解决原  温度变化和烟雾变化 在数据列中位置错误的问题。

                DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["气体变化"] = GlobalData.SmokeSensorMax;


                //{
                //    if (DataOperate.isHYGD) DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "发火";
                //    else DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "爆炸";
                //}
                //
                //{
                //    if (DataOperate.isHYGD)
                //        DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "瞎火";
                //    else
                //        DataOperate.MyTable.Rows[GlobalData.DataRowIndex]["实验结果"] = "不爆";
                //}
                GlobalData.SmokeSensorMax = 0;
                GlobalData.TemperatureMax = 0;

                GlobalData.DataRowIndex++;
            }

            frmDebugInfo.StopTest();
            GlobalData.SystemStatus = SystemStatuses.SystemReady;
            GlobalData.DispCotrol.Stop();
            //GlobalData.serialPort.TxdCommand(SerialPortControl.Command_Fall);
            if (GlobalData.DataRowIndex > 10)
            {
                try
                {
                    DataOperate.UpdateTestData();
                    menuOpenDatabase_Click(null, null);
                    NewTestData();
                    GlobalData.DataRowIndex = 0;
                }
                catch (Exception err)
                {
                    GlobalData.frmStatus.WriteLog("tBtnStopTest_Click: " + err.Message, false);
                }
            }


            if (dlg.selectindex < 2)
            {
                menuPrepare_Click(null, null);
            }
        }