private void timer_Refresh_Tick(object sender, EventArgs e) { Frm_Wait_Load(this, null); // this.Text = TxtData.DataBase.Upload.ToString(); if (IsUpload) { PP_process.Caption = "请等待"; PP_process.Description = "正在上传..."; return; } if (TxtData.PublicData.ErrorCode != 0) { if (TxtData.PublicData.ErrorCode == 40) { if (!NeedUpload) { this.timer_Refresh.Enabled = false; this.Close(); return; } } else { PP_process.Caption = "报错"; PP_process.Description = "信息:" + Error[TxtData.PublicData.ErrorCode];//.ToString(); timer_Refresh.Enabled = false; return; } } if (NeedUpload && TxtData.DataBase.InterfaceType == 9) { PP_process.Caption = "提示:"; PP_process.Description = "信息:下位机处在等待界面"; return; } PP_process.Caption = "请等待"; PP_process.Description = "程序正在运行..."; #region 需要上传 if (TxtData.DataBase.Upload && NeedUpload) { PP_process.Caption = "请等待"; PP_process.Description = "正在保存文件..."; if (File.Exists(Application.StartupPath + "\\Txt\\Recipe.txt")) { File.Delete(Application.StartupPath + "\\Txt\\Recipe.txt"); } if (File.Exists(Application.StartupPath + "\\Txt\\Configure.txt")) { File.Delete(Application.StartupPath + "\\Txt\\Configure.txt"); } if (File.Exists(Application.StartupPath + "\\Txt\\Preset.txt")) { File.Delete(Application.StartupPath + "\\Txt\\Preset.txt"); } if (File.Exists(Application.StartupPath + "\\Txt\\Action.txt")) { File.Delete(Application.StartupPath + "\\Txt\\Action.txt"); } ftp = new FtpClient(TxtData.XMLConfigure.IpAddress); string Strdate = "_" + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString(); switch (TxtData.DataBase.InterfaceType) { //保存工艺 case 3: { TxtData.PublicData.ErrorCode = ftp.DownLoadPreset() ? 0 : 13; if (TxtData.PublicData.ErrorCode == 0) { TxtData.PublicData.ErrorCode = (db.ImportPreset(Application.StartupPath + "\\Txt\\Preset.txt", "StaubliPreset") == 0) ? 0 : 17; File.Copy(Application.StartupPath + "\\Txt\\Preset.txt", Application.StartupPath + "\\Log\\Preset" + Strdate + ".txt", true); } break; } //动作 case 4: { TxtData.PublicData.ErrorCode = ftp.DownLoadAction() ? 0 : 14; if (TxtData.PublicData.ErrorCode == 0) { TxtData.PublicData.ErrorCode = (db.ImportAction(Application.StartupPath + "\\Txt\\Action.txt") == 0) ? 0 : 18; File.Copy(Application.StartupPath + "\\Txt\\Action.txt", Application.StartupPath + "\\Log\\Action" + Strdate + ".txt", true); } break; } //产品 case 5: { IsUpload = true; System.Threading.ThreadPool.QueueUserWorkItem(new WaitCallback(Poll)); return; } case 10: { TxtData.Recipe.RecipeFrame = RobotKit.StaubliXML.GetXMLCarten("fFrame", SoapInstance.SoapRead.GetAppdata()); TxtData.PublicData.ErrorCode = (TxtData.Recipe.RecipeFrame != null) ? 0 : 36; if (TxtData.PublicData.ErrorCode == 0) { TxtData.PublicData.ErrorCode = db.EditRecipeFrame(RecipeName, TxtData.Recipe.RecipeFrame)? 0 : 37; } break; } case 11: { TxtData.Recipe.RecipeFrame = RobotKit.StaubliXML.GetXMLCarten("fOffset", SoapInstance.SoapRead.GetAppdata()); TxtData.PublicData.ErrorCode = (TxtData.Recipe.RecipeFrame != null) ? 0 : 36; if (TxtData.PublicData.ErrorCode == 0) { TxtData.PublicData.ErrorCode = db.EditRecipeOffset(RecipeName, TxtData.Recipe.RecipeFrame) ? 0 : 37; } break; } case 7: case 12: case 14: case 15: case 16: case 17: case 18: case 19: { TxtData.PublicData.ErrorCode = ftp.DownLoadConfigure() ? 0 : 15; if (TxtData.PublicData.ErrorCode == 0) { TxtData.PublicData.ErrorCode = db.ImportConfigure() == 0 ? 0 : 19; File.Copy(Application.StartupPath + "\\Txt\\Configure.txt", Application.StartupPath + "\\Log\\Configure" + Strdate + ".txt", true); } break; } } if (TxtData.PublicData.ErrorCode == 0) { TxtData.PublicData.ErrorCode = RobotKit.SoapInstance.SoapRead.SetAppdata("bUpload", false)?0:12; } if (TxtData.PublicData.ErrorCode == 0) { PP_process.Caption = "成功"; PP_process.Description = "信息:文件上传成功"; while (TxtData.DataBase.Upload) { System.Threading.Thread.Sleep(10); } } } #endregion }
private void BT_ReicpeFrame_Click(object sender, EventArgs e) { if (CBE_RecipeName.EditValue.ToString() == "") { MessageBox.Show("无产品"); return; } if (TxtData.SoapData.InterfaceType != 9) { MessageBox.Show("下位机请切换到主界面!"); return; } if (TxtData.SoapData.ToolMode != 1) { MessageBox.Show("请切换到手动模式!"); return; } if (TxtData.SoapData.Frame == null || TxtData.SoapData.Frame == new double[] { 0, 0, 0, 0, 0, 0 }) { MessageBox.Show("下位机CS8C坐标系错误!"); return; } if (MessageBox.Show( "下位机CS8C示教产品坐标系:\n" + "X:" + TxtData.SoapData.Frame[0].ToString() + " Y:" + TxtData.SoapData.Frame[1].ToString() + " Z:" + TxtData.SoapData.Frame[2].ToString() + "\n" + " RX:" + TxtData.SoapData.Frame[3].ToString() + " RY:" + TxtData.SoapData.Frame[4].ToString() + " RZ:" + TxtData.SoapData.Frame[5].ToString() + "\n是否继续?", "产品坐标系", MessageBoxButtons.YesNo) == DialogResult.No) { return; } //if (!SoapInstance.SoapRead.SetAppdata("sProductName", CBE_RecipeName.EditValue.ToString())) //{ // MessageBox.Show("设置下位机数据出错!"); // return; //} //if (!SoapInstance.SoapRead.SetAppdata("nVirtualKey", 274)) //{ // MessageBox.Show("设置下位机数据出错!"); // return; //} //while (TxtData.SoapData.InterfaceType == 9) //{ // System.Threading.Thread.Sleep(10); //} //TxtData.PublicData.ErrorCode = 0; //Frm_Wait frm = new Frm_Wait(CBE_RecipeName.EditValue.ToString(),true); //frm.ShowDialog(); if (db.EditRecipeFrame(CBE_RecipeName.Text, TxtData.SoapData.Frame)) { RecipeInfor(); MessageBox.Show("OK"); } else { MessageBox.Show("Error"); } }