diff --git a/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicDataStatistics.cs b/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicDataStatistics.cs index 5917d99..4198206 100644 --- a/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicDataStatistics.cs +++ b/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicDataStatistics.cs @@ -91,6 +91,10 @@ namespace ITC81DB_2H.Controls this.buttonItemNo.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerDataStatNoDisable)); this.buttonItemNo.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerDataStatNoDown)); this.buttonItemNo.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerDataStatNoUp)); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicProduct.cs b/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicProduct.cs index 09e6e88..22c2f42 100644 --- a/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicProduct.cs +++ b/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicProduct.cs @@ -83,6 +83,10 @@ namespace ITC81DB_2H.Controls this.buttonItemNo.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerProductNoDisable)); this.buttonItemNo.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerProductNoDown)); this.buttonItemNo.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerProductNoUp)); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicTime.cs b/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicTime.cs index 81a1486..1b63fe4 100644 --- a/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicTime.cs +++ b/ITC81DB_2H/Controls/CenterBasic/ControlCenterBasicTime.cs @@ -64,6 +64,10 @@ namespace ITC81DB_2H.Controls else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { this.smartGroupBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.gerBackgroundTime)); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterConfiguration/ControlCenterConfiEthernet.cs b/ITC81DB_2H/Controls/CenterConfiguration/ControlCenterConfiEthernet.cs index c02c9d7..03bfbaf 100644 --- a/ITC81DB_2H/Controls/CenterConfiguration/ControlCenterConfiEthernet.cs +++ b/ITC81DB_2H/Controls/CenterConfiguration/ControlCenterConfiEthernet.cs @@ -160,6 +160,10 @@ namespace ITC81DB_2H.Controls //this.comboBoxEthernetMode.Items.Add("OPT3"); // 17 //this.comboBoxEthernetMode.Items.Add("HP-200"); // 18 //this.comboBoxEthernetMode.SelectedIndexChanged += new EventHandler(this.comboBoxEthernetMode_SelectedIndexChanged); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterConfiguration/ControlCenterConfiSerial.cs b/ITC81DB_2H/Controls/CenterConfiguration/ControlCenterConfiSerial.cs index 78d3fe3..67c6f6c 100644 --- a/ITC81DB_2H/Controls/CenterConfiguration/ControlCenterConfiSerial.cs +++ b/ITC81DB_2H/Controls/CenterConfiguration/ControlCenterConfiSerial.cs @@ -116,6 +116,10 @@ namespace ITC81DB_2H.Controls ////this.comboBoxSerialMode.Items.Add("User Define"); //this.comboBoxSerialMode.SelectedIndex = 0; //this.comboBoxSerialMode.SelectedIndexChanged += new EventHandler(this.comboBoxSerialMode_SelectedIndexChanged); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipEngineer.cs b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipEngineer.cs index 07b2e61..faa655b 100644 --- a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipEngineer.cs +++ b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipEngineer.cs @@ -186,6 +186,10 @@ namespace ITC81DB_2H.Controls this.buttonBarcode.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerOFF)); this.buttonCommunicationOption.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerON)); this.buttonCommunicationOption.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerOFF)); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipFunctionSetting.cs b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipFunctionSetting.cs index 7f2b4eb..765d584 100644 --- a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipFunctionSetting.cs +++ b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipFunctionSetting.cs @@ -397,6 +397,10 @@ namespace ITC81DB_2H.Controls this.buttonCommunicationLog.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerON)); this.buttonCommunicationLog.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerOFF)); #endregion + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -492,6 +496,7 @@ namespace ITC81DB_2H.Controls this.comboBoxLanguage.Items.Clear(); this.comboBoxLanguage.Items.Add("한국어"); this.comboBoxLanguage.Items.Add("English"); + //this.comboBoxLanguage.Items.Add("Español"); //this.comboBoxLanguage.Items.Add("Deutsch"); //this.comboBoxLanguage.Items.Add("中文"); //this.comboBoxLanguage.Items.Add("русский"); @@ -829,10 +834,12 @@ namespace ITC81DB_2H.Controls else if (this.comboBoxLanguage.SelectedIndex == 1) this.ParentForm.ParentForm.SystemConfig1.Language = Define.E_LanguageID.English; else if (this.comboBoxLanguage.SelectedIndex == 2) - this.ParentForm.ParentForm.SystemConfig1.Language = Define.E_LanguageID.German; + this.ParentForm.ParentForm.SystemConfig1.Language = Define.E_LanguageID.Spanish; else if (this.comboBoxLanguage.SelectedIndex == 3) - this.ParentForm.ParentForm.SystemConfig1.Language = Define.E_LanguageID.Chinese; + this.ParentForm.ParentForm.SystemConfig1.Language = Define.E_LanguageID.German; else if (this.comboBoxLanguage.SelectedIndex == 4) + this.ParentForm.ParentForm.SystemConfig1.Language = Define.E_LanguageID.Chinese; + else if (this.comboBoxLanguage.SelectedIndex == 5) this.ParentForm.ParentForm.SystemConfig1.Language = Define.E_LanguageID.Russian; else this.ParentForm.ParentForm.SystemConfig1.Language = Define.E_LanguageID.Korean; diff --git a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipInitialize.cs b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipInitialize.cs index 7f4b501..977703c 100644 --- a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipInitialize.cs +++ b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipInitialize.cs @@ -95,6 +95,10 @@ namespace ITC81DB_2H.Controls this.buttonMainBoard.Text = "Mainboard"; this.buttonLcd.Text = "Initialisierung"; this.buttonSystemInitialization.Text = "System"; + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -346,6 +350,11 @@ namespace ITC81DB_2H.Controls this.labelMessage1.Text = "Bitte klicken Sie unten auf die Schaltfläche 'Initialisierung'"; this.labelMessage2.Text = ""; break; + case Define.E_LanguageID.Spanish: + this.labelMessage1.Font = new Font("새굴림", 12, FontStyle.Regular); + this.labelMessage1.Text = ""; + this.labelMessage2.Text = ""; + break; default: break; } @@ -380,6 +389,11 @@ namespace ITC81DB_2H.Controls this.labelMessage1.Text = "Initialisierung wird ausgeführt..."; this.labelMessage2.Text = ""; break; + case Define.E_LanguageID.Spanish: + this.labelMessage1.Font = new Font("새굴림", 12, FontStyle.Regular); + this.labelMessage1.Text = ""; + this.labelMessage2.Text = ""; + break; default: break; } @@ -419,6 +433,11 @@ namespace ITC81DB_2H.Controls this.labelMessage2.Font = new Font("새굴림", 12, FontStyle.Regular); this.labelMessage2.Text = "Mit dem Hauptschalter aus- und einschalten"; break; + case Define.E_LanguageID.Spanish: + this.labelMessage1.Font = new Font("새굴림", 12, FontStyle.Regular); + this.labelMessage1.Text = ""; + this.labelMessage2.Text = ""; + break; default: break; } diff --git a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUpdate.cs b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUpdate.cs index 42fbc87..e34e3b3 100644 --- a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUpdate.cs +++ b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUpdate.cs @@ -73,6 +73,10 @@ namespace ITC81DB_2H.Controls } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -345,6 +349,11 @@ namespace ITC81DB_2H.Controls this.labelMessage2.Font = new Font("새굴림", 12, FontStyle.Regular); this.labelMessage2.Text = "Пожалуйста, проверьте свою главную доску"; break; + case Define.E_LanguageID.Spanish: + this.labelMessage1.Font = new Font("새굴림", 12, FontStyle.Regular); + this.labelMessage1.Text = ""; + this.labelMessage2.Text = ""; + break; default: break; } @@ -393,6 +402,11 @@ namespace ITC81DB_2H.Controls this.labelMessage2.Font = new Font("새굴림", 12, FontStyle.Regular); this.labelMessage2.Text = "Нажмите нижнюю кнопку после вставки"; break; + case Define.E_LanguageID.Spanish: + this.labelMessage1.Font = new Font("새굴림", 12, FontStyle.Regular); + this.labelMessage1.Text = ""; + this.labelMessage2.Text = ""; + break; default: break; } @@ -432,6 +446,11 @@ namespace ITC81DB_2H.Controls this.labelMessage2.Font = new Font("새굴림", 12, FontStyle.Regular); this.labelMessage2.Text = "Не отключайте USB"; break; + case Define.E_LanguageID.Spanish: + this.labelMessage1.Font = new Font("새굴림", 12, FontStyle.Regular); + this.labelMessage1.Text = ""; + this.labelMessage2.Text = ""; + break; default: break; } @@ -472,6 +491,11 @@ namespace ITC81DB_2H.Controls this.labelMessage2.Font = new Font("새굴림", 12, FontStyle.Regular); this.labelMessage2.Text = "Выключите питание и затем включите питание"; break; + case Define.E_LanguageID.Spanish: + this.labelMessage1.Font = new Font("새굴림", 12, FontStyle.Regular); + this.labelMessage1.Text = ""; + this.labelMessage2.Text = ""; + break; default: break; } diff --git a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUser.cs b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUser.cs index 2467c74..fc2d802 100644 --- a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUser.cs +++ b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUser.cs @@ -140,7 +140,11 @@ namespace ITC81DB_2H.Controls this.labelTitleExpiryDateOfPassword.Text = "Verfallsdatum(PW)"; this.labelTitleAutomaticLogoutTime.Text = "Automatische Abmeldung"; - } + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + + } else { this.labelTitleID.Text = "ID"; diff --git a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUserGroupEditor.cs b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUserGroupEditor.cs index 3075099..5daadc7 100644 --- a/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUserGroupEditor.cs +++ b/ITC81DB_2H/Controls/CenterEquipment/ControlCenterEquipUserGroupEditor.cs @@ -209,6 +209,10 @@ namespace ITC81DB_2H.Controls this.labelTitleChangeName.TextVAlign = SmartLabel.TextVerAlign.Top; this.labelTitleChangeName.Text = "Ebenennamen ändern"; #endregion + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforAS.cs b/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforAS.cs index a0802ff..02f3a61 100644 --- a/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforAS.cs +++ b/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforAS.cs @@ -66,6 +66,10 @@ namespace ITC81DB_2H.Controls } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem.cs b/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem.cs index f68a4fb..95389b5 100644 --- a/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem.cs +++ b/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem.cs @@ -61,6 +61,10 @@ namespace ITC81DB_2H.Controls } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem2.cs b/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem2.cs index 2fe667f..43ce35b 100644 --- a/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem2.cs +++ b/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem2.cs @@ -242,6 +242,14 @@ namespace ITC81DB_2H return "Keiner"; } } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + switch (numInt) + { + default: + return ""; + } + } else { switch (numInt) @@ -299,6 +307,14 @@ namespace ITC81DB_2H return "Keiner"; } } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + switch (numInt) + { + default: + return ""; + } + } else { switch (numInt) @@ -350,6 +366,14 @@ namespace ITC81DB_2H return "Keiner"; } } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + switch (numInt) + { + default: + return ""; + } + } else { switch (numInt) diff --git a/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem3.cs b/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem3.cs index 385f3d7..b270185 100644 --- a/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem3.cs +++ b/ITC81DB_2H/Controls/CenterInformation/ControlCenterInforSystem3.cs @@ -167,6 +167,14 @@ namespace ITC81DB_2H } #endregion } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + switch (num) + { + default: + return ""; + } + } else { #region else @@ -246,6 +254,14 @@ namespace ITC81DB_2H } #endregion } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + switch (num) + { + default: + return "Keiner"; + } + } else { #region else diff --git a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemBLDCMotorSetting.cs b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemBLDCMotorSetting.cs index dd7c238..1dbbe40 100644 --- a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemBLDCMotorSetting.cs +++ b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemBLDCMotorSetting.cs @@ -76,6 +76,10 @@ namespace ITC81DB_2H.Controls else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.Designer.cs b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.Designer.cs index 2b1b4f8..d249d93 100644 --- a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.Designer.cs +++ b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.Designer.cs @@ -30,6 +30,11 @@ { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ControlCenterSystemCalibration)); this.smartGroupBox1 = new SmartX.SmartGroupBox(); + this.labelTitleHelp = new SmartX.SmartLabel(); + this.labelTitleWeight = new SmartX.SmartLabel(); + this.labelTitleDeadLoadZero = new SmartX.SmartLabel(); + this.labelTitleBalanceWeight = new SmartX.SmartLabel(); + this.labelTitleDecimalPoint = new SmartX.SmartLabel(); this.smartLabel2 = new SmartX.SmartLabel(); this.labelBalanceWeight = new SmartX.SmartLabel(); this.buttonBalance = new SmartX.SmartButton(); @@ -38,13 +43,14 @@ this.radioButtonDecimalPlaces1 = new SmartX.SmartRadioButton(); this.listBoxHelp = new SmartX.SmartListBox(); this.buttonCancel = new SmartX.SmartButton(); - this.buttonZero = new SmartX.SmartButton(); + this.buttonDeadLoadZero = new SmartX.SmartButton(); this.pictureBoxStep3 = new System.Windows.Forms.PictureBox(); this.pictureBoxStep2 = new System.Windows.Forms.PictureBox(); this.labelWeightUnit = new SmartX.SmartLabel(); this.labelWeight = new SmartX.SmartLabel(); this.buttonStart = new SmartX.SmartButton(); this.pictureBoxStep1 = new System.Windows.Forms.PictureBox(); + this.timerSplashFinish = new System.Windows.Forms.Timer(); this.smartGroupBox1.SuspendLayout(); this.panel1.SuspendLayout(); this.SuspendLayout(); @@ -54,13 +60,18 @@ this.smartGroupBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(46)))), ((int)(((byte)(46))))); this.smartGroupBox1.BackPictureBox = null; this.smartGroupBox1.BackPictureBox1 = null; + this.smartGroupBox1.Controls.Add(this.labelTitleHelp); + this.smartGroupBox1.Controls.Add(this.labelTitleWeight); + this.smartGroupBox1.Controls.Add(this.labelTitleDeadLoadZero); + this.smartGroupBox1.Controls.Add(this.labelTitleBalanceWeight); + this.smartGroupBox1.Controls.Add(this.labelTitleDecimalPoint); this.smartGroupBox1.Controls.Add(this.smartLabel2); this.smartGroupBox1.Controls.Add(this.labelBalanceWeight); this.smartGroupBox1.Controls.Add(this.buttonBalance); this.smartGroupBox1.Controls.Add(this.panel1); this.smartGroupBox1.Controls.Add(this.listBoxHelp); this.smartGroupBox1.Controls.Add(this.buttonCancel); - this.smartGroupBox1.Controls.Add(this.buttonZero); + this.smartGroupBox1.Controls.Add(this.buttonDeadLoadZero); this.smartGroupBox1.Controls.Add(this.pictureBoxStep3); this.smartGroupBox1.Controls.Add(this.pictureBoxStep2); this.smartGroupBox1.Controls.Add(this.labelWeightUnit); @@ -80,6 +91,106 @@ this.smartGroupBox1.TabIndex = 176; this.smartGroupBox1.TextColor = System.Drawing.Color.Black; // + // labelTitleHelp + // + this.labelTitleHelp.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(212)))), ((int)(((byte)(212)))), ((int)(((byte)(212))))); + this.labelTitleHelp.BackPictureBox1 = null; + this.labelTitleHelp.BackPictureBox2 = this.smartGroupBox1; + this.labelTitleHelp.BorderColor = System.Drawing.Color.Black; + this.labelTitleHelp.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.labelTitleHelp.Font = new System.Drawing.Font("새굴림", 13F, System.Drawing.FontStyle.Bold); + this.labelTitleHelp.ForeColor = System.Drawing.Color.White; + this.labelTitleHelp.InitVisible = true; + this.labelTitleHelp.LineSpacing = 0F; + this.labelTitleHelp.Location = new System.Drawing.Point(62, 390); + this.labelTitleHelp.Name = "labelTitleHelp"; + this.labelTitleHelp.Size = new System.Drawing.Size(125, 51); + this.labelTitleHelp.TabIndex = 505; + this.labelTitleHelp.Text = "도움말"; + this.labelTitleHelp.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle; + this.labelTitleHelp.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; + this.labelTitleHelp.Wordwrap = false; + // + // labelTitleWeight + // + this.labelTitleWeight.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(212)))), ((int)(((byte)(212)))), ((int)(((byte)(212))))); + this.labelTitleWeight.BackPictureBox1 = null; + this.labelTitleWeight.BackPictureBox2 = this.smartGroupBox1; + this.labelTitleWeight.BorderColor = System.Drawing.Color.Black; + this.labelTitleWeight.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.labelTitleWeight.Font = new System.Drawing.Font("새굴림", 13F, System.Drawing.FontStyle.Bold); + this.labelTitleWeight.ForeColor = System.Drawing.Color.White; + this.labelTitleWeight.InitVisible = true; + this.labelTitleWeight.LineSpacing = 0F; + this.labelTitleWeight.Location = new System.Drawing.Point(391, 324); + this.labelTitleWeight.Name = "labelTitleWeight"; + this.labelTitleWeight.Size = new System.Drawing.Size(83, 40); + this.labelTitleWeight.TabIndex = 504; + this.labelTitleWeight.Text = "중량"; + this.labelTitleWeight.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle; + this.labelTitleWeight.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; + this.labelTitleWeight.Wordwrap = false; + // + // labelTitleDeadLoadZero + // + this.labelTitleDeadLoadZero.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(212)))), ((int)(((byte)(212)))), ((int)(((byte)(212))))); + this.labelTitleDeadLoadZero.BackPictureBox1 = null; + this.labelTitleDeadLoadZero.BackPictureBox2 = this.smartGroupBox1; + this.labelTitleDeadLoadZero.BorderColor = System.Drawing.Color.Black; + this.labelTitleDeadLoadZero.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.labelTitleDeadLoadZero.Font = new System.Drawing.Font("새굴림", 13F, System.Drawing.FontStyle.Bold); + this.labelTitleDeadLoadZero.ForeColor = System.Drawing.Color.White; + this.labelTitleDeadLoadZero.InitVisible = true; + this.labelTitleDeadLoadZero.LineSpacing = 0F; + this.labelTitleDeadLoadZero.Location = new System.Drawing.Point(62, 324); + this.labelTitleDeadLoadZero.Name = "labelTitleDeadLoadZero"; + this.labelTitleDeadLoadZero.Size = new System.Drawing.Size(125, 40); + this.labelTitleDeadLoadZero.TabIndex = 503; + this.labelTitleDeadLoadZero.Text = "데드로드영점"; + this.labelTitleDeadLoadZero.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle; + this.labelTitleDeadLoadZero.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; + this.labelTitleDeadLoadZero.Wordwrap = true; + // + // labelTitleBalanceWeight + // + this.labelTitleBalanceWeight.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(212)))), ((int)(((byte)(212)))), ((int)(((byte)(212))))); + this.labelTitleBalanceWeight.BackPictureBox1 = null; + this.labelTitleBalanceWeight.BackPictureBox2 = this.smartGroupBox1; + this.labelTitleBalanceWeight.BorderColor = System.Drawing.Color.Black; + this.labelTitleBalanceWeight.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.labelTitleBalanceWeight.Font = new System.Drawing.Font("새굴림", 13F, System.Drawing.FontStyle.Bold); + this.labelTitleBalanceWeight.ForeColor = System.Drawing.Color.White; + this.labelTitleBalanceWeight.InitVisible = true; + this.labelTitleBalanceWeight.LineSpacing = 0F; + this.labelTitleBalanceWeight.Location = new System.Drawing.Point(62, 278); + this.labelTitleBalanceWeight.Name = "labelTitleBalanceWeight"; + this.labelTitleBalanceWeight.Size = new System.Drawing.Size(125, 40); + this.labelTitleBalanceWeight.TabIndex = 502; + this.labelTitleBalanceWeight.Text = "분동중량"; + this.labelTitleBalanceWeight.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle; + this.labelTitleBalanceWeight.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; + this.labelTitleBalanceWeight.Wordwrap = false; + // + // labelTitleDecimalPoint + // + this.labelTitleDecimalPoint.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(212)))), ((int)(((byte)(212)))), ((int)(((byte)(212))))); + this.labelTitleDecimalPoint.BackPictureBox1 = null; + this.labelTitleDecimalPoint.BackPictureBox2 = this.smartGroupBox1; + this.labelTitleDecimalPoint.BorderColor = System.Drawing.Color.Black; + this.labelTitleDecimalPoint.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.labelTitleDecimalPoint.Font = new System.Drawing.Font("새굴림", 13F, System.Drawing.FontStyle.Bold); + this.labelTitleDecimalPoint.ForeColor = System.Drawing.Color.White; + this.labelTitleDecimalPoint.InitVisible = true; + this.labelTitleDecimalPoint.LineSpacing = 0F; + this.labelTitleDecimalPoint.Location = new System.Drawing.Point(62, 232); + this.labelTitleDecimalPoint.Name = "labelTitleDecimalPoint"; + this.labelTitleDecimalPoint.Size = new System.Drawing.Size(125, 40); + this.labelTitleDecimalPoint.TabIndex = 501; + this.labelTitleDecimalPoint.Text = "소수점"; + this.labelTitleDecimalPoint.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle; + this.labelTitleDecimalPoint.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; + this.labelTitleDecimalPoint.Wordwrap = false; + // // smartLabel2 // this.smartLabel2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(212)))), ((int)(((byte)(212)))), ((int)(((byte)(212))))); @@ -91,7 +202,7 @@ this.smartLabel2.ForeColor = System.Drawing.Color.White; this.smartLabel2.InitVisible = true; this.smartLabel2.LineSpacing = 0F; - this.smartLabel2.Location = new System.Drawing.Point(552, 290); + this.smartLabel2.Location = new System.Drawing.Point(335, 278); this.smartLabel2.Name = "smartLabel2"; this.smartLabel2.Size = new System.Drawing.Size(27, 40); this.smartLabel2.TabIndex = 496; @@ -111,9 +222,9 @@ this.labelBalanceWeight.ForeColor = System.Drawing.Color.White; this.labelBalanceWeight.InitVisible = true; this.labelBalanceWeight.LineSpacing = 0F; - this.labelBalanceWeight.Location = new System.Drawing.Point(449, 288); + this.labelBalanceWeight.Location = new System.Drawing.Point(197, 278); this.labelBalanceWeight.Name = "labelBalanceWeight"; - this.labelBalanceWeight.Size = new System.Drawing.Size(101, 40); + this.labelBalanceWeight.Size = new System.Drawing.Size(132, 40); this.labelBalanceWeight.TabIndex = 495; this.labelBalanceWeight.Text = "500.0"; this.labelBalanceWeight.TextHAlign = SmartX.SmartLabel.TextHorAlign.Right; @@ -135,7 +246,7 @@ this.buttonBalance.ForeColor = System.Drawing.Color.Black; this.buttonBalance.GroupID = 0; this.buttonBalance.InitVisible = true; - this.buttonBalance.Location = new System.Drawing.Point(464, 121); + this.buttonBalance.Location = new System.Drawing.Point(470, 232); this.buttonBalance.Mode = SmartX.SmartButton.BUTTONMODE.NORMAL; this.buttonBalance.Name = "buttonBalance"; this.buttonBalance.NestedClickEventPrevent = false; @@ -143,7 +254,7 @@ this.buttonBalance.RepeatInterval = 200; this.buttonBalance.RepeatIntervalAccelerate = null; this.buttonBalance.SafeInterval = 200; - this.buttonBalance.Size = new System.Drawing.Size(120, 44); + this.buttonBalance.Size = new System.Drawing.Size(87, 80); this.buttonBalance.SpecialFunction = SmartX.SmartButton.SPECIALFUNC.NONE; this.buttonBalance.TabIndex = 490; this.buttonBalance.TextColor = System.Drawing.Color.Black; @@ -159,9 +270,9 @@ this.panel1.BackColor = System.Drawing.Color.Black; this.panel1.Controls.Add(this.radioButtonDecimalPlaces2); this.panel1.Controls.Add(this.radioButtonDecimalPlaces1); - this.panel1.Location = new System.Drawing.Point(135, 288); + this.panel1.Location = new System.Drawing.Point(197, 232); this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(196, 40); + this.panel1.Size = new System.Drawing.Size(165, 40); // // radioButtonDecimalPlaces2 // @@ -176,7 +287,7 @@ this.radioButtonDecimalPlaces2.ImageCheckRadioButton = null; this.radioButtonDecimalPlaces2.ImageUnCheckRadioButton = null; this.radioButtonDecimalPlaces2.InitVisible = true; - this.radioButtonDecimalPlaces2.Location = new System.Drawing.Point(115, 6); + this.radioButtonDecimalPlaces2.Location = new System.Drawing.Point(84, 5); this.radioButtonDecimalPlaces2.Name = "radioButtonDecimalPlaces2"; this.radioButtonDecimalPlaces2.OutputOnly = false; this.radioButtonDecimalPlaces2.RadioBackColor = System.Drawing.Color.White; @@ -203,7 +314,7 @@ this.radioButtonDecimalPlaces1.ImageCheckRadioButton = null; this.radioButtonDecimalPlaces1.ImageUnCheckRadioButton = null; this.radioButtonDecimalPlaces1.InitVisible = true; - this.radioButtonDecimalPlaces1.Location = new System.Drawing.Point(18, 6); + this.radioButtonDecimalPlaces1.Location = new System.Drawing.Point(3, 5); this.radioButtonDecimalPlaces1.Name = "radioButtonDecimalPlaces1"; this.radioButtonDecimalPlaces1.OutputOnly = false; this.radioButtonDecimalPlaces1.RadioBackColor = System.Drawing.Color.White; @@ -224,14 +335,14 @@ this.listBoxHelp.ColumnAlign = SmartX.SmartListBox.COLUMNALIGNS.LEFT; this.listBoxHelp.ColumnDelimiter = '\0'; this.listBoxHelp.ColumnOffsets = null; - this.listBoxHelp.Font = new System.Drawing.Font("Arial", 15F, System.Drawing.FontStyle.Bold); + this.listBoxHelp.Font = new System.Drawing.Font("새굴림", 14F, System.Drawing.FontStyle.Bold); this.listBoxHelp.FontColor = System.Drawing.Color.White; this.listBoxHelp.InitVisible = true; this.listBoxHelp.ItemAddOrder = SmartX.SmartListBox.ITEMADDORDERS.BOTTOMADD; this.listBoxHelp.ItemOffsetGap = 0; this.listBoxHelp.ItemOffsetX = 0; this.listBoxHelp.ItemOffsetY = 0; - this.listBoxHelp.Location = new System.Drawing.Point(259, 351); + this.listBoxHelp.Location = new System.Drawing.Point(193, 386); this.listBoxHelp.MouseMoveEventSpace = 3; this.listBoxHelp.MouseMoveSpace = 10; this.listBoxHelp.Name = "listBoxHelp"; @@ -245,7 +356,7 @@ this.listBoxHelp.SeparationLineStyle = SmartX.SmartListBox.SEPARATIONLINETYPES.FixedSingle; this.listBoxHelp.SeparationlineVisibleBottom = true; this.listBoxHelp.SeparationlineVisibleTop = true; - this.listBoxHelp.Size = new System.Drawing.Size(314, 85); + this.listBoxHelp.Size = new System.Drawing.Size(438, 60); this.listBoxHelp.TabIndex = 486; this.listBoxHelp.Text = "smartListBox1"; // @@ -263,7 +374,7 @@ this.buttonCancel.ForeColor = System.Drawing.Color.Black; this.buttonCancel.GroupID = 0; this.buttonCancel.InitVisible = true; - this.buttonCancel.Location = new System.Drawing.Point(464, 171); + this.buttonCancel.Location = new System.Drawing.Point(563, 232); this.buttonCancel.Mode = SmartX.SmartButton.BUTTONMODE.NORMAL; this.buttonCancel.Name = "buttonCancel"; this.buttonCancel.NestedClickEventPrevent = false; @@ -271,7 +382,7 @@ this.buttonCancel.RepeatInterval = 200; this.buttonCancel.RepeatIntervalAccelerate = null; this.buttonCancel.SafeInterval = 200; - this.buttonCancel.Size = new System.Drawing.Size(120, 44); + this.buttonCancel.Size = new System.Drawing.Size(87, 80); this.buttonCancel.SpecialFunction = SmartX.SmartButton.SPECIALFUNC.NONE; this.buttonCancel.TabIndex = 185; this.buttonCancel.TextColor = System.Drawing.Color.Black; @@ -282,48 +393,51 @@ this.buttonCancel.UpImage = ((System.Drawing.Image)(resources.GetObject("buttonCancel.UpImage"))); this.buttonCancel.Click += new System.EventHandler(this.buttonCancel_Click); // - // buttonZero + // buttonDeadLoadZero // - this.buttonZero.BackPictureBox = null; - this.buttonZero.BackPictureBox1 = null; - this.buttonZero.BackPictureBox2 = null; - this.buttonZero.ButtonColor = System.Drawing.Color.Gray; - this.buttonZero.ButtonImageAutoSize = true; - this.buttonZero.ColorKeySamplePosition = new System.Drawing.Point(0, 0); - this.buttonZero.DisableImage = ((System.Drawing.Image)(resources.GetObject("buttonZero.DisableImage"))); - this.buttonZero.DownImage = ((System.Drawing.Image)(resources.GetObject("buttonZero.DownImage"))); - this.buttonZero.GroupID = 0; - this.buttonZero.InitVisible = true; - this.buttonZero.Location = new System.Drawing.Point(464, 21); - this.buttonZero.Mode = SmartX.SmartButton.BUTTONMODE.NORMAL; - this.buttonZero.Name = "buttonZero"; - this.buttonZero.NestedClickEventPrevent = false; - this.buttonZero.OutlinePixel = 1; - this.buttonZero.RepeatInterval = 200; - this.buttonZero.RepeatIntervalAccelerate = null; - this.buttonZero.SafeInterval = 200; - this.buttonZero.Size = new System.Drawing.Size(120, 44); - this.buttonZero.SpecialFunction = SmartX.SmartButton.SPECIALFUNC.NONE; - this.buttonZero.TabIndex = 217; - this.buttonZero.TextColor = System.Drawing.Color.Black; - this.buttonZero.TextDownColor = System.Drawing.Color.White; - this.buttonZero.TextHAlign = SmartX.SmartButton.TextHorAlign.Middle; - this.buttonZero.TextLocation = new System.Drawing.Point(0, 0); - this.buttonZero.TextVAlign = SmartX.SmartButton.TextVerAlign.Middle; - this.buttonZero.UpImage = ((System.Drawing.Image)(resources.GetObject("buttonZero.UpImage"))); - this.buttonZero.Click += new System.EventHandler(this.buttonZero_Click); + this.buttonDeadLoadZero.BackPictureBox = null; + this.buttonDeadLoadZero.BackPictureBox1 = null; + this.buttonDeadLoadZero.BackPictureBox2 = null; + this.buttonDeadLoadZero.ButtonColor = System.Drawing.Color.Gray; + this.buttonDeadLoadZero.ButtonImageAutoSize = true; + this.buttonDeadLoadZero.ColorKeySamplePosition = new System.Drawing.Point(0, 0); + this.buttonDeadLoadZero.DisableImage = ((System.Drawing.Image)(resources.GetObject("buttonDeadLoadZero.DisableImage"))); + this.buttonDeadLoadZero.DownImage = ((System.Drawing.Image)(resources.GetObject("buttonDeadLoadZero.DownImage"))); + this.buttonDeadLoadZero.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold); + this.buttonDeadLoadZero.ForeColor = System.Drawing.Color.White; + this.buttonDeadLoadZero.GroupID = 0; + this.buttonDeadLoadZero.InitVisible = true; + this.buttonDeadLoadZero.Location = new System.Drawing.Point(228, 326); + this.buttonDeadLoadZero.Mode = SmartX.SmartButton.BUTTONMODE.NORMAL; + this.buttonDeadLoadZero.Name = "buttonDeadLoadZero"; + this.buttonDeadLoadZero.NestedClickEventPrevent = false; + this.buttonDeadLoadZero.OutlinePixel = 1; + this.buttonDeadLoadZero.RepeatInterval = 200; + this.buttonDeadLoadZero.RepeatIntervalAccelerate = null; + this.buttonDeadLoadZero.SafeInterval = 200; + this.buttonDeadLoadZero.Size = new System.Drawing.Size(100, 35); + this.buttonDeadLoadZero.SpecialFunction = SmartX.SmartButton.SPECIALFUNC.NONE; + this.buttonDeadLoadZero.TabIndex = 217; + this.buttonDeadLoadZero.Text = "실행"; + this.buttonDeadLoadZero.TextColor = System.Drawing.Color.White; + this.buttonDeadLoadZero.TextDownColor = System.Drawing.Color.White; + this.buttonDeadLoadZero.TextHAlign = SmartX.SmartButton.TextHorAlign.Middle; + this.buttonDeadLoadZero.TextLocation = new System.Drawing.Point(0, 0); + this.buttonDeadLoadZero.TextVAlign = SmartX.SmartButton.TextVerAlign.Middle; + this.buttonDeadLoadZero.UpImage = ((System.Drawing.Image)(resources.GetObject("buttonDeadLoadZero.UpImage"))); + this.buttonDeadLoadZero.Click += new System.EventHandler(this.buttonDeadLoadZero_Click); // // pictureBoxStep3 // this.pictureBoxStep3.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxStep3.Image"))); - this.pictureBoxStep3.Location = new System.Drawing.Point(128, 21); + this.pictureBoxStep3.Location = new System.Drawing.Point(190, 17); this.pictureBoxStep3.Name = "pictureBoxStep3"; this.pictureBoxStep3.Size = new System.Drawing.Size(330, 194); // // pictureBoxStep2 // this.pictureBoxStep2.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxStep2.Image"))); - this.pictureBoxStep2.Location = new System.Drawing.Point(128, 21); + this.pictureBoxStep2.Location = new System.Drawing.Point(190, 17); this.pictureBoxStep2.Name = "pictureBoxStep2"; this.pictureBoxStep2.Size = new System.Drawing.Size(330, 194); // @@ -338,7 +452,7 @@ this.labelWeightUnit.ForeColor = System.Drawing.Color.White; this.labelWeightUnit.InitVisible = true; this.labelWeightUnit.LineSpacing = 0F; - this.labelWeightUnit.Location = new System.Drawing.Point(546, 229); + this.labelWeightUnit.Location = new System.Drawing.Point(611, 324); this.labelWeightUnit.Name = "labelWeightUnit"; this.labelWeightUnit.Size = new System.Drawing.Size(27, 40); this.labelWeightUnit.TabIndex = 189; @@ -358,9 +472,9 @@ this.labelWeight.ForeColor = System.Drawing.Color.White; this.labelWeight.InitVisible = true; this.labelWeight.LineSpacing = 0F; - this.labelWeight.Location = new System.Drawing.Point(259, 229); + this.labelWeight.Location = new System.Drawing.Point(480, 324); this.labelWeight.Name = "labelWeight"; - this.labelWeight.Size = new System.Drawing.Size(281, 40); + this.labelWeight.Size = new System.Drawing.Size(125, 40); this.labelWeight.TabIndex = 188; this.labelWeight.Text = "123"; this.labelWeight.TextHAlign = SmartX.SmartLabel.TextHorAlign.Right; @@ -381,7 +495,7 @@ this.buttonStart.ForeColor = System.Drawing.Color.Black; this.buttonStart.GroupID = 0; this.buttonStart.InitVisible = true; - this.buttonStart.Location = new System.Drawing.Point(464, 71); + this.buttonStart.Location = new System.Drawing.Point(377, 232); this.buttonStart.Mode = SmartX.SmartButton.BUTTONMODE.NORMAL; this.buttonStart.Name = "buttonStart"; this.buttonStart.NestedClickEventPrevent = false; @@ -389,7 +503,7 @@ this.buttonStart.RepeatInterval = 200; this.buttonStart.RepeatIntervalAccelerate = null; this.buttonStart.SafeInterval = 200; - this.buttonStart.Size = new System.Drawing.Size(120, 44); + this.buttonStart.Size = new System.Drawing.Size(87, 80); this.buttonStart.SpecialFunction = SmartX.SmartButton.SPECIALFUNC.NONE; this.buttonStart.TabIndex = 183; this.buttonStart.TextColor = System.Drawing.Color.Black; @@ -403,10 +517,15 @@ // pictureBoxStep1 // this.pictureBoxStep1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxStep1.Image"))); - this.pictureBoxStep1.Location = new System.Drawing.Point(128, 21); + this.pictureBoxStep1.Location = new System.Drawing.Point(190, 17); this.pictureBoxStep1.Name = "pictureBoxStep1"; this.pictureBoxStep1.Size = new System.Drawing.Size(330, 194); // + // timerSplashFinish + // + this.timerSplashFinish.Interval = 3000; + this.timerSplashFinish.Tick += new System.EventHandler(this.timerSplashFinish_Tick); + // // ControlCenterSystemCalibration // this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); @@ -431,7 +550,7 @@ private SmartX.SmartLabel labelWeight; private System.Windows.Forms.PictureBox pictureBoxStep3; private System.Windows.Forms.PictureBox pictureBoxStep2; - private SmartX.SmartButton buttonZero; + private SmartX.SmartButton buttonDeadLoadZero; private SmartX.SmartListBox listBoxHelp; private System.Windows.Forms.Panel panel1; private SmartX.SmartRadioButton radioButtonDecimalPlaces2; @@ -439,5 +558,11 @@ private SmartX.SmartButton buttonBalance; private SmartX.SmartLabel labelBalanceWeight; private SmartX.SmartLabel smartLabel2; + private SmartX.SmartLabel labelTitleDecimalPoint; + private SmartX.SmartLabel labelTitleWeight; + private SmartX.SmartLabel labelTitleDeadLoadZero; + private SmartX.SmartLabel labelTitleBalanceWeight; + private SmartX.SmartLabel labelTitleHelp; + private System.Windows.Forms.Timer timerSplashFinish; } } diff --git a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.cs b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.cs index 55fed1e..70a1f30 100644 --- a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.cs +++ b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.cs @@ -11,6 +11,7 @@ using ITC81DB_2H.DialogForms; using ITC81DB_2H.Forms; using ITC81DB_2H_ImageDll; using ITC81DB_2H.Datastore; +using SmartX; namespace ITC81DB_2H.Controls { @@ -22,6 +23,8 @@ namespace ITC81DB_2H.Controls private Color NormalColor; private Color FinishColor; + SmartSplash CalSplash = new SmartSplash(); + // 중량 조정이 완료 되었는지 확인하는 Flag private bool IsCalibrationFinish; #endregion @@ -51,10 +54,12 @@ namespace ITC81DB_2H.Controls { Class1 images = new Class1(); + this.labelTitleDeadLoadZero.TextHAlign = SmartLabel.TextHorAlign.Middle; + this.labelTitleDeadLoadZero.TextVAlign = SmartLabel.TextVerAlign.Middle; + this.buttonDeadLoadZero.Font = new Font("새굴림", 12, FontStyle.Bold); + if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.English) { - this.smartGroupBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.engBackgroundCalibration)); - this.buttonCancel.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.engCalibrationCancelDisable)); this.buttonCancel.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.engCalibrationCancelDown)); this.buttonCancel.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.engCalibrationCancelUp)); @@ -64,59 +69,79 @@ namespace ITC81DB_2H.Controls this.buttonBalance.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.engCalibrationCounterweightDisable)); this.buttonBalance.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.engCalibrationCounterweightDown)); this.buttonBalance.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.engCalibrationCounterweightUp)); - this.buttonZero.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.engCalibrationZeroDisable)); - this.buttonZero.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.engCalibrationZeroDown)); - this.buttonZero.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.engCalibrationZeroUp)); + + this.labelTitleDecimalPoint.Text = "Decimal point"; + this.labelTitleBalanceWeight.Text = "Balance"; + this.labelTitleDeadLoadZero.Font = new Font("새굴림", 10, FontStyle.Bold); + this.labelTitleDeadLoadZero.Text = "Dead Load Zero"; + this.buttonDeadLoadZero.Text = "Run"; + this.labelTitleHelp.Text = "Help"; + this.labelTitleWeight.Text = "Weight"; } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese) { - this.smartGroupBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.chnBackgroundCalibration)); - this.buttonCancel.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.chnCalibrationCancelDisable)); this.buttonCancel.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.chnCalibrationCancelDown)); this.buttonCancel.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.chnCalibrationCancelUp)); this.buttonStart.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.chnCalibrationStartDisable)); this.buttonStart.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.chnCalibrationStartDown)); this.buttonStart.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.chnCalibrationStartUp)); - this.buttonZero.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.chnCalibrationZeroDisable)); - this.buttonZero.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.chnCalibrationZeroDown)); - this.buttonZero.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.chnCalibrationZeroUp)); + + this.labelTitleDecimalPoint.Text = "小数点"; + this.labelTitleBalanceWeight.Text = "砝码重量"; + this.labelTitleDeadLoadZero.Font = new Font("새굴림", 10, FontStyle.Bold); + this.labelTitleDeadLoadZero.Text = "死荷重零"; + this.buttonDeadLoadZero.Text = "执行"; + this.labelTitleHelp.Text = "帮助"; + this.labelTitleWeight.Text = "重量"; } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Czech) { } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Russian) { - this.smartGroupBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.rusBackgroundCalibration)); - this.buttonCancel.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.rusCalibrationCancelDisable)); this.buttonCancel.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.rusCalibrationCancelDown)); this.buttonCancel.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.rusCalibrationCancelUp)); this.buttonStart.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.rusCalibrationStartDisable)); this.buttonStart.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.rusCalibrationStartDown)); this.buttonStart.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.rusCalibrationStartUp)); - this.buttonZero.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.rusCalibrationZeroDisable)); - this.buttonZero.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.rusCalibrationZeroDown)); - this.buttonZero.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.rusCalibrationZeroUp)); + + this.labelTitleDecimalPoint.Text = "Десят.точка"; + this.labelTitleBalanceWeight.Text = "Калиб.вес"; + this.labelTitleDeadLoadZero.TextHAlign = SmartLabel.TextHorAlign.Left; + this.labelTitleDeadLoadZero.TextVAlign = SmartLabel.TextVerAlign.Top; + this.labelTitleDeadLoadZero.Font = new Font("새굴림", 10, FontStyle.Bold); + this.labelTitleDeadLoadZero.Text = "Полная нагрузка равна нулю"; + this.buttonDeadLoadZero.Font = new Font("새굴림", 11, FontStyle.Bold); + this.buttonDeadLoadZero.Text = "исполнение"; + this.labelTitleHelp.Text = "Пом."; + this.labelTitleWeight.Text = "Вес"; } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { - this.smartGroupBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.gerBackgroundCalibration)); - this.buttonCancel.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerCalibrationCancelDisable)); this.buttonCancel.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerCalibrationCancelDown)); this.buttonCancel.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerCalibrationCancelUp)); this.buttonStart.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerCalibrationStartDisable)); this.buttonStart.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerCalibrationStartDown)); this.buttonStart.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerCalibrationStartUp)); - this.buttonZero.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerCalibrationZeroDisable)); - this.buttonZero.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerCalibrationZeroDown)); - this.buttonZero.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerCalibrationZeroUp)); + + this.labelTitleDecimalPoint.Text = "Dezimalpunkt"; + this.labelTitleBalanceWeight.Font = new Font("새굴림", 10, FontStyle.Bold); + this.labelTitleBalanceWeight.Text = "Gewicht der Waage"; + this.labelTitleDeadLoadZero.Font = new Font("새굴림", 10, FontStyle.Bold); + this.labelTitleDeadLoadZero.Text = "Totlast Null"; + this.buttonDeadLoadZero.Text = "Ausführung"; + this.labelTitleHelp.Text = "Hilfe"; + this.labelTitleWeight.Text = "Gewicht"; + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { - this.smartGroupBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.korBackgroundCalibration)); - this.buttonCancel.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.korCalibrationCancelDisable)); this.buttonCancel.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.korCalibrationCancelDown)); this.buttonCancel.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.korCalibrationCancelUp)); @@ -126,9 +151,14 @@ namespace ITC81DB_2H.Controls this.buttonBalance.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.korCalibrationCounterweightDisable)); this.buttonBalance.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.korCalibrationCounterweightDown)); this.buttonBalance.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.korCalibrationCounterweightUp)); - this.buttonZero.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.korCalibrationZeroDisable)); - this.buttonZero.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.korCalibrationZeroDown)); - this.buttonZero.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.korCalibrationZeroUp)); + + this.labelTitleDecimalPoint.Text = "소수점"; + this.labelTitleBalanceWeight.Text = "분동중량"; + this.labelTitleDeadLoadZero.Font = new Font("새굴림", 13, FontStyle.Bold); + this.labelTitleDeadLoadZero.Text = "데드로드영점"; + this.buttonDeadLoadZero.Text = "실행"; + this.labelTitleHelp.Text = "도움말"; + this.labelTitleWeight.Text = "중량"; } } private void DefaultSetting() @@ -137,7 +167,7 @@ namespace ITC81DB_2H.Controls this.FinishColor = Color.Lime; } - private void CalibrationButtonEnable(bool btStart, bool btBalance, bool btCcancel) + public void CalibrationButtonEnable(bool btStart, bool btBalance, bool btCcancel) { this.buttonStart.Enabled = btStart; this.buttonBalance.Enabled = btBalance; @@ -171,6 +201,12 @@ namespace ITC81DB_2H.Controls } } + public void SplashStop() + { + this.CalSplash.Finish(); + this.Enabled = true; + } + private void UpdateControlsDisplay() { this.listBoxHelp.ClearAll(); @@ -194,6 +230,10 @@ namespace ITC81DB_2H.Controls { this.listBoxHelp.AddItem("Drücken Sie die Taste [Start],"); this.listBoxHelp.AddItem("um die Kalibrierung zu starten"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -226,12 +266,50 @@ namespace ITC81DB_2H.Controls } public void UpdateWeightDisplay(Define.E_EquipmentStatus status, WeightData data) { + string searchText; + bool exists; + switch (data.Status) { case Define.E_WeightStatus.CalNomal: this.labelWeight.Text = Helper.DoubleToString(data.Weight, this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces); this.labelWeight.ForeColor = this.NormalColor; - this.CalibrationButtonEnable(true, false, false); + if (this.buttonStart.Enabled == false) + { + this.CalibrationButtonEnable(true, false, false); + + this.listBoxHelp.ClearAll(); + if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.English) + { + this.listBoxHelp.AddItem("Push the start button."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese) + { + this.listBoxHelp.AddItem("需要重量调节,请点击开始按钮"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Czech) + { + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Russian) + { + this.listBoxHelp.AddItem("Нажмите кнопку [Старт],"); + this.listBoxHelp.AddItem("чтобы начать калибровку"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) + { + this.listBoxHelp.AddItem("Drücken Sie die Taste [Start],"); + this.listBoxHelp.AddItem("um die Kalibrierung zu starten"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + + } + else + { + this.listBoxHelp.AddItem("중량조정을 하시려면"); + this.listBoxHelp.AddItem("시작 버튼을 누르세요"); + } + } this.CalibrationPictureBoxVisible(true, false, false); break; case Define.E_WeightStatus.CalWait: @@ -267,6 +345,10 @@ namespace ITC81DB_2H.Controls else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { this.listBoxHelp.AddItem("Gewicht auf den Förderer legen"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -301,6 +383,10 @@ namespace ITC81DB_2H.Controls else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { this.listBoxHelp.AddItem("Die Kalibrierung ist abgeschlossen."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -318,6 +404,7 @@ namespace ITC81DB_2H.Controls } break; case Define.E_WeightStatus.CalError: + #region CalError this.listBoxHelp.ClearAll(); if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.English) { @@ -326,7 +413,8 @@ namespace ITC81DB_2H.Controls } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese) { - this.listBoxHelp.AddItem("错误发生,重试"); + this.listBoxHelp.AddItem("校准误差"); + this.listBoxHelp.AddItem("请重试"); } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Czech) { @@ -340,6 +428,10 @@ namespace ITC81DB_2H.Controls { this.listBoxHelp.AddItem("Fehler!"); this.listBoxHelp.AddItem("Bitte noch einmal versuchen"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -352,6 +444,219 @@ namespace ITC81DB_2H.Controls this.labelWeight.ForeColor = this.NormalColor; this.ParentForm.ParentForm.SetTrackingHistoryData(Define.E_TrackingOperation.Calibration, "Calibration Fail"); + #endregion + break; + case Define.E_WeightStatus.CalError_E1: + #region CalError_E1 + if (this.buttonStart.Enabled == true) + this.CalibrationButtonEnable(false, false, false); + + searchText = "E1"; + exists = this.listBoxHelp.Items.Cast().Any(item => item.Contains(searchText)); + if (exists == true) + return; + + this.listBoxHelp.ClearAll(); + if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.English) + { + this.listBoxHelp.AddItem("Error E1 : Overload"); + this.listBoxHelp.AddItem("Please check the load cell."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese) + { + this.listBoxHelp.AddItem("校准误差 E1 : 超载"); + this.listBoxHelp.AddItem("请检查称重传感器。"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Czech) + { + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Russian) + { + this.listBoxHelp.AddItem("Произошла ошибка E1 : Перегрузка"); + this.listBoxHelp.AddItem("Пожалуйста, проверьте датчик нагрузки."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) + { + this.listBoxHelp.AddItem("Fehler! E1 : Überlast"); + this.listBoxHelp.AddItem("Bitte überprüfen Sie die Wägezelle."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + + } + else + { + this.listBoxHelp.AddItem("에러_E1 : Overload"); + this.listBoxHelp.AddItem("로드셀을 확인해 주십시오"); + } + this.CalibrationButtonEnable(false, false, false); + this.CalibrationPictureBoxVisible(true, false, false); + this.labelWeight.Text = Helper.DoubleToString(data.Weight, this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces); + this.labelWeight.ForeColor = this.NormalColor; + + this.ParentForm.ParentForm.SetTrackingHistoryData(Define.E_TrackingOperation.Calibration, "Calibration Fail E1"); + #endregion + break; + case Define.E_WeightStatus.CalError_E2: + #region CalError_E2 + if (this.buttonStart.Enabled == true) + this.CalibrationButtonEnable(false, false, false); + + searchText = "E2"; + exists = this.listBoxHelp.Items.Cast().Any(item => item.Contains(searchText)); + if (exists == true) + return; + + this.listBoxHelp.ClearAll(); + if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.English) + { + this.listBoxHelp.AddItem("Error E2 : Underload"); + this.listBoxHelp.AddItem("Please check the load cell."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese) + { + this.listBoxHelp.AddItem("校准误差 E2 : 欠载"); + this.listBoxHelp.AddItem("请检查称重传感器。"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Czech) + { + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Russian) + { + this.listBoxHelp.AddItem("Произошла ошибка E2 : Недогрузка"); + this.listBoxHelp.AddItem("Пожалуйста, проверьте датчик нагрузки."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) + { + this.listBoxHelp.AddItem("Fehler! E2 : Unterlast"); + this.listBoxHelp.AddItem("Bitte überprüfen Sie die Wägezelle."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + + } + else + { + this.listBoxHelp.AddItem("에러_E2 : Underload"); + this.listBoxHelp.AddItem("로드셀을 확인해 주십시오"); + } + this.CalibrationButtonEnable(false, false, false); + this.CalibrationPictureBoxVisible(true, false, false); + this.labelWeight.Text = Helper.DoubleToString(data.Weight, this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces); + this.labelWeight.ForeColor = this.NormalColor; + + this.ParentForm.ParentForm.SetTrackingHistoryData(Define.E_TrackingOperation.Calibration, "Calibration Fail E2"); + #endregion + break; + case Define.E_WeightStatus.CalError_E3: + #region CalError_E3 + if (this.buttonStart.Enabled == true) + this.CalibrationButtonEnable(false, false, false); + + searchText = "E3"; + exists = this.listBoxHelp.Items.Cast().Any(item => item.Contains(searchText)); + if (exists == true) + return; + + this.listBoxHelp.ClearAll(); + if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.English) + { + this.listBoxHelp.AddItem("Error E3 : Please wait a moment"); + this.listBoxHelp.AddItem("until the error is cleared and"); + this.listBoxHelp.AddItem("the [Start] button is activated."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese) + { + this.listBoxHelp.AddItem("校准误差 E3"); + this.listBoxHelp.AddItem("请稍等片刻,直到错误清除且[开始]按钮激活。"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Czech) + { + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Russian) + { + this.listBoxHelp.AddItem("Произошла ошибка E3 : Пожалуйста, "); + this.listBoxHelp.AddItem("подождите немного, пока ошибка не будет"); + this.listBoxHelp.AddItem("устранена и кнопка [Старт] не станет активной."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) + { + this.listBoxHelp.AddItem("Fehler! E3 : Bitte warten Sie einen Moment,"); + this.listBoxHelp.AddItem("bis der Fehler behoben ist und die Schaltfläche"); + this.listBoxHelp.AddItem("[Start] aktiviert wird."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + + } + else + { + this.listBoxHelp.AddItem("중량조정 에러 E3"); + this.listBoxHelp.AddItem("에러가 해제되고 [Start]버튼이 활성화 될때까지"); + this.listBoxHelp.AddItem("잠시 기다려 주십시오"); + } + this.CalibrationButtonEnable(false, false, false); + this.CalibrationPictureBoxVisible(true, false, false); + this.labelWeight.Text = Helper.DoubleToString(data.Weight, this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces); + this.labelWeight.ForeColor = this.NormalColor; + + this.ParentForm.ParentForm.SetTrackingHistoryData(Define.E_TrackingOperation.Calibration, "Calibration Fail E3"); + #endregion + break; + case Define.E_WeightStatus.CalError_E5: + #region CalError_E5 + if (this.buttonStart.Enabled == true) + this.CalibrationButtonEnable(false, false, false); + + searchText = "E5"; + exists = this.listBoxHelp.Items.Cast().Any(item => item.Contains(searchText)); + if (exists == true) + return; + + this.listBoxHelp.ClearAll(); + if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.English) + { + this.listBoxHelp.AddItem("Error E5 : Please wait a moment"); + this.listBoxHelp.AddItem("until the error is cleared and"); + this.listBoxHelp.AddItem("the [Start] button is activated."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese) + { + this.listBoxHelp.AddItem("校准误差 E5"); + this.listBoxHelp.AddItem("请稍等片刻,直到错误清除且[开始]按钮激活。"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Czech) + { + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Russian) + { + this.listBoxHelp.AddItem("Произошла ошибка E5 : Пожалуйста, "); + this.listBoxHelp.AddItem("подождите немного, пока ошибка не будет"); + this.listBoxHelp.AddItem("устранена и кнопка [Старт] не станет активной."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) + { + this.listBoxHelp.AddItem("Fehler! E5 : Bitte warten Sie einen Moment,"); + this.listBoxHelp.AddItem("bis der Fehler behoben ist und die Schaltfläche"); + this.listBoxHelp.AddItem("[Start] aktiviert wird."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + + } + else + { + this.listBoxHelp.AddItem("중량조정 에러 E5"); + this.listBoxHelp.AddItem("에러가 해제되고 [Start]버튼이 활성화 될때까지"); + this.listBoxHelp.AddItem("잠시 기다려 주십시오"); + } + this.CalibrationButtonEnable(false, false, false); + this.CalibrationPictureBoxVisible(true, false, false); + this.labelWeight.Text = Helper.DoubleToString(data.Weight, this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces); + this.labelWeight.ForeColor = this.NormalColor; + + this.ParentForm.ParentForm.SetTrackingHistoryData(Define.E_TrackingOperation.Calibration, "Calibration Fail E5"); + #endregion break; default: break; @@ -375,6 +680,8 @@ namespace ITC81DB_2H.Controls this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Read, CommunicationID.MainBoard, CommunicationAddress.BalanceWeight, ""); this.UpdateControlsDisplay(); + this.SplashStop(); + this.Refresh(); } #endregion @@ -391,7 +698,7 @@ namespace ITC81DB_2H.Controls if (myKeyPad.ShowDialog() == DialogResult.OK) { - if (myKeyPad.doubleValue < 0 || myKeyPad.doubleValue > 700.0) + if (myKeyPad.doubleValue < 0.0 || myKeyPad.doubleValue > 750.0) { // 입력범위를 확인하세요 DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.ParentForm.SystemConfig1.Language); @@ -403,6 +710,7 @@ namespace ITC81DB_2H.Controls after = this.labelBalanceWeight.Text = myKeyPad.StringValue; value = Helper.StringZeroFillDigits7(this.labelBalanceWeight.Text.Replace(".", "")); + this.ParentForm.ParentForm.CurrentCalibrationItem.BalanceWeight = value; this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Write, CommunicationID.MainBoard, CommunicationAddress.BalanceWeight, value); if (before != after) @@ -411,9 +719,23 @@ namespace ITC81DB_2H.Controls } } - private void buttonZero_Click(object sender, EventArgs e) + private void buttonDeadLoadZero_Click(object sender, EventArgs e) { - this.ParentForm.ParentForm.TransferData(CommunicationCommand.Zero, CommunicationID.SubBoard1); + // 영점 옵셋 조정을 실행하시겠습니까? + DialogFormYesNo msg = new DialogFormYesNo(this.ParentForm.ParentForm.SystemConfig1.Language, 30); + if (msg.ShowDialog() == DialogResult.Yes) + { + this.CalSplash.CenterPosition = true; + this.CalSplash.AnimationInterval = 200; + this.CalSplash.LoadingImagePathname = "SmartLoading4"; + this.CalSplash.Start(); + + this.Enabled = false; + this.timerSplashFinish.Enabled = true; + + this.CalibrationButtonEnable(false, false, false); + this.ParentForm.ParentForm.TransferData(CommunicationCommand.Zero, CommunicationID.SubBoard1); + } } private void buttonStart_Click(object sender, EventArgs e) { @@ -440,6 +762,10 @@ namespace ITC81DB_2H.Controls { this.listBoxHelp.AddItem("Kalibrierungsstart"); this.listBoxHelp.AddItem("bitte warten"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -477,6 +803,10 @@ namespace ITC81DB_2H.Controls { this.listBoxHelp.AddItem("Rechnen..."); this.listBoxHelp.AddItem("bitte warten."); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -520,8 +850,16 @@ namespace ITC81DB_2H.Controls private void radioButtonDecimalPlaces_Click(object sender, EventArgs e) { + SmartX.SmartRadioButton radioButton = sender as SmartX.SmartRadioButton; + + if ((radioButton.Text == "0.0" && this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces == 1) + || (radioButton.Text == "0.00" && this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces == 2)) + return; + string value = ""; string before = "", after = ""; + int length = (int.Parse(this.ParentForm.ParentForm.CurrentCalibrationItem.BalanceWeight)).ToString().Length; + string balanceWeight = (int.Parse(this.ParentForm.ParentForm.CurrentCalibrationItem.BalanceWeight)).ToString(); //this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Read, CommunicationID.MainBoard, CommunicationAddress.ParameterRead3901, ""); this.ParentForm.ParentForm.OpenSmartFileIO(); @@ -552,12 +890,21 @@ namespace ITC81DB_2H.Controls if (this.radioButtonDecimalPlaces1.Checked == true) { this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces = 1; + + balanceWeight = balanceWeight.Remove(length - 1, 1); } else if (this.radioButtonDecimalPlaces2.Checked == true) { this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces = 2; + + balanceWeight = balanceWeight.Insert(length, "0"); } + value = Helper.StringZeroFillDigits4(this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces.ToString()); + this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Write, CommunicationID.MainBoard, CommunicationAddress.DecimalPlaces, value); + value = Helper.StringZeroFillDigits7(balanceWeight); + this.ParentForm.ParentForm.CurrentCalibrationItem.BalanceWeight = value; + this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Write, CommunicationID.MainBoard, CommunicationAddress.BalanceWeight, value); this.ParentForm.ParentForm.SaveSystemConfigurationFile1(this.ParentForm.ParentForm.SystemConfig1); this.UpdateCalibrationItemDisplay(this.ParentForm.ParentForm.CurrentSystemStatus.Equipment, this.ParentForm.ParentForm.CurrentCalibrationItem); } @@ -568,12 +915,22 @@ namespace ITC81DB_2H.Controls if (this.radioButtonDecimalPlaces1.Checked == true) { this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces = 1; + + balanceWeight = balanceWeight.Remove(length - 1, 1); } else if (this.radioButtonDecimalPlaces2.Checked == true) { this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces = 2; + + balanceWeight = balanceWeight.Insert(length, "0"); } + value = Helper.StringZeroFillDigits4(this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces.ToString()); + this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Write, CommunicationID.MainBoard, CommunicationAddress.DecimalPlaces, value); + value = Helper.StringZeroFillDigits7(balanceWeight); + this.ParentForm.ParentForm.CurrentCalibrationItem.BalanceWeight = value; + this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Write, CommunicationID.MainBoard, CommunicationAddress.BalanceWeight, value); + this.ParentForm.CenterSystemAutoZero.DetermineRange(); this.ParentForm.ParentForm.SaveSystemConfigurationFile1(this.ParentForm.ParentForm.SystemConfig1); @@ -581,9 +938,6 @@ namespace ITC81DB_2H.Controls } this.ParentForm.ParentForm.CloseSmartFileIO(); - value = Helper.StringZeroFillDigits4(this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces.ToString()); - this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Write, CommunicationID.MainBoard, CommunicationAddress.DecimalPlaces, value); - this.ParentForm.ParentForm.ReLoadProductFile(); after = this.ParentForm.ParentForm.SystemConfig1.DecimalPlaces.ToString(); @@ -591,6 +945,12 @@ namespace ITC81DB_2H.Controls if (before != after) this.ParentForm.ParentForm.SetTrackingHistoryData(Define.E_TrackingParameter.CalDecimalPoint, "", before, after); } + + private void timerSplashFinish_Tick(object sender, EventArgs e) + { + this.timerSplashFinish.Enabled = false; + this.SplashStop(); + } #endregion } } diff --git a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.resx b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.resx index 7839a44..a892936 100644 --- a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.resx +++ b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemCalibration.resx @@ -120,7 +120,7 @@ - iVBORw0KGgoAAAANSUhEUgAAAHgAAAAsCAIAAAAhGetkAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH + iVBORw0KGgoAAAANSUhEUgAAAFcAAABQCAIAAADjr36DAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ @@ -165,43 +165,52 @@ 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 - AAAASUVORK5CYII= + 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 @@ -246,64 +255,70 @@ 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 - AElFTkSuQmCC + j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAADW1JREFUeF7lnOlzVFUa + h8//AQH005Tlt5kvLjVTWjrjKMoOsogoIqsQJLjgUqWUjooSENQgMZAdsq8kSJAlWyfpdHe2XpJ09oSE + sM78A/Pcfm/a5ARiuvteCuHUr6D73HtPn99z3vOe0/c2qHlTy4JHH31q6eqVnyVuyzizp9Sxt8L5YGh3 + Uc3mE8X4emrJq3g03U6UKRSeeGX51tSSrYUN67MdK9Pql56sW3LiAdGyk3Wr0uvxhTs8PrFohek5VEwK + 8xcsWLhr37bChrWZ9dr1D57wCAv84lrsmxSo2pTXADDtggdVOMUvrsW+QeHJRSu3FDxECET4xTXeDQrz + H3lkW0bFmodgIkwXrrdnVkJAPb1szeZ8h3b44RHen1q2Rq38/NC6rIcxEER4X7X/sNqcWroiTT/28Ajv + EFDxhdUP0r4gUi09URdfWKN2l96LpMCHwRqRmZen1s9GnGlcErpWa81aQUDtLrE9KWBDzLMffTXdsTrD + sRZlOtZlNkwX9WsyjHNWpdWvCOEQFlqbFgoCKr5Er7VWEgWYwT8OX89uePNU41s5TW/nNm2eJio35TRt + PN34xqnG17IaYAE4A8S0Zi0UBFR8sV5rrTCADQYWBHjbkud8p6B5d7ErocSVUOreO1XUvFvsii9q3p7v + BAfIAEFEwFFr1kJBQO0qqtVqrZVQwAwIDl30DY7f+N/sykX/UHyRizlCOBg5YlrLVgkC94ICg8lU357f + XN42YFqcRRkav3ngfAfzgjiyncLOwhqt1lpJLECBCM9qCt66ffu/syttA2MflHnuAQUIqJ0F94LC6nQj + L+4pduW7e5kUptG7lJu3boPgi3Ntm3KbyCZ23+mAgHqnoFqrtVZQYCRx8lpmA0tAQok7qTbQOjB2t5C4 + euNWRUf//l9bdxQ4SSUkFGONsJMCBNSO/MtarbWSWIACeY4FcldR88cVniPVvqHx67fvVM77Bj+tbGGx + 2JrnNNaIdJOCfTMCAmpHno0UJBDIjphZn2XEAmvkJxUtiRe9d6Pwq3cACu+VurflG7FAQglvGWwCAQG1 + Pe+SVmuVjH6H9ksgIMkRCOwUPir3JNcFXL1Xbt66c7ly7UaOK7j/XCu8tuQaWwYBYV+ChIDanntRq7VK + dBoEbBlBwALxfpk71dFZ1zXUNzp+c8Yydu26p+9KvjtI1LDLsnvvBAG1Lcc2CqGkSJJnR7z/bGtTcBh7 + ptFZlPHrNzoGRo/XBrbmNTGboCnzQvuU2AUBtTXnglZrlYhhus5Ikucau4dvRFV6Rq5+VdUOR+aFTRQg + oLae/k2rtUpGRshw8N1pZ2HzKCMbbUmpC5BWWWiJLFsonP5NbTllIwUGkKRInhsdv3Y9VPjLfDXrkupg + UjiZFAYFG1IDBNTm7PNarVWCwtrQxnlPiWtk7Oq1aEtqQydfMZlZbKXtoAABKFRptVbJoJDpCO0XY6KQ + 1tDJPtJOClXq7ax7QWF4dGw82pLmCNhKAQJqU+Y5rdYqTaYwdGXsarSFvGArBQioTRm/arVWySoKdscC + BNRbGWe1WqskFMiOUBgcGR2LttgdCxBQG9PtpDCxRsRIwdY1AgJqY1qlVmuVoCD7hXeLXf3DI6PRlpP1 + fr5f2rdfgIB6M7VCq7VKUJC9466i5uDA8JVoyy+1Pr5c2rd3hIB64+QZrdYqhb9HEM+XvL2mpwhLV//Q + l+daCSgmF1jtoAABtcE2CkQvoyc32r473+7rHRyJvBS7ukiNG7IbzZtO0z4ldkFAbThRrtVaJXosk+KN + 0BeqDIff1xcZiHp/30flHvKrPJWwIykgCKjXU8q0WqsEBbnvynrJV+P4ouYfLnW4uvtNi39UGjv7Pjnj + kdtN9t1cQBBQ638p1WotlIQDIBhM0iSpfl+5J73e7+rq7x0Y6h001Dc41D8hKrv7B9t7Bo7XePeWujaH + EIRvNNlEAQJqfbK9FOi9gCC9YYk8BwsmSHyRixWUDVVC6PGkoRKjhvp3Cpq35DkJH1ZH0gEI7LvpiCCg + Xksu0WqtlYDABmYIbGYHLMgUmGTCI3KnSN5Sz1H8Q41tEgRtRYAgoNYdL9Zq7VA4KGCBN0aYDRU+gTJF + GaEfL6QbN50508gFNiNAEFDrfraSguF2QtMPLQvlS7Q8RORuMgZfNK0ROwQBtfZYkVYbhUznIYdhiY3w + ITkqJsNH79iInCkna5L68OVaC9EJAmpNUqFWG4XojXSaSCbgUTikpdO84G346PRoF//hRsggzAtWBybI + ZFHDIWvnCwTU6qQCrTZSiQG6ZSS/DOMZDLmNP5nn0mnJAiyW5qHMST/VmdgICUca4WTO5DT2i6RJTWRW + I3HScojF5BaiFgTU6p8soEBvGGF6v7Og+cgF79GL3neLXJLt6TeS3zJ9eqaFQ99f8FIDF2z8TiEUBXiD + FBeyU9ia52RNRbxg4TQUWko4CiA+C77WUPipQL36Y75WG6mEAq7o3A8XvfJLlGPV/h0FzRiQVRAz7ALK + W3rlKCsiQ4oNxl8a4QUcCRNMOoMj3sEx7+DVSeKtoY6BsXbUP/ZlZRtxB0cujHFSQECt+iFPq41UdIJI + ZnAwkHTZLz4r2/pT6gLHa/3gQMm1Ad46uoflKFAIE+YF+KQRCQQ4Ak7OmbkQcUSNGQ5T+xOpIKBWHc3V + aiMVnWBM6BNh/HONX36MMXNh7wgyBnMyBaKJiUMEyTk9V66lOTo1nawPADTpso8ZRzQBzgIKR3PVSoso + 0Cfm7fEav/wMwdE1fLa9TxMhLUd3FTUbtwwyp1AACmgAJOdw8qeVLZo+qWh5v8zNLlu+ZUk0xUgBAmrF + kRytNlKRn0wKec6fa3zyM4RUR6dmAJ1t65OjfL8kNTCJxAOSOUUlh+ScmUuxqwdkXBJ7aoCAWvH9aa02 + IvHxktgYGaY0M8J88D5j2V3sImWaN9FC2wRjTk1QGB3/4wf8xa5gOMXGGA4QUMsPx0qBTtAVKJDzZkmB + 746ENB7Ax+VIFgiMMSOI+XD4pDoCckllW6/UyKTgtPD3boNCDOslBNSyw6e02ogkFOgKOR8Ke0pcH1d4 + wh7uqA/LPeGJLSMpOy6gZNYHGORyT09la6+oLjAoz+/b+0bCleUtPSXuYKGz+8MSd+zrJQTUskPZWm1E + YhDwIOndExxu7Rlu6xuZWa29w56eYXdwSEYSD7Jl5C2V5uP62ZXEqnZSbKwUDmWrpYkWUJD0bj5dnXWZ + TIFYYK1Nr/MXOrtK3d1nWoIzqMwdLG7uzm/qIhYYAC6PhQIE1JKDWVptRIICIS2xcPRC+7Fqb0qt70Sd + X1TuCcqzxmpfX0qt/3i1N+mS9+iFjsPn2w9WtZEIMI+HcF5g+WSL+V6pm8kvl1e197YEBxEt8Da7sfM/ + VW2T55S5ZYhlH30wCwqZem0kmpwXtuc7ky575bFauaebFICT8Fu6nlDiIqvJ3TQMwI5A4HLEC5Y9KHDC + kYsdwcERuXB6GRy5UubulvxKI5JZog4EQwcz1eLvYqVANNIVNr9kx5kp0HW2huR2kBH/DKMZzDKtQreq + P69owadcVe3tK3B2SVhlNQSq2nrCh07U+miHRmJMCggCavG3GVptpMIDXZG944+XOuThIsMFhcQL7bxA + yTU+4pwwhhTLIWOIZ1kmuVwCSqbVkQvt0sJl7+9LI5LXsJCjBU2dtCO7ppimAxS+zVCLvk3XaiMVHhhJ + iWdSgzxZc3X1l7m7UKmrqwQ1dxU5O+l6XkPgtMN/4GyLrHASzEJBptVXZ1ulha7+IVIM/j8640G8gCnN + ytH8xgCBQyN8dCyBgCCgFh2wgIKMJB4On28zH6rMWLLrfLLChSnItCKgiPOqlqB5Xqi0BQeaO/vMN6HS + 2t2fUOTi4wAnLWhdikgQUK8cSNNqI5VQkKVuZ74zx+HPa/QXNAZEDFpI/rwGf26Dn0A4Ve/75myLpMbw + lJZpxdjijfSZUeer7gj2DgwNTy2N/l6aSig2buEQfcypGJMCgoB6+RsLKEh6I9sBAhvMWIaUNCHiNeKL + A1OGmS9JQXL77xRCKHEFCE7gTC4M324Ki0oa5yNAYK4OMd9rgoB6+etUrTYK4QE/gKBn2GDlJ7Yxo4lK + DnECp3GyeAhT4DU1RARxzmmcj1uohcVbKgFNHElmjT0QEATUQoso4IE+0TPs4YReYlUTlRxCpoGpHiY3 + wjmcDw6QGZr0wIZGNIIxCgJq4VcntdqoZdgIOfljTZystYDCjQgOTSa7iRa0a6MTBNS/P09akmLvPyC7 + r5VS++IXyeq59w8sPm7XP5G4/7U4+dLz+xLVkxv3LPrJrh/73f/C+5NvJajHn3lxYWKsN+P/vHo5Me/x + Z19UcfPmExKLjtn1m/D7Wbh+ft+huPkL1Ny5cx/7+z8XHsx96HJkSg2u8Q4BFRcXx19/XbZh4aFYH1j+ + uYRfXOMdAsb/WhUCEfe3VZte+i5nUZJd/1Dg/hEecYrfEIE48//uEhBz5sz5y9PPPbP365cO5r7yYyVL + CGupdv2fWCm1OMIX7vCIU/wKAopJgRKKiLlz5sY99o8Xntiw+9n3Dvzrs2Mv7E9+MIQXHOELd3iUiWA6 + nzfv/9NDmTPfUkNVAAAAAElFTkSuQmCC - iVBORw0KGgoAAAANSUhEUgAAAHgAAAAsCAIAAAAhGetkAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH + iVBORw0KGgoAAAANSUhEUgAAAFcAAABQCAIAAADjr36DAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ @@ -348,59 +363,68 @@ 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 @@ -445,44 +469,54 @@ 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 @@ -527,65 +561,74 @@ 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 - QmCC + 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 + ilFmwZNElAAAAABJRU5ErkJggg== - iVBORw0KGgoAAAANSUhEUgAAAHgAAAAsCAIAAAAhGetkAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH + iVBORw0KGgoAAAANSUhEUgAAAFcAAABQCAIAAADjr36DAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ @@ -630,62 +673,72 @@ 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 - mQAAAABJRU5ErkJggg== + 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 @@ -730,166 +783,25 @@ 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 RK5CYII= - + - iVBORw0KGgoAAAANSUhEUgAAAHgAAAAsCAIAAAAhGetkAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH + iVBORw0KGgoAAAANSUhEUgAAAGQAAAAjCAIAAADt3TjXAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ @@ -934,69 +846,84 @@ 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 + AePby8SNOGWQAAAAAElFTkSuQmCC + + + + + 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 + SUVORK5CYII= @@ -3092,7 +3019,7 @@ - iVBORw0KGgoAAAANSUhEUgAAAHgAAAAsCAIAAAAhGetkAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH + iVBORw0KGgoAAAANSUhEUgAAAFcAAABQCAIAAADjr36DAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ @@ -3137,40 +3064,51 @@ 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 - fwP9nGk6Thd7uAAAAABJRU5ErkJggg== + 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 + TkSuQmCC - iVBORw0KGgoAAAANSUhEUgAAAHgAAAAsCAIAAAAhGetkAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH + iVBORw0KGgoAAAANSUhEUgAAAFcAAABQCAIAAADjr36DAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ @@ -3215,63 +3153,67 @@ RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK - j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAC99JREFUaEPtm9lzFccV - h+f/AAH2m13lt+SBIiRVxGWcYscIsxjH2AGELYIJhtiYOLGTKiokERYUi0AIARICtEusQYDQgrarFa1X - K2i5upKuFvQP5Js5fUdDaxtdQeXldv1qmDnTffr012e65w5gLHq1LHn77WUbt2z+MebLpNsHc0sO3a0I - y6UOZBXuuZQFumUbtoBRAQ2WV0AvXbspKjEnKqNsR0pp5JWSjYlPN1wKy60+Sny6+WoJ6AAIxqVrIxVW - qyjQi5csWb3/yN6Msm3JJVr7sEIQGIEJUsAKYQV61f7vdqWVMidag7BCFjBBClghbIJeum7znvQw5dcv - kAIWvCboxW+9FXXl9tak8IrxRgTYqKt3gGws27htd2qY8hvUrtQSIBub/hazPVm/514bbSUGZV1q1d60 - JsIISqvgUpoTpFUIQeCN/PGEsSshK/Kyfs+lzFASzZVo0+WSyMslm6+YR86xCHGt/nxkj9yeS6dFYhDZ - vaOpPUwpq5XTj9OV089cBV4gG9Gpj0N2RENCAe6Wq6Xbk0o/SS7bnly6LamUS4xmlFYdrdVcZTpxIJC5 - tCmInTmm061Xza5lvqX3CQ+WE9sDdabUx0E/tivqz5M1baNT84196YXaDfciAoImph3Xyj6/Xv6HmxW7 - blZ8caP89yllcCfo+UeJBBAdMXJmUcS5EOdIR3T36bUy+uXIZBMSdrtrjnCXmrQlIQhY6ksTLndYRoTl - sxRzCKYrxyicIc1VQDai055oVvcieuIgROB6Ovs7+gMXS1v/mFn5ZboHC0FvTZpvUtiMcIXDndfLReKc - 3iEOWdCcetx4Or/xVH7j/oxKQlKAxIk1VVgAB0Fi251aEZVasTfNgzghP5AkysGsqtP5TQiHuKUJQ5gn - aCAbX6Xma1b3Inpyh2FD9uXLcSl1L/zH8uq/zqpkANwifWBBTeez7F40oS0eIHv0Vk1OdWdudSdHzrGQ - nsIOcKr78XEY0S+3BLRMFbCYmOh0D/jOPGmKK2y+UNwcX9yCLhQ1c3muoPlsQTNZwrlyND4uQ6Ch7UoL - z6WAbOy9+VizuhfdMx4ShPheOkpgdOzWs67Dt2qiMyrJEUBQLbTUprL0wtIEIAVgfJxzLLBGBBCd4VE3 - xsfPFTbTKRNsrh4O0CR+7KMGVWma8k1udcLTFnUxPk667EmtoAuehtASRQRkI+r6I83qXiAgekb1p+wq - xdhR2vuHThc2H8iu4vE0oSSXydIpEbsMmmo0gRq9kGvK9cuXnMsUIk72Z03M9PmiZjIROuYjPwm0qjRN - +fOt6sulLerCutyXUUnw6vkIlTWQjT0pDzWre9E3CHhsSYSxqcro2FiBt+ev92pJeaoBxbm9uAmaOjCC - WlSah4dd+R0b4xwLzzUi6ZhOdWNsLL64maWMrcwGTV+yylP5q3TP4dzqH+7VNnb7pf79+i4uv7tdg90E - XeIVO+Uvd2vJISInS/AWclID2dh97YFmdS8BzTgP5VaPTl96BwNXyluJmEGqTdJ6czLjni10KlCTGYLd - RQdozrGQa7Ajf3GubgRB00RAixNCpVM2N25BE7IDgRGpX93ps0F/a2b0BGgp2VUdeJOdJjTQQDZ2Jf1X - s7qXS9BSqrt8x/Ke8YxT397NZ01t7vIEUJ9VmNVT+Rod5RwL0wZrUhvQ6sboaHyRA7TlnBklo2WhZ9uA - 5g1Pm6ptlZ/zG76/U4Md3IBW1mDJqmqfJ2ggG19cva9Z3csJesRFGQwMZ9d2UhkQZKKwnvl55K682LD4 - XCppUY5GRjjHwuoMa/YAQKsbIyOTQRMns8XjT31a/f1+3Yv+QVXbKg3PfUfv1kAZ3KzRyjoycu9Z562a - Dl5UWIjUijcpQjcCsvH55bua1b2coIddF2+PP+ZxA3RgAcQZohdGzAdvuKzC9+o6lYvhYc6BSy7DDqwH - c6rUjeFhXtdeAR1cN7BQ/+jtGm93v9TsHxySE0p9V99/HtWzKCeWtCjT8DD06Zcu2EjtbVwL0o2AbOxM - vKNZ3csJOjCXMhQIZFS1k4xAZACw0DwjhsTAgEU2AYgFFECqfSDAOUst6wATxpHdWN0IBC4UNmmgOYEU - 3aWUefv8g6peIJBV1YbUhVWKW14AWl0EAtIFz5NKiFBBA9n47NJtzepeTtBDcyzd/QPkKeMXHJpnxoOR - OWAmAMTznlDcrFoGCxaSmkWfpIOIsg4NaaBltogzrbxV1Rga6vMPpJR72QPRucKmzl6/2O/UdiSWTHTE - g8IcqxeYUCkjIBufXszVrO41H9BZ1dNmtFCW513eE0jYlhc+1TJYoPPT/Tq6JtlZW5V1GtCS0Y8buqhQ - 29F74nEDq4RIcGdWtUGZEyfor7PUumGmsyPCuQrIxo74HM3qXk7Qg66Lt9vHLj/DGs2l0JHti59nBY1d - qvHgYGZlmzobHCxvfXHkjrmDwUuZBgfPT1o6ZM6wECoPxzc5VbxgSENpK6xFzMGd2nZ0u6adrs3Hzvq1 - 4oxwrgKy8cn5bM3qXk7QAy6Kr9+fU9NOAgJihrcOLm00zEd+Q6dqPzBQ2GT+uMiobFXXAwNNXb0xj+ox - quuBgfOFja+AtrxxTqi83uEw0zPRfIbS4+tXGT1v0EA2tsdlaVb3coL2z1Yq27qPP5z42CSU8SAsnG4V - aOuHnMf7XLX3+6vbXpCJ8vsttdyrrH5/e3cfoNWF33++QActSS1fplhA0h1tZy72K8c8QQPZ2Ho2Q7O6 - lxN0//Sls6cvqayFjUV+GbK3AFHl8iTKyAbNAv2gtl2cVHqfH7G+UgERcZJc0vy8t6++o/vfD58BWqpR - 4pyggw6FNU8JrGMe1KWVtYA7o8Kb6TGV5fFmV7bmVrXeqm4raOxUjvr72WxfC2ggG1vOpGtW9xLQ8q1D - hTap5Dd2yrcO5kN+EKo3/6kQiwS0mYDWl+64/IbUshZ5ZebZhyB+OOEWxn0ZlUwhC64vWM5ZoO1vHbZP - 5pWNl/mDNc3xxrPFSiIzJ35YshOKm5Qjn+91ZTSQjY9Pp2lW96J7giAUZl6F5ihNXT2nCxq5xTCA4v7r - nUABkwkl2fw+xxrCkXN+RuMEccIcY6R3eY9Wvfp8Z/IbnF/vbJ+S1OKWtsyEeBbhhwcO1vFFjcqRz/e6 - NkMgG5tP3dSs7kX3DBiIvMz2OUp3b29Odeu3oX6PtqEwK6S/Sdb6uyvxYEuQwYsuyEfVd1/fqUf18oZu - vjhOcssUSluEc9wiugA9uMkJ5kk56uuLzjC/W9ELTWw/IQjIRuTJG5rVveieECW+nl4VXIX3+T/znpmb - nvUZkwEwEmpKImseppMTii3TQ/BpkAoYCUDyujdYfs6rY20ROlqPzrZOyQPE3JA0sQ+fKUe9vfJpl/ip - 4PQzVwHZ+Cj2umZ1L7onKWQlfdLQ4e3qji9qIrtlrbA3PXPAFiCt+aya4BKUXiH4WY6+6BHcHM2dwPrB - aU7MpCZTimoEKWPZl+aJyatjttgzZVPBFR1pTeYkIBsbT6RoVveScZJT9vYiQyUL3Gx685cAAgQzyqMD - JlnH7a61+tMJP/ZYmCRZvjk6R6E1mZOAbGyIuaZZ3Yv4yBri4+EiJoaKGCeXGCWh3hxlJIAAQXfgBgpH - zkOYYHsseJBVmyPnIbiaQjHXjDXHLm5IKNJvuJOMk/jsocogX09w7mTGEAxDZHY9996dfmQISHmbVHmO - Kl53/LKx8vsTG+JD/6cdKj4rRHuE847s/6aJ4QSlVQhFFwt+98NJY/nuQ+vPhf63WWHNKvAu333YeG/F - qrWxof8KD2tWgfe9364yIhYv/uBo7Pq4PO12WK9FgF159GTE4iXGwoUL3/31B2tOpIW8JYY1rRKKAAte - IBsRERH88YtNO9fEZur1wpqfQApY8ALZ/M9CFuuIX27ZvTomdd250P89TVi21sXlAROkFuQI9b+yhPWC - BQve+dX7Kw4fXx2Ttvbs/fW88yUUa+3DmkkJxUADHQDB+M7y90EqlCkKNMXK64ULFka8+5sPl+48sOLw - v1b+FPfhP+LDcilwAQ10AASjrBgK7qJF/wN5i2PwNbg3wAAAAABJRU5ErkJggg== + j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAADNlJREFUeF7lnOlTVFca + h8//oajJp6lUvs18yVIzlVQyk0lMcIkalxgTY1yjGGNizDhVwSyjuCaTBBNHREEI+w6KQBIRaJbuhm72 + pbuRbmgUNPoPzHP7bdr2YBGgbwORU79qb7997+H8nvOe5fYF1aIHy5LHH39mxdrVn53ckVKyr7Buf2nj + o6G9edVbk/Lx9czyN/AYdDtWHqDw1Guvb08u2J5r2ZhWt/pC7YrzNcuTHhGtPF+z5mItvnCHx6diVwU9 + B0qQwuIlS5buObgj17I+tVa7/tETHmGBX1yL/SAFQluyLADTLnhUhVP84lrsGxSejl29LWceIRDhF9d4 + NygsfuyxHSml6+bBQBgvXO9MLYOAenbluq3ZddrH80d4f2blOrU6/tSGS/MxEUR4X3P4tNqaXLjqgv7Z + /BHeIaDicq89SvuCqWpFUk1cbrXaWzh/JwURBNTegvk7KYggoOIK9Oh8EwRUXL4eNVcMvPHSzpldQUDt + ybuuRU2U4fm8ITZqryfXIg6MyFxiAYEoUxjzzx3qGxfr0JoLxjGRucPCoLA7t1qLmigQrEo2/K9Prdt4 + yfJWmoXXDamWtSnGnXswNWabBQTU7pxoUcAbPun8N1MtB4rs17q8nxY3b89ufC+z4Z30+jcvzRUWEFDv + 51zTomZJKGB1U1p9/GXHvXv3mtxDF+p74i+37M2zbp0zLCCgdmX/qkXNEn4YDoyFzT/Vf1nuvHv37m+/ + 3R0aud06MJxh7f283LEnr2nbHGABAbUrK4oUMMZwoNuPVhoUQgUWbQPDOfa+z8udu3Pvs1g3GywgoHZm + /aJFzVKQwiXLtqzGY5Wtv40rN0dvN3uG8ppdZIrBIquRrGH6hAWzSZBFAIdWs7mCgNqZ+bMWNUtCAVfb + sxqPVz2EgpTRO3da+oeKWtwJla2zwgICakfGDFG4M2G5ffuOo3+osMVF1hjzxUNZRGeMQEBtz6jSombp + AQqVrbcnUW6NjHYO+Itb3EcrnB/kW3dkGyxk7mSiFRDaT4lcEFDbf6rUomZpGhSk+G+NdAz4S53uIxXO + uDzrloyGjWmWtRfryIhoDA0IqG3pM0PBOTrF4r850u31lzndX1xx7MxuXB9YPqKRDhBQW9MqtKhZ0iiM + TLd4BofTG3pYcZkgokEBAlC4qkXNUjiFY5XOW9MqXv/wtY7+735th0KUcgEC6r1Lc5SCz3/T2uc9X9u5 + J7fp7fR6FosoTZAQUFtSy7WoWdIo3Jx08Q8P213e9IbuQyXNwWUiMByiNDtCQG1JuaJFzZJGYXhypbPf + l2vr/bLcwQ6KrTdZwJ049+ahLYP2UyIXBNS7KZe1qFl6gEKF0/97pavfV2jvhVdcvrFr0u6yord9hIDa + fHH2KdD/5U7XqarWfQVWTpZd4wz4F0FAbb5QpkXNklCgPzGWUOEYGld8g0Pt7oGqNte3v7btL7TJFPBW + 2kzsmsMFAfVOcqkWNUshCtw4H7nqGAwrXt9gd7+3usP9Y3X7J0U2NkXvZjTgn63RTPoXQUC9fb5Ei5ol + PLC2Mb2/l9nwVXlLEMDgoGfAV9PhTqrtOFBk25XTyAbZ8J9qfDcbXAujPAQ0QUBtijIFupc8jy9r8fl8 + ngFvXYc7xdIZX9a8K6cJOpvSgkvArPgXQUBtSirWomYJP+Q2kxxdfajE3uMZSLN0Hr5s+GeMyBLIPRL+ + Z2AKnEAQUG+dK9KiZkkoMM43pNZ9kGctsHZ/XGCj//E/M0vgJAUBtfF/hVrUROFQQDDtM0Egxv/c8S+C + gNp4NpoUAg9mMIxtWPAq/mdyCfhdQUC9ebZAi5oosUqfY1tk9P/cSIGQIKA2/JivRU1XkMWYtE9nXRBQ + G36IOoWQIscReQ3jBQG1/kyeFo1E95sYlvyhiMwRMi8ER8fE14ZJLgmvIfhRWA3TEwTUusRcLTptiQFp + KLsA2QhIi+VA5kh5fq9tE+RaIsRDp4k4DpdEZJaVGsLbMA1BQK1NzNGi0xZOMIwNWslyyOrIq7RYjAXX + ywcf3hv+xxAQIc5qyjnstUTcX/I2JOMtK25K2I57XEumJAiotd+bRyGAgO0gJmk9uyNeZYMg3nj7dWXr + 11VtX5Y55N6Z8yUdBB/X4pMLubnYltXIXSb3o1szG3jL7Zbom6o2ajhYaIdF6Ot5rSVTEgTUG99la9Fp + Cyd0OI3DhtPjR1ccHtkpEgQBZu4FirPfL49b6HzpTMxwLfhS67oLbK4iu6ukxV3a4ua1uNnN20K763Dg + 7kNq4Bz5GoKMkITSGjN5QUCt+TZLi05btIbO4QaJ3pO24hbngCBIo+lYibf2+7mVIIgHg0JgOHAMF4fH + L+eMLz9Ud3yQb5Vj0Mj3EQyNUEJp7ZmkIKDW/DdTi05bOJE7SO6X5Qk9bmkrafxOej13EPRkKL4z2/hO + jUERngtQSLN0FzW7yhxu781ROdnS4+UtSXGk3PFRoU2CpElc4NcfwhNKa88kBQG12jwK9AkpTefvyWuS + 59Gt/UPv5xhfogKCFu/OvR+HCLyYLyWfQxQ4mQ4/VNrcdsMvJyfXdf2r1P5xkQ0EnxTbJdjWP1Tc7Eqv + 75aEkkq09kxSEFCrvsnQotMTjaBPsIFbbMiT6FbPUFye8VUiicArvSdxp2cQIvcpjI0I5g5O+7DQ9tVV + x/DIqJx82eH+d1kz/g8U2T4tsUtQSot7kOEW4RwJAbXq65+06PREI+hMbJDqRysc8ty12+vfV2BlgICG + oQERiTvcOgVjgUipwxKn7S+0VbV55EyK/9bImer2gyV2QEBBgnAssvel13dFngsQUK+fNoGCpDQ2GOrY + S6vvlrZS4suaGSB4YwjszX84BUY1eTQ2pzQV2/vkNPyHDpJqOkHA0JBISYuLjGM1ZZmAfiTzAgTUytPp + WnSq4seLDZZDMp/G1XTeCD54Hh3NtfaQDoBgOHxYYJWgw+XTKMikcLqytbnPK+cM3byVWN2eZ+uVtxSn + 28fQkGNIUQNzEDNRhGsEBNTKU2ladEriZ0s+44dEIPmPXnUEHzYHitvnZzwz1BEznARbXN5wCkgolNj7 + 5ITOG4OJ19rxjDjoujFEMM/aw1s5odDWy8+iBhKQy6eNAEFArTgZKYWQBxKBkV/f1S+PGzs8Pjm41u4G + BKOasS0Re+/A+BFBrxIpsfXmN/XAi5MZAiKWjKSaDoEiNeRbe5hHQzsOrVVTEgTU8hOXtOiURCJgIzSx + /ex0yePGdo+XeZ5XeVvu6BMz8tbecyOcQiibcMVKGV/anNfUXWDtQYU2Q0W2nmJ7b0hF9p7EX9qYFJiM + 6QAu11o1NZ24BIVUPToV0QKZ2HZnN15vc8sTtxu+wWMVDjr/m59bOZagvacfCnJs6+nXKEhCkQ4Mq9MV + DjltgpLf1E0umEQhVS07bg6F4+WOfq9hmNfjV51Mh/hEx8odzr4B4pkNxuYnYMGgwG7qPoWxnCK9AXEg + 35pp6cyu78pu6MoJKLexG9uSFFKDUJARESEFCKhlx1K06JREC2SpZ8X6pMCaYek8VGR83c5mEZOIg325 + TQlXHKwdjHZ5Qmnt9oTPbUY9YSDk7pOk4FpWAWoj+QHKWsP8IjXkNnaZNSIgoGKPXdSiU5LMjqQDvcoE + SbMQB3QpCYI4IIIZbLNfkId0jZ0eelK2faG5jao4hinGqI0LQxVyJizYSoBSashp6GQG4aPIKUBAxSZE + SoGmCwi6EVeIlvEWP4gDOlxAMH36AqW+w81b8RBOAT9Sm1zIp9RpZMdYDWxMpYYsSweZAiZOi5RCwkX1 + WsIFLTpVhbdexDGRkIiAhiHDELC091naXfkNnXQvmT/eg1FboMJwGTUEBh01eAMlvbadSQE68OKE8Bqm + KgioV49GSkEUbP2YHvhI5o5x30HRydjTTn6oQjWwPcV8sIaxx/yTqWECQUC9eiRZi5ouWkl2YING06WM + eV45JmJkzbjzx4tzcEviAI7L8S81GAgmV8MEgoBaOiMUaGtowCMO0CQRIK0GcEglk69hAkFALf3PeS0a + DRk2xswEFXirnTaB9MunVclDBQH1z/jE5eei+Gd0c13nrr/8xVn1wscJy36M1p9IzH0tO/vLiwdPqqc3 + 74v9Plq/7Df3hfen3/1QPfncy0tPmvZl/B9Or57MevL5l1XMosWkROyZaP1O+FwWrl88eCpm8RK1cOHC + J/7696UnMufdHHmuGtd4h4CKiYnhnz+v3LT0lGkPLP8Qwi+u8Q4B43+tCoCI+cuaLa8cz4hNjNYfCswd + 4RGn+A0QiAn+310CYsGCBX969oXn9h955UTma9+VsYSwlmrX/4F17jqO8IU7POIUv4KAEqRACWTEwgUL + Y57420tPbdr7/EcJ//jszEuHzz4awguO8IU7PMpACDpftOj/8uFdLBpXZWcAAAAASUVORK5CYII= - iVBORw0KGgoAAAANSUhEUgAAAHgAAAAsCAIAAAAhGetkAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH + iVBORw0KGgoAAAANSUhEUgAAAFcAAABQCAIAAADjr36DAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ @@ -3316,53 +3258,63 @@ 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 @@ -4505,182 +4457,134 @@ XTesb3QPLh88M+QwdP6m681Lt7xuXbu94vbgcOjwnZHokdE77DtTd1PuvriXeW/h/sYH6AdFD6UeVjxS fNTws+7PbaOWo6fHXMf6Hwc/vj/OGn/2S8Yv7ycKnpCfVEyqTDZPmU2dmnafvvF05dOJZ+nPFmYKf5X+ tfa5zvMffnP8rX82YnbiBf/Fp99LXsq/PPRq2aueuYC5R69TXy/MF72Rf3P4LeNt37vwd5MLWe+x7ys/ - 6H7o/ujz8cGn1E+f/gUDmPP8usTo0wAAAAlwSFlzAAAOxAAADsQBlSsOGwAAKFBJREFUeF7t3V2sXWd5 - 4PEQFOcmqVR6NdIIJ3JiQu+4SJUQRBtDaAVXo6QauJmb5stJiVWk3oEGIa6ASLSRCgMROLGnEDthMtPE - gqkqTZjSixkxEIlpRziOS2LFQzWTgLAqxflYM8/eWehh8ZxPex/b6/k90k+xz95nneMerff9d7H2Ppf9 - q6//3TB65zvfCQAAbeQWFsYAALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt5RYWxgAAtJVbWBgDANBWbmFh - DABAW7mFhTEAAG3lFhbGAAC0lVtYGAMA0FZuYWEMAEBbuYWFMQAAbeUWFsYAALSVW1gYAwDQVm5hYQwA - QFu5hYUxAABt5RYWxgAAtJVbWBgDANBWbmFhDABAW7mFhTEAAG3lFhbGAAC0lVtYGAMA0FZuYWEMAEBb - uYWFMQAAbeUWFsYAALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt5RYWxgAAtJVbWBgDANBWbmFhDABAW7mF - hTEAAG3lFhbGAAC0lVtYGAMA0FZuYWEMAEBbuYWFMQAAbeUWFsYAALSVW1gYAwDQVm5hYQwAQFu5hYUx - AABt5RYWxgAAtJVbWBgDANBWbmFhDABAW7mFhTEAAG3lFhbGAAC0lVtYGAMA0FZuYWEMAEBbuYWFMQAA - beUWFsYAALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt5RYWxgAAtJVbWBgDANBWbmFhDABAW7mFhTEAAG3l - FhbGAAC0lVtYGAMA0FZuYWEMAEBbuYWFMQAAbeUWFsYAALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt5RYW - xgAAtJVbWBgDANBWbmFhDABAW7mFhTEAAG3lFhbGAAC0lVtYGAMA0FZuYWEMAEBbuYWFMQAAbeUWFsYA - ALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt5RYWxgAAtJVbWBgDANBWbmFhDABAW7mFhTEAAG3lFhbGAAC0 - lVtYGAMA0FZuYWEMAEBbuYWFMQAAbeUWFsYAALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt5RYWxgAAtJVb - WBgDANBWbmFhDABAW7mFhTEAAG3lFhbGAAC0lVtYGAMA0FZuYWEMAEBbuYWFMQAAbeUWFsYAALSVW1gY - AwDQVm5hYQwAQFu5hYUxAABt5RYWxgAAtJVbWBgDANBWbmFhDABAW7mFhTEAAG3lFhbGAAC0lVtYGAMA - 0FZuYWEMAEBbuYWFMQAAbeUWFsYAALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt5RYWxgAAtJVbWBgDANBW - bmFhDABAW7mFhTEAAG3lFhbGAAC0lVtYGAMA0FZuYWEMAEBbuYWFMQAAbeUWFsYAALSVW1gYAwDQVm5h - YQwAQFu5hYUxAABt5RYWxgAAtJVbWBgDANBWbmFhDABAW7mFhTEAAG3lFhbGAAC0lVtYGAMA0FZuYWEM - AEBbuYWFMQAAbeUWFsYAALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt5RYWxgAAtJVbWBgDANBWbmFhDABA - W7mFhTEAAG3lFhbGAAC0lVtYGAMA0FZuYWEMAEBbuYWFMQAAbeUWFsYAALSVW1gYAwDQVm5hYQwAQFu5 - hYUxAABt5RYWxgAAtJVbWBgDANBWbmFhDABAW7mFhTEAAG3lFhbGAAC0lVtYGAMA0FZuYWEMAEBbuYWF - MQAAbeUWFsYAALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt5RYWxgAAtJVbWBgDANBWbmFhDABAW7mFhTEA - AG3lFhbGAAC0lVtYGAMA0FZuYWEMAEBbuYWFMQAAbeUWFsYAALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt - 5RYWxgAAtJVbWBgDANBWbmFhDABAW7mFhTEAAG3lFhbGAAC0lVtYGAMA0FZuYWEMAEBbuYWFMQAAbeUW - FsYAALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt5RYWxgAAtJVbWBgDANBWbmFhDABAW7mFhTEAAG3lFhbG - AAC0lVtYGAMA0FZuYWEMAEBbuYWFMQAAbeUWFsYAALSVW1gYAwDQVm5hYQwAQFu5hYUxAABt5RYWxgAA - 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 - RU5ErkJggg== + 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 + + 17, 17 + WEBPAD diff --git a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemExternalOutput.cs b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemExternalOutput.cs index ec03231..b793580 100644 --- a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemExternalOutput.cs +++ b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemExternalOutput.cs @@ -425,6 +425,10 @@ namespace ITC81DB_2H.Controls //this.comboBoxSorter6Mode.Items.Add("Ex.Schlecht"); this.comboBoxSorter6Mode.SelectedIndexChanged += new EventHandler(this.comboBoxSorter6Mode_SelectedIndexChanged); #endregion + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemIOTest.cs b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemIOTest.cs index d7cd6d0..1774820 100644 --- a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemIOTest.cs +++ b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemIOTest.cs @@ -172,6 +172,10 @@ namespace ITC81DB_2H.Controls //this.labelInputName6.Text = "PI3"; //this.labelInputName7.Text = "PhotoB"; //this.labelInputName8.Text = "PhotoA"; + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemJudgment.cs b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemJudgment.cs index 918e359..e8949a9 100644 --- a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemJudgment.cs +++ b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemJudgment.cs @@ -82,6 +82,10 @@ namespace ITC81DB_2H.Controls this.buttonWeightReference.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerJudgmentStandardDisable)); this.buttonWeightReference.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerJudgmentStandardDown)); this.buttonWeightReference.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerJudgmentStandardUp)); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -126,28 +130,32 @@ namespace ITC81DB_2H.Controls this.smartDraw.BackDraw.BackErase(Color.Black); - // BackLayer 기준선 표시 - this.smartDraw.BackDraw.SetPenStyle(Color.Gray, 1); - // BackLayer 가로 - this.smartDraw.BackDraw.Line(30, 100, 427, 100); - this.smartDraw.BackDraw.Line(30, 180, 427, 180); + //// BackLayer 기준선 표시 + //this.smartDraw.BackDraw.SetPenStyle(Color.Gray, 1); + //// BackLayer 가로 + //this.smartDraw.BackDraw.Line(30, 100, 427, 100); + //this.smartDraw.BackDraw.Line(30, 180, 427, 180); + + // BackLayer 가로 중심선 + this.smartDraw.BackDraw.SetPenStyle(Color.Blue, 1); + this.smartDraw.BackDraw.Line(30, 140, 427, 140); + // BackLayer 세로 this.smartDraw.BackDraw.SetPenStyle(Color.Blue, 3); this.smartDraw.BackDraw.Line(30, 20, 30, 260); this.smartDraw.BackDraw.Line(427, 20, 427, 260); - // BackLayer 가로 중심선 - this.smartDraw.BackDraw.SetPenStyle(Color.Blue, 1); - this.smartDraw.BackDraw.Line(30, 140, 427, 140); // BackLayer 세로 중심선 - this.smartDraw.BackDraw.SetPenStyle(Color.Red, 1); - this.smartDraw.BackDraw.Line(228, 40, 228, 240); + //this.smartDraw.BackDraw.SetPenStyle(Color.Red, 1); + //this.smartDraw.BackDraw.Line(228, 40, 228, 240); // 판정개수 표시선 - temp = int.Parse(this.labelJudgmentCount.Text); - xPoint = 230 - temp; + temp = (int)(int.Parse(this.labelJudgmentCount.Text) / 2); + xPoint = 228 - temp; this.smartDraw.BackDraw.SetPenStyle(Color.Red, 1); this.smartDraw.BackDraw.Line(xPoint, 40, xPoint, 240); + xPoint = 228 + temp; + this.smartDraw.BackDraw.Line(xPoint, 40, xPoint, 240); } public void DisplayHiddenMenu(bool bValue) @@ -261,6 +269,10 @@ namespace ITC81DB_2H.Controls this.smartGroupBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.gerBackgroundJudgment)); break; } + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemSorterSetting.cs b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemSorterSetting.cs index a2508fa..a909965 100644 --- a/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemSorterSetting.cs +++ b/ITC81DB_2H/Controls/CenterSystem/ControlCenterSystemSorterSetting.cs @@ -163,6 +163,9 @@ namespace ITC81DB_2H.Controls this.comboBoxSorterB.Items.Add("Schlecht"); this.comboBoxSorterB.SelectedIndex = 2; this.comboBoxSorterB.SelectedIndexChanged += new EventHandler(this.comboBoxSorterB_SelectedIndexChanged); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { } else diff --git a/ITC81DB_2H/Controls/Etc/ControlCenterSystemAutoZero.cs b/ITC81DB_2H/Controls/Etc/ControlCenterSystemAutoZero.cs index ad2a43f..54d1616 100644 --- a/ITC81DB_2H/Controls/Etc/ControlCenterSystemAutoZero.cs +++ b/ITC81DB_2H/Controls/Etc/ControlCenterSystemAutoZero.cs @@ -66,6 +66,10 @@ namespace ITC81DB_2H.Controls else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { this.smartGroupBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.gerBackgroundAutoZero)); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/Etc/ControlConfiModbus.cs b/ITC81DB_2H/Controls/Etc/ControlConfiModbus.cs index 2356483..d7905a2 100644 --- a/ITC81DB_2H/Controls/Etc/ControlConfiModbus.cs +++ b/ITC81DB_2H/Controls/Etc/ControlConfiModbus.cs @@ -68,6 +68,10 @@ namespace ITC81DB_2H.Controls { this.smartGroupBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.gerBackgroundBottomAddOn)); this.labelDiscription2.Text = "- Master(Client) : 16(Write on judgment), Slave(Server) : 04(Send on Master request)"; + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/Etc/ControlConfiOptionBoard1.cs b/ITC81DB_2H/Controls/Etc/ControlConfiOptionBoard1.cs index 5d34af8..057d91b 100644 --- a/ITC81DB_2H/Controls/Etc/ControlConfiOptionBoard1.cs +++ b/ITC81DB_2H/Controls/Etc/ControlConfiOptionBoard1.cs @@ -135,6 +135,10 @@ namespace ITC81DB_2H.Controls this.labelHelp.Font = new Font("새굴림", 11, FontStyle.Bold); this.labelHelp.Text = "※ Externer Ausgang 5, 6: Feedback +, Externer Ausgang 7, 8: Feedback-"; + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/Etc/ControlConfiOptionBoard2.cs b/ITC81DB_2H/Controls/Etc/ControlConfiOptionBoard2.cs index e872641..7cb3f0e 100644 --- a/ITC81DB_2H/Controls/Etc/ControlConfiOptionBoard2.cs +++ b/ITC81DB_2H/Controls/Etc/ControlConfiOptionBoard2.cs @@ -139,6 +139,10 @@ namespace ITC81DB_2H.Controls this.labelHelp3.Text = "3. C : Nach 'Verzögerung 1' stecken Sie 'Dispenser 1' heraus."; this.labelHelp4.Text = "4. D : Gleichzeitig senkt 'Dispenser 2' ab."; this.labelHelp5.Text = "5. Nach 2 Stunden Verspätung kehren wir wieder in den A-Zustand zurück."; + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) { diff --git a/ITC81DB_2H/Controls/Etc/ControlConfiSerialBarcode.cs b/ITC81DB_2H/Controls/Etc/ControlConfiSerialBarcode.cs index 2890e2f..e82a7c5 100644 --- a/ITC81DB_2H/Controls/Etc/ControlConfiSerialBarcode.cs +++ b/ITC81DB_2H/Controls/Etc/ControlConfiSerialBarcode.cs @@ -152,6 +152,10 @@ namespace ITC81DB_2H this.comboBoxReadingConditions.Items.Add("Hohe Schrägwinkel"); this.comboBoxReadingConditions.SelectedIndex = 0; this.comboBoxReadingConditions.SelectedIndexChanged += new EventHandler(this.comboBoxReadingConditions_SelectedIndexChanged); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -277,6 +281,10 @@ namespace ITC81DB_2H { this.buttonConnect.Text = "开"; this.DisplayStatus("> 断开"); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -301,6 +309,10 @@ namespace ITC81DB_2H this.DisplayStatus("> Verbinden"); else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese) this.DisplayStatus("> 连接"); + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + + } else this.DisplayStatus("> Connect"); break; @@ -379,6 +391,10 @@ namespace ITC81DB_2H this.DisplayStatus("> Laden abgeschlossen"); else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese) this.DisplayStatus("> 加载完成"); + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + + } else this.DisplayStatus("> Loading completed"); this.ParentForm.UpdateMenuExceptBarcodeDisplay(true); @@ -388,6 +404,10 @@ namespace ITC81DB_2H this.buttonConnect.Text = "Schließen"; else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese) this.buttonConnect.Text = "关闭"; + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + + } else this.buttonConnect.Text = "Close"; break; @@ -640,6 +660,10 @@ namespace ITC81DB_2H this.DisplayStatus("> Wird geladen..."); else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese) this.DisplayStatus("> 载入中..."); + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + + } else this.DisplayStatus("> Loading..."); this.GettingBarcodeValue(BarcodeShortCut.MinAngle); diff --git a/ITC81DB_2H/Controls/Etc/ControlConfiSerialHitachi.cs b/ITC81DB_2H/Controls/Etc/ControlConfiSerialHitachi.cs index cd51e83..1fe0449 100644 --- a/ITC81DB_2H/Controls/Etc/ControlConfiSerialHitachi.cs +++ b/ITC81DB_2H/Controls/Etc/ControlConfiSerialHitachi.cs @@ -84,6 +84,10 @@ namespace ITC81DB_2H this.smartGroupBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.gerBackgroundBottomAddOn)); this.labelTitleRoomNumber.Text = "Einstellung der Zimmernummer(1~9)"; this.labelTitleBlank.Text = "Leer(EIN: Keine, AUS: Leerzeichen)"; + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/Etc/ControlConfiSerialMarkoPrint.cs b/ITC81DB_2H/Controls/Etc/ControlConfiSerialMarkoPrint.cs index 86a0b97..3163cab 100644 --- a/ITC81DB_2H/Controls/Etc/ControlConfiSerialMarkoPrint.cs +++ b/ITC81DB_2H/Controls/Etc/ControlConfiSerialMarkoPrint.cs @@ -99,6 +99,10 @@ namespace ITC81DB_2H this.radioButtonLine2.Text = "2"; this.labelTitleSettingDate.Text = "Datum einstellen"; this.labelTitleLineNumber.Text = "Zeile"; + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayFeedback.cs b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayFeedback.cs index 683b288..d312e3c 100644 --- a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayFeedback.cs +++ b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayFeedback.cs @@ -62,6 +62,10 @@ namespace ITC81DB_2H else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { this.pictureBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.gerMainFeedbackScreen)); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayMenu.cs b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayMenu.cs index 8ab75b9..2fd6d7d 100644 --- a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayMenu.cs +++ b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayMenu.cs @@ -210,6 +210,10 @@ namespace ITC81DB_2H.Controls this.comboBoxSorterB.Items.Add("Schlecht"); this.comboBoxSorterB.SelectedIndex = 2; this.comboBoxSorterB.SelectedIndexChanged += new EventHandler(this.comboBoxSorterB_SelectedIndexChanged); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -286,10 +290,10 @@ namespace ITC81DB_2H.Controls { int count = 0; - if (item.ExternalOut1Mode == ((int)Define.E_ExternalOutputMode.LatchControl).ToString() - || item.ExternalOut2Mode == ((int)Define.E_ExternalOutputMode.LatchControl).ToString() - || item.ExternalOut3Mode == ((int)Define.E_ExternalOutputMode.LatchControl).ToString() - || item.ExternalOut4Mode == ((int)Define.E_ExternalOutputMode.LatchControl).ToString()) + if (item.ExternalOut1Mode == ((int)Define.E_ExternalOutputMode.OUT10_LatchControl).ToString() + || item.ExternalOut2Mode == ((int)Define.E_ExternalOutputMode.OUT10_LatchControl).ToString() + || item.ExternalOut3Mode == ((int)Define.E_ExternalOutputMode.OUT10_LatchControl).ToString() + || item.ExternalOut4Mode == ((int)Define.E_ExternalOutputMode.OUT10_LatchControl).ToString()) { this.labelTitleDryContact.Visible = true; this.buttonDry1.Visible = true; @@ -306,7 +310,7 @@ namespace ITC81DB_2H.Controls this.buttonDry4.Visible = false; } - if (item.ExternalOut1Mode == ((int)Define.E_ExternalOutputMode.LatchControl).ToString()) + if (item.ExternalOut1Mode == ((int)Define.E_ExternalOutputMode.OUT10_LatchControl).ToString()) { this.labelTitleDryContact1.Visible = true; this.buttonDry1.Visible = true; @@ -318,7 +322,7 @@ namespace ITC81DB_2H.Controls this.buttonDry1.Visible = false; } - if (item.ExternalOut2Mode == ((int)Define.E_ExternalOutputMode.LatchControl).ToString()) + if (item.ExternalOut2Mode == ((int)Define.E_ExternalOutputMode.OUT10_LatchControl).ToString()) { if (count == 1) { @@ -340,7 +344,7 @@ namespace ITC81DB_2H.Controls this.buttonDry2.Visible = false; } - if (item.ExternalOut3Mode == ((int)Define.E_ExternalOutputMode.LatchControl).ToString()) + if (item.ExternalOut3Mode == ((int)Define.E_ExternalOutputMode.OUT10_LatchControl).ToString()) { if (count == 2) { @@ -367,7 +371,7 @@ namespace ITC81DB_2H.Controls this.buttonDry3.Visible = false; } - if (item.ExternalOut4Mode == ((int)Define.E_ExternalOutputMode.LatchControl).ToString()) + if (item.ExternalOut4Mode == ((int)Define.E_ExternalOutputMode.OUT10_LatchControl).ToString()) { if (count == 3) { diff --git a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayModbus.cs b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayModbus.cs index b22507a..6c793af 100644 --- a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayModbus.cs +++ b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayModbus.cs @@ -248,6 +248,10 @@ namespace ITC81DB_2H.Controls this.labelHelp.Text = "※ Grad 0:Max., 1:Bestehen, 2:Min., 3:Metall, 4:Doppelte Eingabe, 5:Usw."; #endregion + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStart.cs b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStart.cs index fd4b7db..032555c 100644 --- a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStart.cs +++ b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStart.cs @@ -113,6 +113,10 @@ namespace ITC81DB_2H.Controls this.buttonTareRange.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerMainRunTareDisable)); this.buttonTareRange.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerMainRunTareDown)); this.buttonTareRange.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerMainRunTareUp)); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStartGrapht.cs b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStartGrapht.cs index 5f9fa11..7034074 100644 --- a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStartGrapht.cs +++ b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStartGrapht.cs @@ -97,6 +97,10 @@ namespace ITC81DB_2H.Controls this.buttonUnderRange.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerMainRunLineUnderDisable)); this.buttonUnderRange.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerMainRunLineUnderDown)); this.buttonUnderRange.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerMainRunLineUnderUp)); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStartList.cs b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStartList.cs index b108863..252f4d9 100644 --- a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStartList.cs +++ b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStartList.cs @@ -78,6 +78,10 @@ namespace ITC81DB_2H.Controls this.labelStaticTime.Text = "Zeit"; this.labelStaticWeight.Text = "Gewicht"; this.labelStaticGrade.Text = "Ergebnis"; + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStopDataStatistics.cs b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStopDataStatistics.cs index 610ce60..9b6f926 100644 --- a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStopDataStatistics.cs +++ b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayStopDataStatistics.cs @@ -67,6 +67,10 @@ namespace ITC81DB_2H.Controls else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { this.pictureBox1.Image = new Bitmap(images.GetImage(Class1.ButtonImages.gerMainStatScreen)); + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayWeightBigScreen.cs b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayWeightBigScreen.cs index 6b39ff2..225033c 100644 --- a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayWeightBigScreen.cs +++ b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayWeightBigScreen.cs @@ -60,6 +60,10 @@ namespace ITC81DB_2H } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayWeightSmall.cs b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayWeightSmall.cs index 85f9eed..b1c26cd 100644 --- a/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayWeightSmall.cs +++ b/ITC81DB_2H/Controls/MainDisplay/ControlMainDisplayWeightSmall.cs @@ -61,6 +61,10 @@ namespace ITC81DB_2H.Controls } else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German) { + } + else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Datastore/DataStore.cs b/ITC81DB_2H/Datastore/DataStore.cs index df5de08..115fef7 100644 --- a/ITC81DB_2H/Datastore/DataStore.cs +++ b/ITC81DB_2H/Datastore/DataStore.cs @@ -37,9 +37,9 @@ namespace ITC81DB_2H // 부저ON(부저ON시간과 연동) public static readonly string BuzzerOn = "Cad00"; // 부저ON(연속) - public static readonly string BuzzerOnContinuousEnable = "Cae00"; + public static readonly string BuzzerOnContinuousEnable = "Cae01"; // 부저해지 - public static readonly string BuzzerOnContinuousDisable = "CAE00"; + public static readonly string BuzzerOnContinuousDisable = "Cae00"; // 선별기알람해지 public static readonly string AlarmNgClearSorter = "CA700"; // 카운팅출력1(펄스) @@ -47,9 +47,9 @@ namespace ITC81DB_2H // 카운팅출력2(펄스) public static readonly string CountingOutput2Pulse = "Cag00"; // 램프ON(연속, 적색/황색 점등) - public static readonly string LampOnContinuousEnable = "Cah00"; + public static readonly string LampOnContinuousEnable = "Cah01"; // 램프해지 - public static readonly string LampOnContinuousDisable = "CAH00"; + public static readonly string LampOnContinuousDisable = "Cah00"; // 중량조정모드 public static readonly string ModeCalibration = "Csc00"; @@ -1859,6 +1859,8 @@ namespace ITC81DB_2H private bool m_IsSorterError; private bool m_IsStackUpSensorError; private bool m_IsEntryNotDetected; + + public event Define.EventHandlerAlarmStateChange EventAlarmStateChange; #endregion #region Constructor @@ -1947,6 +1949,207 @@ namespace ITC81DB_2H return occur; } + public void SetAlarm(string alarm) + { + string sValue1 = "", sValue2 = "", sValue3 = "", sValue4 = "", sValue5 = "", sValue6 = "", sValue7 = "", sValue8 = ""; + + this.Flag = false; + + if (alarm.Length != 8) + return; + + sValue1 = Convert.ToString(Convert.ToInt16(alarm.Substring(0, 1), 16), 2).PadLeft((4 <= 1) ? 1 : 4, '0'); + sValue2 = Convert.ToString(Convert.ToInt16(alarm.Substring(1, 1), 16), 2).PadLeft((4 <= 1) ? 1 : 4, '0'); + sValue3 = Convert.ToString(Convert.ToInt16(alarm.Substring(2, 1), 16), 2).PadLeft((4 <= 1) ? 1 : 4, '0'); + sValue4 = Convert.ToString(Convert.ToInt16(alarm.Substring(3, 1), 16), 2).PadLeft((4 <= 1) ? 1 : 4, '0'); + sValue5 = Convert.ToString(Convert.ToInt16(alarm.Substring(4, 1), 16), 2).PadLeft((4 <= 1) ? 1 : 4, '0'); + sValue6 = Convert.ToString(Convert.ToInt16(alarm.Substring(5, 1), 16), 2).PadLeft((4 <= 1) ? 1 : 4, '0'); + sValue7 = Convert.ToString(Convert.ToInt16(alarm.Substring(6, 1), 16), 2).PadLeft((4 <= 1) ? 1 : 4, '0'); + sValue8 = Convert.ToString(Convert.ToInt16(alarm.Substring(7, 1), 16), 2).PadLeft((4 <= 1) ? 1 : 4, '0'); + + // 알람 20- + if (sValue5[0] == '0') + { } + else + { } + // 알람 19- + if (sValue5[1] == '0') + { } + else + { } + // 알람 18-제품진입 미감지 + if (sValue5[2] == '0') + { + } + else + { + } + // 알람 17-사용X + if (sValue5[3] == '0') + { } + else + { } + + // 알람 16- + if (sValue4[0] == '0') + { } + else + { } + // 알람 15- + if (sValue4[1] == '0') + { } + else + { } + // 알람 14-배출센서 B + if (sValue4[2] == '0') + { + } + else + { + } + // 알람 13-방풍커버열림 + if (sValue4[3] == '0') + { + } + else + { + } + + // 알람 12-서보알람토크 + if (sValue3[0] == '0') + { } + else + { } + // 알람 11-통신에러 + if (sValue3[1] == '0') + { } + else + { } + // 알람 10-서보알람 + if (sValue3[2] == '0') + { } + else + { } + // 알람 9-인버터알람 + if (sValue3[3] == '0') + { + if (this.IsInverterError != false) + { + this.IsInverterError = false; + this.EventAlarmStateChange(Define.E_TrackingAlarm.a9_InverterError, "OFF"); + } + } + else + { + if (this.IsInverterError != true) + { + this.IsInverterError = true; + this.Flag = true; + this.EventAlarmStateChange(Define.E_TrackingAlarm.a9_InverterError, "ON"); + } + } + + // 알람 8-비상정지 + if (sValue2[0] == '0') + { + if (this.IsEmergencyStop != false) + { + this.IsEmergencyStop = false; + this.EventAlarmStateChange(Define.E_TrackingAlarm.a8_EmergencyStop, "OFF"); + } + } + else + { + if (this.IsEmergencyStop != true) + { + this.IsEmergencyStop = true; + this.Flag = true; + this.EventAlarmStateChange(Define.E_TrackingAlarm.a8_EmergencyStop, "ON"); + } + } + // 알람 7-리젝터알람(배출센서 A) + if (sValue2[1] == '0') + { + } + else + { + } + // 알람 6-적체센서 + if (sValue2[2] == '0') + { + if (this.IsStackUpSensorError != false) + { + this.IsStackUpSensorError = false; + this.EventAlarmStateChange(Define.E_TrackingAlarm.a6_StackUpSensorError, "OFF"); + } + } + else + { + if (this.IsStackUpSensorError != true) + { + this.IsStackUpSensorError = true; + this.Flag = true; + this.EventAlarmStateChange(Define.E_TrackingAlarm.a6_StackUpSensorError, "ON"); + } + } + // 알람 5-입력센서2(넘어짐) + if (sValue2[3] == '0') + { } + else + { } + + // 알람 4-도어알람 + if (sValue1[0] == '0') + { + } + else + { + } + // 알람 3-공압에러 + if (sValue1[1] == '0') + { + } + else + { + } + // 알람 2-셀 에러 + if (sValue1[2] == '0') + { + if (this.IsLoadCellError != false) + { + this.IsLoadCellError = false; + this.EventAlarmStateChange(Define.E_TrackingAlarm.a2_LoadCellError, "OFF"); + } + } + else + { + if (this.IsLoadCellError != true) + { + this.IsLoadCellError = true; + this.Flag = true; + this.EventAlarmStateChange(Define.E_TrackingAlarm.a2_LoadCellError, "ON"); + } + } + + // 알람 1-입력센서 에러 + if (sValue1[3] == '0') + { + if (this.IsEntrySensorError != false) + { + this.IsEntrySensorError = false; + this.EventAlarmStateChange(Define.E_TrackingAlarm.a1_EntrySensorError, "OFF"); + } + } + else + { + if (this.IsEntrySensorError != true) + { + this.IsEntrySensorError = true; + this.Flag = true; + this.EventAlarmStateChange(Define.E_TrackingAlarm.a1_EntrySensorError, "ON"); + } + } + } #endregion } diff --git a/ITC81DB_2H/Datastore/Define.cs b/ITC81DB_2H/Datastore/Define.cs index a730311..10da11e 100644 --- a/ITC81DB_2H/Datastore/Define.cs +++ b/ITC81DB_2H/Datastore/Define.cs @@ -171,6 +171,8 @@ namespace ITC81DB_2H.Datastore Russian, Czech, Spanish, + Turkish, + French, } public enum E_JudgmentStatus @@ -198,6 +200,10 @@ namespace ITC81DB_2H.Datastore CalStandby, CalFinish, CalError, + CalError_E1, // overload + CalError_E2, // underload + CalError_E3, // Zero-setting range exceeded + CalError_E5, // The calibration process was error } public enum E_MessageBoxIcon @@ -355,14 +361,14 @@ namespace ITC81DB_2H.Datastore public enum E_ExternalOutputMode { - None, - Over, - Under, - NG, - Pass, - Run, - Count, - LatchControl, + OUT0_None, + OUT1_Over, + OUT2_Under, + OUT3_NG, + OUT4_Pass, + OUT5_Run, + OUT6_Count, + OUT10_LatchControl = 10, } public enum E_ExternalInputMode @@ -553,12 +559,13 @@ namespace ITC81DB_2H.Datastore None, a1_EntrySensorError = 1, a2_LoadCellError = 2, - a3_DoorInterlock = 3, - a4_EmergencyStop = 4, - a5_PressureSensingError = 5, + a3_PressureSensingError = 3, + a4_DoorInterlock = 4, a6_StackUpSensorError = 6, a7_SorterAError = 7, + a8_EmergencyStop = 8, a9_InverterError = 9, + a13_WindProofError = 13, } public enum E_DataType diff --git a/ITC81DB_2H/Datastore/Helper.cs b/ITC81DB_2H/Datastore/Helper.cs index ede8847..86b7ced 100644 --- a/ITC81DB_2H/Datastore/Helper.cs +++ b/ITC81DB_2H/Datastore/Helper.cs @@ -185,6 +185,14 @@ namespace ITC81DB_2H return Define.E_WeightStatus.CalFinish; else if (value == "ce") return Define.E_WeightStatus.CalError; + else if (value == "c1") + return Define.E_WeightStatus.CalError_E1; + else if (value == "c2") + return Define.E_WeightStatus.CalError_E2; + else if (value == "c3") + return Define.E_WeightStatus.CalError_E3; + else if (value == "c5") + return Define.E_WeightStatus.CalError_E5; else return Define.E_WeightStatus.Empty; } diff --git a/ITC81DB_2H/DialogForms/DialogFormMessage.cs b/ITC81DB_2H/DialogForms/DialogFormMessage.cs index e2ccb56..197d7fa 100644 --- a/ITC81DB_2H/DialogForms/DialogFormMessage.cs +++ b/ITC81DB_2H/DialogForms/DialogFormMessage.cs @@ -94,6 +94,10 @@ namespace ITC81DB_2H.DialogForms this.labelErrorCode.Text = "Meldung"; this.labelMessage1.Text = str + " dateien wurden gesichert"; this.labelMessage2.Text = ""; + } + else if (language == Define.E_LanguageID.Spanish) + { + } else { @@ -1363,6 +1367,10 @@ namespace ITC81DB_2H.DialogForms break; } #endregion + } + else if (language == Define.E_LanguageID.Spanish) + { + } else { @@ -1456,6 +1464,8 @@ namespace ITC81DB_2H.DialogForms } #endregion break; + case Define.E_LanguageID.Spanish: + break; default: break; } @@ -2014,6 +2024,10 @@ namespace ITC81DB_2H.DialogForms break; } #endregion + } + else if (language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/DialogForms/DialogFormNumKeyPad.cs b/ITC81DB_2H/DialogForms/DialogFormNumKeyPad.cs index 6b4f0a6..32efa69 100644 --- a/ITC81DB_2H/DialogForms/DialogFormNumKeyPad.cs +++ b/ITC81DB_2H/DialogForms/DialogFormNumKeyPad.cs @@ -120,6 +120,10 @@ namespace ITC81DB_2H.DialogForms { this.buttonCancel.Text = "X"; this.buttonEnter.Text = "Enter"; + } + else if (language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/DialogForms/DialogFormPasswordKeyPad.cs b/ITC81DB_2H/DialogForms/DialogFormPasswordKeyPad.cs index 68256e3..cdf0a1b 100644 --- a/ITC81DB_2H/DialogForms/DialogFormPasswordKeyPad.cs +++ b/ITC81DB_2H/DialogForms/DialogFormPasswordKeyPad.cs @@ -139,6 +139,10 @@ namespace ITC81DB_2H.DialogForms { this.buttonCancel.Text = "X"; this.buttonEnter.Text = "Enter"; + } + else if (language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/DialogForms/DialogFormPasswordKeyPad1.cs b/ITC81DB_2H/DialogForms/DialogFormPasswordKeyPad1.cs index 4c57d79..766a755 100644 --- a/ITC81DB_2H/DialogForms/DialogFormPasswordKeyPad1.cs +++ b/ITC81DB_2H/DialogForms/DialogFormPasswordKeyPad1.cs @@ -80,6 +80,10 @@ namespace ITC81DB_2H.DialogForms { this.buttonCancel.Text = "X"; this.buttonEnter.Text = "Enter"; + } + else if (language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/DialogForms/DialogFormYesNo.cs b/ITC81DB_2H/DialogForms/DialogFormYesNo.cs index b7880c7..7988266 100644 --- a/ITC81DB_2H/DialogForms/DialogFormYesNo.cs +++ b/ITC81DB_2H/DialogForms/DialogFormYesNo.cs @@ -152,6 +152,11 @@ namespace ITC81DB_2H.DialogForms this.labelMessage1.Text = "비밀번호를 초기화 하시겠습니까?"; this.labelMessage2.Text = ""; break; + case 30: + this.labelErrorCode.Text = "데드로드영점"; + this.labelMessage1.Text = "데드로드 영점을 실행하시겠습니까?"; + this.labelMessage2.Text = ""; + break; default: break; } @@ -282,6 +287,11 @@ namespace ITC81DB_2H.DialogForms this.labelMessage1.Text = "Do you want to reset your password?"; this.labelMessage2.Text = ""; break; + case 30: + this.labelErrorCode.Text = "Dead Load Zero"; + this.labelMessage1.Text = "Do you want to run dead load zero function?"; + this.labelMessage2.Text = ""; + break; default: break; } @@ -412,6 +422,11 @@ namespace ITC81DB_2H.DialogForms this.labelMessage1.Text = "您想重置密码吗?"; this.labelMessage2.Text = ""; break; + case 30: + this.labelErrorCode.Text = "死荷重零"; + this.labelMessage1.Text = "你想运行死荷重零吗?"; + this.labelMessage2.Text = ""; + break; default: break; } @@ -546,6 +561,11 @@ namespace ITC81DB_2H.DialogForms this.labelMessage1.Text = "Вы хотите сбросить свой пароль?"; this.labelMessage2.Text = ""; break; + case 30: + this.labelErrorCode.Text = "Полная нагрузка равна нулю"; + this.labelMessage1.Text = "Вы хотите запустить программу Полная нагрузка"; + this.labelMessage2.Text = "равна нулю?"; + break; default: break; } @@ -678,10 +698,19 @@ namespace ITC81DB_2H.DialogForms this.labelMessage1.Text = "Möchten Sie Ihr Passwort zurücksetzen?"; this.labelMessage2.Text = ""; break; + case 30: + this.labelErrorCode.Text = "Totlast Null"; + this.labelMessage1.Text = "Möchten Sie Totlast Null ausführen?"; + this.labelMessage2.Text = ""; + break; default: break; } #endregion + } + else if (language == Define.E_LanguageID.Spanish) + { + } else { @@ -869,6 +898,10 @@ namespace ITC81DB_2H.DialogForms default: break; } + } + else if (language == Define.E_LanguageID.Spanish) + { + } else { diff --git a/ITC81DB_2H/Forms/FormMain.cs b/ITC81DB_2H/Forms/FormMain.cs index 5aef67b..a463769 100644 --- a/ITC81DB_2H/Forms/FormMain.cs +++ b/ITC81DB_2H/Forms/FormMain.cs @@ -25,8 +25,8 @@ namespace ITC81DB_2H.Forms public partial class FormMain : Form { #region Field - public static string DisplayVersion = "3.4.2"; - public static string ReleaseDate = "2025.11.11"; + public static string DisplayVersion = "3.4.3"; + public static string ReleaseDate = "2026.03.10"; private SmartSplash SmartSplashProgramLoad; public bool IsCommunicationLogOpen; @@ -56,6 +56,7 @@ namespace ITC81DB_2H.Forms public bool IsBypassUse; // 바이패스 public bool IsBypassStart; public bool IsManufacturerVisible; + public string PreviousAlarm; // 이전 알람값 // 재전송 기능 public int MissingCommIDCount; @@ -229,8 +230,6 @@ namespace ITC81DB_2H.Forms private delegate void UIControlCallback(bool bEnable); private delegate void UIServerStatusCallback(bool bEnable); private delegate void TimerTryConnectCallback(bool bEnable); - - public event Define.EventHandlerAlarmStateChange EventAlarmStateChange; #endregion #region Constructor @@ -409,10 +408,16 @@ namespace ITC81DB_2H.Forms this.IsBypassOnce = true; this.IsBypassDirectionPass = true; this.IsBypassUse = false; + this.PreviousAlarm = "00000000"; this.QueueCommunicationRecive = new Queue(); + this.CurrentAlarmList = new AlarmList(); - this.EventAlarmStateChange += new Define.EventHandlerAlarmStateChange(this.CurrentAlarmList_Change); + this.CurrentAlarmList.EventAlarmStateChange += new Define.EventHandlerAlarmStateChange(this.CurrentAlarmList_Change); + this.CurrentAlarm = new List(); + this.CurrentAlarm.Clear(); + for (int i = 0; i < CurrentAlarmCount; i++) + this.CurrentAlarm.Add(0); this.Modbus = new Modbus(); this.Current30000ModbusData = new _30000_ModbusData(); @@ -480,11 +485,6 @@ namespace ITC81DB_2H.Forms for (int i = 0; i < 100; i++) this.CollectionGraphData.Add(0); - this.CurrentAlarm = new List(); - this.CurrentAlarm.Clear(); - for (int i = 0; i < CurrentAlarmCount; i++) - this.CurrentAlarm.Add(0); - this.SystemConfig1 = new SystemConfigurationItem1(); this.SystemConfig2 = new SystemConfigurationItem2(); this.SystemConfig3 = new SystemConfigurationItem3(); @@ -569,7 +569,6 @@ namespace ITC81DB_2H.Forms SerialMgrComm.SerialPortErrMessageReceive += this.SerialPort_ErrMessageReceive; } - // Data 폴더 생성 if (Directory.Exists(this.PathDataFolder) == false) Directory.CreateDirectory(this.PathDataFolder); @@ -685,6 +684,21 @@ namespace ITC81DB_2H.Forms this.smartForm.AddChildForm(this.ChildFormMenu); } + public void OnExternalInputBuzzerSignal(bool bValue) + { + if (bValue == true) + this.TransferData(CommunicationCommand.BuzzerOnContinuousEnable, CommunicationID.MainBoard); + else + this.TransferData(CommunicationCommand.BuzzerOnContinuousDisable, CommunicationID.MainBoard); + } + public void OnExternalInputLampSignal(bool bValue) + { + if (bValue == true) + this.TransferData(CommunicationCommand.LampOnContinuousEnable, CommunicationID.MainBoard); + else + this.TransferData(CommunicationCommand.LampOnContinuousDisable, CommunicationID.MainBoard); + } + public static void Exception(Exception ex) { try @@ -734,212 +748,6 @@ namespace ITC81DB_2H.Forms else this.IsLampOnDataSend = false; } - private void ConverterAlarm(WeightData data, string alarm) - { - string sValue1 = "", sValue2 = "", sValue3 = ""; - bool flagAlarm = false; - - if (alarm.Length != 3) - return; - - sValue1 = Convert.ToString(Convert.ToInt16(alarm.Substring(0, 1), 16), 2).PadLeft((4 <= 1) ? 1 : 4, '0'); - sValue2 = Convert.ToString(Convert.ToInt16(alarm.Substring(1, 1), 16), 2).PadLeft((4 <= 1) ? 1 : 4, '0'); - sValue3 = Convert.ToString(Convert.ToInt16(alarm.Substring(2, 1), 16), 2).PadLeft((4 <= 1) ? 1 : 4, '0'); - - // 알람 12-외부에러 - if (sValue3[0] == '0') - { } - else - { } - // 알람 11- - if (sValue3[1] == '0') - { } - else - { } - // 알람 10- - if (sValue3[2] == '0') - { } - else - { } - // 알람 9-인버터에러 - if (sValue3[3] == '0') - { - if (this.CurrentAlarmList.IsInverterError != false) - { - this.CurrentAlarmList.IsInverterError = false; - data.IsInverterError = false; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a9_InverterError, "OFF"); - } - } - else - { - if (this.CurrentAlarmList.IsInverterError != true) - { - this.CurrentAlarmList.IsInverterError = true; - data.IsInverterError = true; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a9_InverterError, "ON"); - } - } - - // 알람 8- - if (sValue2[0] == '0') - { } - else - { } - // 알람 7-리젝터 동작 감지(배출확인) - if (sValue2[1] == '0') - { - if (this.CurrentAlarmList.IsSorterError != false) - { - this.CurrentAlarmList.IsSorterError = false; - data.IsSorterError = false; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a7_SorterAError, "OFF"); - } - } - else - { - if (this.CurrentAlarmList.IsSorterError != true) - { - this.CurrentAlarmList.IsSorterError = true; - data.IsSorterError = true; - flagAlarm = true; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a7_SorterAError, "ON"); - } - } - // 알람 6-적체센서 에러 - if (sValue2[2] == '0') - { - if (this.CurrentAlarmList.IsStackUpSensorError != false) - { - this.CurrentAlarmList.IsStackUpSensorError = false; - data.IsStackUpSensorError = false; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a6_StackUpSensorError, "OFF"); - } - } - else - { - if (this.CurrentAlarmList.IsStackUpSensorError != true) - { - this.CurrentAlarmList.IsStackUpSensorError = true; - data.IsStackUpSensorError = true; - flagAlarm = true; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a6_StackUpSensorError, "ON"); - - if (this.CurrentSystemParameter1.PI7 != 2) // 스토퍼 사용 시, 컨베어 미정지 - this.TransferData(CommunicationCommand.Stop, CommunicationID.MainBoard); - } - } - // 알람 5-공압에러 - if (sValue2[3] == '0') - { - if (this.CurrentAlarmList.IsPressureSensingError != false) - { - this.CurrentAlarmList.IsPressureSensingError = false; - data.IsPressureSensingError = false; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a5_PressureSensingError, "OFF"); - } - } - else - { - if (this.CurrentAlarmList.IsPressureSensingError != true) - { - this.CurrentAlarmList.IsPressureSensingError = true; - data.IsPressureSensingError = true; - flagAlarm = true; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a5_PressureSensingError, "ON"); - } - } - - // 알람 4-Emergency - if (sValue1[0] == '0') - { - if (this.CurrentAlarmList.IsEmergencyStop != false) - { - this.CurrentAlarmList.IsEmergencyStop = false; - data.IsEmergencyStop = false; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a4_EmergencyStop, "OFF"); - } - } - else - { - if (this.CurrentAlarmList.IsEmergencyStop != true) - { - this.CurrentAlarmList.IsEmergencyStop = true; - data.IsEmergencyStop = true; - flagAlarm = true; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a4_EmergencyStop, "ON"); - } - } - - // 알람 3-도어인터록 - if (sValue1[1] == '0') - { - if (this.CurrentAlarmList.IsDoorInterlock != false) - { - this.CurrentAlarmList.IsDoorInterlock = false; - data.IsDoorInterlock = false; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a3_DoorInterlock, "OFF"); - } - } - else - { - if (this.CurrentAlarmList.IsDoorInterlock != true) - { - this.CurrentAlarmList.IsDoorInterlock = true; - data.IsDoorInterlock = true; - flagAlarm = true; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a3_DoorInterlock, "ON"); - } - } - - // 알람 2-셀 에러 - if (sValue1[2] == '0') - { - if (this.CurrentAlarmList.IsLoadCellError != false) - { - this.CurrentAlarmList.IsLoadCellError = false; - data.IsLoadCellError = false; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a2_LoadCellError, "OFF"); - } - } - else - { - if (this.CurrentAlarmList.IsLoadCellError != true) - { - this.CurrentAlarmList.IsLoadCellError = true; - data.IsLoadCellError = true; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a2_LoadCellError, "ON"); - } - } - - // 알람 1-입력센서 에러 - if (sValue1[3] == '0') - { - if (this.CurrentAlarmList.IsEntrySensorError != false) - { - this.CurrentAlarmList.IsEntrySensorError = false; - data.IsEntrySensorError = false; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a1_EntrySensorError, "OFF"); - } - } - else - { - if (this.CurrentAlarmList.IsEntrySensorError != true) - { - this.CurrentAlarmList.IsEntrySensorError = true; - data.IsEntrySensorError = true; - this.EventAlarmStateChange(Define.E_TrackingAlarm.a1_EntrySensorError, "ON"); - } - } - - if (flagAlarm == true) - { - if (this.IsLampOnDataSend == false) - this.OnExternalInputLampSignal(true, true); - if (this.IsBuzzerOnDataSend == false) - this.OnExternalInputBuzzerSignal(true, true); - } - } private void ConverterResult(string alarm) { string sValue1 = "", sValue2 = "", sValue3 = "", sValue4 = ""; @@ -2313,7 +2121,11 @@ namespace ITC81DB_2H.Forms break; case "CBZ": #region 영점 - + if (this.CurrentSystemStatus.CurrentDisplay == Define.E_DisplayStore.SystemCalibration) + { + this.ChildFormMenu.CenterSystemCalibration.SplashStop(); + this.ChildFormMenu.CenterSystemCalibration.CalibrationButtonEnable(true, false, false); + } #endregion break; case "Csm": @@ -2436,6 +2248,10 @@ namespace ITC81DB_2H.Forms switch (cmd) { + case "SA0": + if ((ret = this.ReceiveCommandSA0(lane, receiveData)) != 0) + return ret; + break; case "SN0": if ((ret = this.ReceiveCommandSN0(lane, receiveData)) != 0) return ret; @@ -3051,7 +2867,7 @@ namespace ITC81DB_2H.Forms if (this.CurrentSystemStatus.Equipment == Define.E_EquipmentStatus.Stop) { this.CurrentWeightData.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); - this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); + //this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); this.CurrentWeightData.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig1.DecimalPlaces); this.CurrentWeightData.WeightString = receiveData.Substring(5, 5); this.CurrentWeightData.ADCValue = receiveData.Substring(10, 5); @@ -3059,7 +2875,7 @@ namespace ITC81DB_2H.Forms else { this.CurrentWeightData.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); - this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); + //this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); } #endregion if (this.CurrentWeightData.WeightString.Trim() == "-9999" || this.CurrentWeightData.WeightString.Trim() == "9999" @@ -3107,7 +2923,7 @@ namespace ITC81DB_2H.Forms case "SR0": // 운전 시 중량 #region Value Assign this.CurrentWeightData.JudgmentStatus = Helper.StringToJudgmentStatus(receiveData.Substring(0, 2)); - this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); + //this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); this.CurrentWeightData.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig1.DecimalPlaces); this.CurrentWeightData.WeightString = receiveData.Substring(5, 5); this.CurrentWeightData.ADCValue = receiveData.Substring(10, 5); @@ -3124,7 +2940,7 @@ namespace ITC81DB_2H.Forms this.SystemConfig1.ProductNumber = int.Parse(receiveData.Substring(0, 4)); this.CurrentWeightData.JudgmentStatus = Helper.StringToJudgmentStatus(receiveData.Substring(4, 2)); - this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(6, 3)); + //this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(6, 3)); this.CurrentWeightData.Weight = Helper.StringToWeight(receiveData.Substring(9, 5), this.SystemConfig1.DecimalPlaces); this.CurrentWeightData.WeightString = receiveData.Substring(9, 5); this.CurrentWeightData.ADCValue = receiveData.Substring(14, 5); @@ -4143,7 +3959,7 @@ namespace ITC81DB_2H.Forms case "A": #region Value Assign this.CurrentWeightData.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); - this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); + //this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); this.CurrentWeightData.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig1.DecimalPlaces); this.CurrentWeightData.ADCValue = receiveData.Substring(10, 5); #endregion @@ -4190,7 +4006,7 @@ namespace ITC81DB_2H.Forms case "A": #region Value Assign this.CurrentWeightData.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); - this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); + //this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); this.CurrentWeightData.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig1.DecimalPlaces); this.CurrentWeightData.ADCValue = receiveData.Substring(10, 5); #endregion @@ -4213,7 +4029,7 @@ namespace ITC81DB_2H.Forms case "A": #region Value Assign this.CurrentWeightData.Status = Helper.StringToWeightStatus(receiveData.Substring(0, 2)); - this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); + //this.ConverterAlarm(this.CurrentWeightData, receiveData.Substring(2, 3)); this.CurrentWeightData.Weight = Helper.StringToWeight(receiveData.Substring(5, 5), this.SystemConfig1.DecimalPlaces); for (int i = 0; i < this.CollectionGraphData.Count; i++) @@ -4300,6 +4116,34 @@ namespace ITC81DB_2H.Forms return ret; } + // 알람 + private int ReceiveCommandSA0(string lane, string receiveData) + { + int ret = 0; + string currentAlarm; + + switch (lane) + { + case "0": + #region Value Assign + currentAlarm = receiveData.Substring(0, 8); + #endregion + if (this.PreviousAlarm != currentAlarm) + { + this.IsAlarmOccured = this.CurrentAlarmList.IsAlarmOccured(currentAlarm); + this.Update30000ModbusItem(); + this.CurrentAlarmList.SetAlarm(currentAlarm); + this.ChildFormMainDisplay.UpdateDisplayAlarmView(this.CurrentAlarmList, currentAlarm); + this.ChildFormMenu.UpdateDisplayAlarmView(this.CurrentAlarmList, currentAlarm); + + this.PreviousAlarm = currentAlarm; + } + break; + default: + break; + } + return ret; + } #endregion #region Communication protocol @@ -7454,6 +7298,10 @@ namespace ITC81DB_2H.Forms this.Current30000ModbusData.WeightInt = tempWeight; this.ChildFormMainDisplay.MainModbus.UpdateData(this.Current30000ModbusData); + } + public void Update39000ModbusAlarmItem() + { + } /// /// Modbus RTU - Write Multiple Register에 대한 Manage 메소드 diff --git a/ITC81DB_2H/Forms/FormMainDisplay.cs b/ITC81DB_2H/Forms/FormMainDisplay.cs index 5f6a43a..be24ea2 100644 --- a/ITC81DB_2H/Forms/FormMainDisplay.cs +++ b/ITC81DB_2H/Forms/FormMainDisplay.cs @@ -136,6 +136,10 @@ namespace ITC81DB_2H.Forms this.buttonUser.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerFormMainDisplayLoginDisable)); this.buttonUser.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerFormMainDisplayLogOutDown)); this.buttonUser.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerFormMainDisplayLoginUp)); + } + else if (this.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -293,68 +297,447 @@ namespace ITC81DB_2H.Forms break; } } - public void AlarmOccurs(string errorNameKor, string errorNameEng) - { - if (this.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Korean) - { - this.PopUpWarning(errorNameKor); - this.MainAlarm.listBoxMessage.Items.Add(errorNameKor); - } - else - { - this.PopUpWarning(errorNameEng); - this.MainAlarm.listBoxMessage.Items.Add(errorNameEng); - } - } - public void UpdateDisplayAlarmView(WeightData data) - { - this.MainWeightBigScreen.UpdateDisplayAlarmView(this.ParentForm.CurrentWeightData); - this.MainWeightSmall.UpdateDisplayAlarmView(this.ParentForm.CurrentWeightData); - if (data.IsLoadCellError == true || data.IsInverterError == true || data.IsEmergencyStop == true || data.IsDoorInterlock == true - || data.IsPressureSensingError == true || data.IsSorterError == true || data.IsStackUpSensorError == true - || data.IsEntrySensorError == true) + public void AlarmOccurs(int errorNum, string alarmRawData) + { + string errorName = ""; + + switch (errorNum) + { + case 1: + #region a1_진입센서 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a1_진입센서 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a1_Fehler Eingangssensor"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a1_入口传感器错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a1_Ошибка датчика входа"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a1_Error en el sensor de entrada"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a1_Giriş Sensörü Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a1_Erreur du capteur d'entrée"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a1_Entry Sensor Error"; + break; + } + #endregion + break; + case 2: + #region a2_로드셀 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a2_로드셀 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a2_Fehler Wägezelle"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a2_称重传感器错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a2_Ошибка тензодатчика"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a2_Error en la celda de carga"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a2_Yük Hücresi Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a2_Erreur de cellule de charge"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a2_LoadCell Error"; + break; + } + #endregion + break; + case 3: + #region a3_공압 낮음 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a3_공압 낮음"; + break; + case Define.E_LanguageID.German: + errorName = "a3_Niedriger Druck"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a3_低压"; + break; + case Define.E_LanguageID.Russian: + errorName = "a3_Низкое давление воздуха"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a3_Baja presión"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a3_Düşük Basınç"; + break; + case Define.E_LanguageID.French: + errorName = "a3_Basse pression"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a3_Low Pressure"; + break; + } + #endregion + break; + case 4: + #region a4_문 열림 감지 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a4_문 열림 감지"; + break; + case Define.E_LanguageID.German: + errorName = "a4_Türverriegelung"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a4_门联锁"; + break; + case Define.E_LanguageID.Russian: + errorName = "a4_Обнаружение открытой двери"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a4_Enclavamiento de la puerta"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a4_Kapı Kilidi"; + break; + case Define.E_LanguageID.French: + errorName = "a4_Interverrouillage de porte"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a4_Door Interlock"; + break; + } + #endregion + break; + case 6: + #region a6_적체 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a6_적체 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a6_Stapelfehler"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a6_堆叠错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a6_Ошибка штабеля"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a6_Error de apilamiento"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a6_Yığma Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a6_Erreur d'empilage"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a6_Stack up Error"; + break; + } + #endregion + break; + case 7: + #region a7_선별부A 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a7_선별부A 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a7_Fehler Sortierer A"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a7_分拣机 A 错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a7_Ошибка сортировочного блока A"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a7_Error en el clasificador A"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a7_Sıralayıcı A Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a7_Erreur du trieur A"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a7_Sorter A Error"; + break; + } + #endregion + break; + case 8: + #region a8_비상정지 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a8_비상정지"; + break; + case Define.E_LanguageID.German: + errorName = "a8_Not-Aus"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a8_紧急停止"; + break; + case Define.E_LanguageID.Russian: + errorName = "a8_Аварийная остановка"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a8_Parada de emergencia"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a8_Acil Durdurma"; + break; + case Define.E_LanguageID.French: + errorName = "a8_Arrêt d'urgence"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a8_Emergency Stop"; + break; + } + #endregion + break; + case 9: + #region a9_인버터 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a9_인버터 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a9_Wechselrichterfehler"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a9_逆变器错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a9_Ошибка инвертора"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a9_Error del inversor"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a9_İnverter Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a9_Erreur de l'onduleur"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a9_Inverter Error"; + break; + } + #endregion + break; + case 13: + #region a13_방풍커버 열림 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a13_방풍커버 열림"; + break; + case Define.E_LanguageID.German: + errorName = "a13_Windschutzscheibenabdeckung offen"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a13_挡风玻璃盖打开"; + break; + case Define.E_LanguageID.Russian: + errorName = "a13_Открыта крышка ветрового стекла"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a13_Cubierta del parabrisas abierta"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a13_Rüzgar Geçirmez Açık"; + break; + case Define.E_LanguageID.French: + errorName = "a13_Couvercle de pare-brise ouvert"; + break; + case Define.E_LanguageID.Czech: + errorName = ""; + break; + default: + errorName = "a13_Windshield cover open"; + break; + } + #endregion + break; + case 14: + #region a14_선별부B 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a14_선별부B 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a14_Fehler Sortierer B"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a14_分拣机 B 错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a14_Ошибка сортировочного блока B"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a14_Error en el clasificador B"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a14_Sıralayıcı B Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a14_Erreur du trieur B"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a14_Sorter B Error"; + break; + } + #endregion + break; + case 18: + #region a18_제품진입 미감지 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a18_제품진입 미감지"; + break; + case Define.E_LanguageID.German: + errorName = "a18_Produkteingang nicht erkannt"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a18_产品入口未检测到"; + break; + case Define.E_LanguageID.Russian: + errorName = "a14_Ошибка сортировочного блока B"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a18_Entrada de producto no detectada"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a18_Ürün girişi algılanmadı"; + break; + case Define.E_LanguageID.French: + errorName = "a18_Entrée de produit non détectée"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a18_Product entry undetected"; + break; + } + #endregion + break; + default: + break; + } + + this.PopUpWarning(errorName); + this.MainAlarm.listBoxMessage.Items.Add(errorName); + } + public void UpdateDisplayAlarmView(AlarmList alarm, string alarmData) + { + if (alarm.IsLoadCellError == true || alarm.IsInverterError == true || alarm.IsEmergencyStop == true || alarm.IsDoorInterlock == true + || alarm.IsPressureSensingError == true || alarm.IsStackUpSensorError == true + || alarm.IsEntrySensorError == true || alarm.IsEntryNotDetected == true) { if (this.pictureBoxIconAlarm.Visible == false) this.pictureBoxIconAlarm.Visible = true; + + if (alarm.IsEntryNotDetected == true) + this.ParentForm.TransferData(CommunicationCommand.Stop, CommunicationID.MainBoard); + //if (alarm.IsStackUpSensorError == true) + //{ + // if (int.Parse(this.ParentForm.CurrentSystemParameter1.OptionBoard) != 2) // 디스펜서 사용 시, 컨베어 미정지 + // { + // this.ParentForm.TransferData(CommunicationCommand.Stop, CommunicationID.MainBoard); + // if (this.ParentForm.SystemConfig3.IsStartStopLog == true) + // this.ParentForm.smartFileStartStopLog.WriteString(string.Format("Send Stop ({0:yyyy-MM-dd HH:mm:ss}): FormMainDisplay-UpdateDisplayAlarmView2", DateTime.Now)); + // } + //} + + if (alarm.Flag == true) + { + if (this.ParentForm.SystemConfig1.IsExternalInputLamp == true) + this.ParentForm.OnExternalInputLampSignal(true); + if (this.ParentForm.SystemConfig1.IsExternalInputBuzzer == true) + this.ParentForm.OnExternalInputBuzzerSignal(true); + } } else { this.pictureBoxIconAlarm.Visible = false; this.MainAlarm.Visible = false; - this.labelSorterAlarm.Visible = false; this.PopUpWarningClose(); - if (this.ParentForm.IsLampOnDataSend == true) - this.ParentForm.TransferData(CommunicationCommand.LampOnContinuousDisable, CommunicationID.MainBoard); - if (this.ParentForm.IsBuzzerOnDataSend == true) - this.ParentForm.TransferData(CommunicationCommand.BuzzerOnContinuousDisable, CommunicationID.MainBoard); - - this.ParentForm.IsLampOnDataSend = false; - this.ParentForm.IsBuzzerOnDataSend = false; + if (this.ParentForm.SystemConfig1.IsExternalInputLamp == true) + this.ParentForm.OnExternalInputLampSignal(false); + if (this.ParentForm.SystemConfig1.IsExternalInputBuzzer == true) + this.ParentForm.OnExternalInputBuzzerSignal(false); return; } this.MainAlarm.listBoxMessage.Items.Clear(); - if (data.IsLoadCellError == true) - this.AlarmOccurs("a2_로드셀 에러", "a2_LoadCell Error"); - if (data.IsInverterError == true) - this.AlarmOccurs("a9_인버터 에러", "a9_Inverter Error"); - if (data.IsEmergencyStop == true) - this.AlarmOccurs("a8_비상정지", "a8_Emergency Stop"); - if (data.IsDoorInterlock == true) - this.AlarmOccurs("a4_문 열림 감지", "a4_Door Interlock"); - if (data.IsPressureSensingError == true) - this.AlarmOccurs("a3_공압 낮음", "a3_Low Pressure"); - if (data.IsEntrySensorError == true) - this.AlarmOccurs("a1_진입센서 에러", "a1_Entry Sensor Error"); - if (data.IsSorterError == true) - this.AlarmOccurs("7_선별부 에러", "a7_Sorter Error"); - if (data.IsStackUpSensorError == true) - this.AlarmOccurs("a6_적체 에러", "a6_Stack up Error"); + if (alarm.IsEntrySensorError == true) + this.AlarmOccurs(1, alarmData); + if (alarm.IsLoadCellError == true) + this.AlarmOccurs(2, alarmData); + if (alarm.IsPressureSensingError == true) + this.AlarmOccurs(3, alarmData); + if (alarm.IsDoorInterlock == true) + this.AlarmOccurs(4, alarmData); + if (alarm.IsStackUpSensorError == true) + this.AlarmOccurs(6, alarmData); + if (alarm.IsEmergencyStop == true) + this.AlarmOccurs(8, alarmData); + if (alarm.IsInverterError == true) + this.AlarmOccurs(9, alarmData); + if (alarm.IsEntryNotDetected == true) + this.AlarmOccurs(18, alarmData); } + public void ProductChange(int productNumber) { this.buttonProductNo.Text = "**"; @@ -760,9 +1143,6 @@ namespace ITC81DB_2H.Forms { string value = ""; - // 알람표시 - this.UpdateDisplayAlarmView(data); - if (this.MainWeightBigScreen != null) this.MainWeightBigScreen.UpdateStopWeightDisplay(status, data); if (this.MainWeightSmall != null) @@ -772,9 +1152,6 @@ namespace ITC81DB_2H.Forms { string value = ""; - // 알람표시 - this.UpdateDisplayAlarmView(wData); - if (wData.JudgmentStatus == Define.E_JudgmentStatus.Empty) return; @@ -1623,13 +2000,6 @@ namespace ITC81DB_2H.Forms if (this.MainAlarm.Visible == true) { this.MainAlarm.Visible = false; - - if (this.labelAlarmWindow.Visible == true - && (this.MainAlarm.listBoxMessage.Items.Contains("Sorter A Error") || this.MainAlarm.listBoxMessage.Items.Contains("Sorter B Error"))) - { - this.ParentForm.TransferData(CommunicationCommand.AlarmNgClearSorter, CommunicationID.MainBoard); - this.PopUpWarningClose(); - } } else { @@ -1637,10 +2007,8 @@ namespace ITC81DB_2H.Forms this.MainAlarm.Visible = true; } - if (this.ParentForm.IsLampOnDataSend == true) - this.ParentForm.TransferData(CommunicationCommand.LampOnContinuousDisable, CommunicationID.MainBoard); - if (this.ParentForm.IsBuzzerOnDataSend == true) - this.ParentForm.TransferData(CommunicationCommand.BuzzerOnContinuousDisable, CommunicationID.MainBoard); + this.ParentForm.TransferData(CommunicationCommand.LampOnContinuousDisable, CommunicationID.MainBoard); + this.ParentForm.TransferData(CommunicationCommand.BuzzerOnContinuousDisable, CommunicationID.MainBoard); } private void labelSorterAlarm_Click(object sender, EventArgs e) { @@ -1661,12 +2029,9 @@ namespace ITC81DB_2H.Forms if (this.ParentForm.SystemConfig3.IsPart11 == true) this.Part11AutomaticLogoutReset(); - if (this.MainAlarm.listBoxMessage.Items.Contains("Sorter A Error") || this.MainAlarm.listBoxMessage.Items.Contains("Sorter B Error")) - this.ParentForm.TransferData(CommunicationCommand.AlarmNgClearSorter, CommunicationID.MainBoard); - if (this.ParentForm.IsLampOnDataSend == true) - this.ParentForm.TransferData(CommunicationCommand.LampOnContinuousDisable, CommunicationID.MainBoard); - if (this.ParentForm.IsBuzzerOnDataSend == true) - this.ParentForm.TransferData(CommunicationCommand.BuzzerOnContinuousDisable, CommunicationID.MainBoard); + this.ParentForm.TransferData(CommunicationCommand.LampOnContinuousDisable, CommunicationID.MainBoard); + this.ParentForm.TransferData(CommunicationCommand.BuzzerOnContinuousDisable, CommunicationID.MainBoard); + this.PopUpWarningClose(); } diff --git a/ITC81DB_2H/Forms/FormMenu.Designer.cs b/ITC81DB_2H/Forms/FormMenu.Designer.cs index 20bcbe2..289cef9 100644 --- a/ITC81DB_2H/Forms/FormMenu.Designer.cs +++ b/ITC81DB_2H/Forms/FormMenu.Designer.cs @@ -47,6 +47,7 @@ this.labelUserID = new SmartX.SmartLabel(); this.labelUserLevel = new SmartX.SmartLabel(); this.timerTimeout = new System.Windows.Forms.Timer(); + this.pictureBoxIconAlarm = new System.Windows.Forms.PictureBox(); ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit(); this.SuspendLayout(); // @@ -427,12 +428,21 @@ this.timerTimeout.Interval = 10000; this.timerTimeout.Tick += new System.EventHandler(this.timerTimeout_Tick); // + // pictureBoxIconAlarm + // + this.pictureBoxIconAlarm.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxIconAlarm.Image"))); + this.pictureBoxIconAlarm.Location = new System.Drawing.Point(524, 0); + this.pictureBoxIconAlarm.Name = "pictureBoxIconAlarm"; + this.pictureBoxIconAlarm.Size = new System.Drawing.Size(60, 60); + this.pictureBoxIconAlarm.Click += new System.EventHandler(this.pictureBoxIconAlarm_Click); + // // FormMenu // this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi; this.AutoScroll = true; this.ClientSize = new System.Drawing.Size(800, 600); + this.Controls.Add(this.pictureBoxIconAlarm); this.Controls.Add(this.labelExpireOfPassword); this.Controls.Add(this.labelUserID); this.Controls.Add(this.labelUserLevel); @@ -475,5 +485,6 @@ private SmartX.SmartLabel labelUserID; private SmartX.SmartLabel labelUserLevel; private System.Windows.Forms.Timer timerTimeout; + private System.Windows.Forms.PictureBox pictureBoxIconAlarm; } } \ No newline at end of file diff --git a/ITC81DB_2H/Forms/FormMenu.cs b/ITC81DB_2H/Forms/FormMenu.cs index eb4bb99..11b9ea3 100644 --- a/ITC81DB_2H/Forms/FormMenu.cs +++ b/ITC81DB_2H/Forms/FormMenu.cs @@ -33,6 +33,8 @@ namespace ITC81DB_2H.Forms private Define.E_MenuSide SelectedSideMenu; private Collection CollectionButtonMenu; + public ControlMainDisplayAlarm MainAlarm; + // 기본설정 public ControlCenterBasicDataStatistics CenterBasicDataStatistics; public ControlCenterBasicHelp CenterBasicHelp; @@ -201,6 +203,10 @@ namespace ITC81DB_2H.Forms this.buttonInformation.DisableImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerFormMenuInformationDisable)); this.buttonInformation.DownImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerFormMenuInformationDown)); this.buttonInformation.UpImage = new Bitmap(images.GetImage(Class1.ButtonImages.gerFormMenuInformationUp)); + } + else if (this.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Spanish) + { + } else { @@ -245,6 +251,11 @@ namespace ITC81DB_2H.Forms this.InitializeControl(); + // 알람 표시 + this.pictureBoxIconAlarm.Visible = false; + this.MainAlarm.Visible = false; + this.MainAlarm.BringToFront(); + if (this.ParentForm.SystemConfig1.IsLogin == true) this.LoginVisible(true); } @@ -255,6 +266,10 @@ namespace ITC81DB_2H.Forms } private void InitializeControl() { + this.MainAlarm = new ControlMainDisplayAlarm(); + this.MainAlarm.Location = new Point(390, 60); + this.Controls.Add(this.MainAlarm); + this.CreateCenterBasicControl(); this.CreateCenterConfigurationControl(); this.CreateCenterEquipmentControl(); @@ -1245,7 +1260,445 @@ namespace ITC81DB_2H.Forms return true; else return false; - } + } + + public void AlarmOccurs(int errorNum, string alarmRawData) + { + string errorName = ""; + + switch (errorNum) + { + case 1: + #region a1_진입센서 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a1_진입센서 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a1_Fehler Eingangssensor"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a1_入口传感器错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a1_Ошибка датчика входа"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a1_Error en el sensor de entrada"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a1_Giriş Sensörü Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a1_Erreur du capteur d'entrée"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a1_Entry Sensor Error"; + break; + } + #endregion + break; + case 2: + #region a2_로드셀 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a2_로드셀 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a2_Fehler Wägezelle"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a2_称重传感器错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a2_Ошибка тензодатчика"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a2_Error en la celda de carga"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a2_Yük Hücresi Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a2_Erreur de cellule de charge"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a2_LoadCell Error"; + break; + } + #endregion + break; + case 3: + #region a3_공압 낮음 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a3_공압 낮음"; + break; + case Define.E_LanguageID.German: + errorName = "a3_Niedriger Druck"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a3_低压"; + break; + case Define.E_LanguageID.Russian: + errorName = "a3_Низкое давление воздуха"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a3_Baja presión"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a3_Düşük Basınç"; + break; + case Define.E_LanguageID.French: + errorName = "a3_Basse pression"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a3_Low Pressure"; + break; + } + #endregion + break; + case 4: + #region a4_문 열림 감지 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a4_문 열림 감지"; + break; + case Define.E_LanguageID.German: + errorName = "a4_Türverriegelung"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a4_门联锁"; + break; + case Define.E_LanguageID.Russian: + errorName = "a4_Обнаружение открытой двери"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a4_Enclavamiento de la puerta"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a4_Kapı Kilidi"; + break; + case Define.E_LanguageID.French: + errorName = "a4_Interverrouillage de porte"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a4_Door Interlock"; + break; + } + #endregion + break; + case 6: + #region a6_적체 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a6_적체 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a6_Stapelfehler"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a6_堆叠错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a6_Ошибка штабеля"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a6_Error de apilamiento"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a6_Yığma Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a6_Erreur d'empilage"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a6_Stack up Error"; + break; + } + #endregion + break; + case 7: + #region a7_선별부A 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a7_선별부A 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a7_Fehler Sortierer A"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a7_分拣机 A 错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a7_Ошибка сортировочного блока A"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a7_Error en el clasificador A"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a7_Sıralayıcı A Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a7_Erreur du trieur A"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a7_Sorter A Error"; + break; + } + #endregion + break; + case 8: + #region a8_비상정지 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a8_비상정지"; + break; + case Define.E_LanguageID.German: + errorName = "a8_Not-Aus"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a8_紧急停止"; + break; + case Define.E_LanguageID.Russian: + errorName = "a8_Аварийная остановка"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a8_Parada de emergencia"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a8_Acil Durdurma"; + break; + case Define.E_LanguageID.French: + errorName = "a8_Arrêt d'urgence"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a8_Emergency Stop"; + break; + } + #endregion + break; + case 9: + #region a9_인버터 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a9_인버터 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a9_Wechselrichterfehler"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a9_逆变器错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a9_Ошибка инвертора"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a9_Error del inversor"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a9_İnverter Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a9_Erreur de l'onduleur"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a9_Inverter Error"; + break; + } + #endregion + break; + case 13: + #region a13_방풍커버 열림 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a13_방풍커버 열림"; + break; + case Define.E_LanguageID.German: + errorName = "a13_Windschutzscheibenabdeckung offen"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a13_挡风玻璃盖打开"; + break; + case Define.E_LanguageID.Russian: + errorName = "a13_Открыта крышка ветрового стекла"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a13_Cubierta del parabrisas abierta"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a13_Rüzgar Geçirmez Açık"; + break; + case Define.E_LanguageID.French: + errorName = "a13_Couvercle de pare-brise ouvert"; + break; + case Define.E_LanguageID.Czech: + errorName = ""; + break; + default: + errorName = "a13_Windshield cover open"; + break; + } + #endregion + break; + case 14: + #region a14_선별부B 에러 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a14_선별부B 에러"; + break; + case Define.E_LanguageID.German: + errorName = "a14_Fehler Sortierer B"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a14_分拣机 B 错误"; + break; + case Define.E_LanguageID.Russian: + errorName = "a14_Ошибка сортировочного блока B"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a14_Error en el clasificador B"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a14_Sıralayıcı B Hatası"; + break; + case Define.E_LanguageID.French: + errorName = "a14_Erreur du trieur B"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a14_Sorter B Error"; + break; + } + #endregion + break; + case 18: + #region a18_제품진입 미감지 + switch (this.ParentForm.SystemConfig1.Language) + { + case Define.E_LanguageID.Korean: + errorName = "a18_제품진입 미감지"; + break; + case Define.E_LanguageID.German: + errorName = "a18_Produkteingang nicht erkannt"; + break; + case Define.E_LanguageID.Chinese: + errorName = "a18_产品入口未检测到"; + break; + case Define.E_LanguageID.Russian: + errorName = "a14_Ошибка сортировочного блока B"; + break; + case Define.E_LanguageID.Spanish: + errorName = "a18_Entrada de producto no detectada"; + break; + case Define.E_LanguageID.Turkish: + errorName = "a18_Ürün girişi algılanmadı"; + break; + case Define.E_LanguageID.French: + errorName = "a18_Entrée de produit non détectée"; + break; + case Define.E_LanguageID.Czech: + break; + default: + errorName = "a18_Product entry undetected"; + break; + } + #endregion + break; + default: + break; + } + + this.MainAlarm.listBoxMessage.Items.Add(errorName); + } + public void UpdateDisplayAlarmView(AlarmList alarm, string alarmData) + { + if (alarm.IsLoadCellError == true || alarm.IsInverterError == true || alarm.IsEmergencyStop == true || alarm.IsDoorInterlock == true + || alarm.IsPressureSensingError == true || alarm.IsStackUpSensorError == true + || alarm.IsEntrySensorError == true || alarm.IsEntryNotDetected == true) + { + if (this.pictureBoxIconAlarm.Visible == false) + this.pictureBoxIconAlarm.Visible = true; + + if (alarm.IsEntryNotDetected == true) + this.ParentForm.TransferData(CommunicationCommand.Stop, CommunicationID.MainBoard); + //if (alarm.IsStackUpSensorError == true) + //{ + // if (int.Parse(this.ParentForm.CurrentSystemParameter1.OptionBoard) != 2) // 디스펜서 사용 시, 컨베어 미정지 + // { + // this.ParentForm.TransferData(CommunicationCommand.Stop, CommunicationID.MainBoard); + // if (this.ParentForm.SystemConfig3.IsStartStopLog == true) + // this.ParentForm.smartFileStartStopLog.WriteString(string.Format("Send Stop ({0:yyyy-MM-dd HH:mm:ss}): FormMainDisplay-UpdateDisplayAlarmView2", DateTime.Now)); + // } + //} + + if (alarm.Flag == true) + { + if (this.ParentForm.SystemConfig1.IsExternalInputLamp == true) + this.ParentForm.OnExternalInputLampSignal(true); + if (this.ParentForm.SystemConfig1.IsExternalInputBuzzer == true) + this.ParentForm.OnExternalInputBuzzerSignal(true); + } + } + else + { + this.pictureBoxIconAlarm.Visible = false; + this.MainAlarm.Visible = false; + + if (this.ParentForm.SystemConfig1.IsExternalInputLamp == true) + this.ParentForm.OnExternalInputLampSignal(false); + if (this.ParentForm.SystemConfig1.IsExternalInputBuzzer == true) + this.ParentForm.OnExternalInputBuzzerSignal(false); + + return; + } + + this.MainAlarm.listBoxMessage.Items.Clear(); + + if (alarm.IsEntrySensorError == true) + this.AlarmOccurs(1, alarmData); + if (alarm.IsLoadCellError == true) + this.AlarmOccurs(2, alarmData); + if (alarm.IsPressureSensingError == true) + this.AlarmOccurs(3, alarmData); + if (alarm.IsDoorInterlock == true) + this.AlarmOccurs(4, alarmData); + if (alarm.IsStackUpSensorError == true) + this.AlarmOccurs(6, alarmData); + if (alarm.IsEmergencyStop == true) + this.AlarmOccurs(8, alarmData); + if (alarm.IsInverterError == true) + this.AlarmOccurs(9, alarmData); + if (alarm.IsEntryNotDetected == true) + this.AlarmOccurs(18, alarmData); + } public void CallBackGetUserData(UserManager.UserMgr_user_list_t userList) { @@ -2262,6 +2715,8 @@ namespace ITC81DB_2H.Forms } #endregion break; + case Define.E_LanguageID.Spanish: + break; default: #region 한글 switch (status.CurrentDisplay) @@ -2527,6 +2982,19 @@ namespace ITC81DB_2H.Forms if (this.EquipmentRun(this.ParentForm.CurrentSystemStatus.CurrentDisplay) == true) this.ParentForm.TransferData(CommunicationCommand.Start, CommunicationID.MainBoard); } + private void pictureBoxIconAlarm_Click(object sender, EventArgs e) + { + if (this.MainAlarm.Visible == true) + this.MainAlarm.Visible = false; + else + { + this.MainAlarm.BringToFront(); + this.MainAlarm.Visible = true; + } + + this.ParentForm.TransferData(CommunicationCommand.LampOnContinuousDisable, CommunicationID.MainBoard); + this.ParentForm.TransferData(CommunicationCommand.BuzzerOnContinuousDisable, CommunicationID.MainBoard); + } private void timerEncryption_Tick(object sender, EventArgs e) { diff --git a/ITC81DB_2H/Forms/FormMenu.resx b/ITC81DB_2H/Forms/FormMenu.resx index a0fad83..8aae717 100644 --- a/ITC81DB_2H/Forms/FormMenu.resx +++ b/ITC81DB_2H/Forms/FormMenu.resx @@ -1857,10 +1857,76 @@ 417, 12 + + + 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 + + WEBPAD False + + 42 + \ No newline at end of file diff --git a/ITC81DB_2H/Version.txt b/ITC81DB_2H/Version.txt index f906392..a22e624 100644 --- a/ITC81DB_2H/Version.txt +++ b/ITC81DB_2H/Version.txt @@ -13,6 +13,16 @@ ⺻ м 跮 */ +@ Ver 3.4.3 by CJY + - 2026.03.10 + - Ver 3.4.2 Modify + - ξ ߰ + - ޴ȭ ˶ ߰ + - ߷ + 1. ư -> ε念ư + 2. + 3. ߻ , + @ Ver 3.4.2 by CJY - 2025.11.11 - Ver 3.4.1 Modify diff --git a/ITC81DB_2H/bin/Release/ITC81DB_2H.exe b/ITC81DB_2H/bin/Release/ITC81DB_2H.exe index 252fc34..84cc714 100644 Binary files a/ITC81DB_2H/bin/Release/ITC81DB_2H.exe and b/ITC81DB_2H/bin/Release/ITC81DB_2H.exe differ diff --git a/ITC81DB_2H/bin/Release/ITC81DB_2H_ImageDll.dll b/ITC81DB_2H/bin/Release/ITC81DB_2H_ImageDll.dll index f6c758d..4951fb6 100644 Binary files a/ITC81DB_2H/bin/Release/ITC81DB_2H_ImageDll.dll and b/ITC81DB_2H/bin/Release/ITC81DB_2H_ImageDll.dll differ diff --git a/ITC81DB_2H/obj/Release/ITC81DB_2H.exe b/ITC81DB_2H/obj/Release/ITC81DB_2H.exe index 252fc34..84cc714 100644 Binary files a/ITC81DB_2H/obj/Release/ITC81DB_2H.exe and b/ITC81DB_2H/obj/Release/ITC81DB_2H.exe differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Class1.cs b/ITC81DB_ImageDll/ITC81DB_ImageDll/Class1.cs index 0c48244..39d0ccc 100644 --- a/ITC81DB_ImageDll/ITC81DB_ImageDll/Class1.cs +++ b/ITC81DB_ImageDll/ITC81DB_ImageDll/Class1.cs @@ -3250,13 +3250,13 @@ namespace ITC81DB_2H_ImageDll bt = new Bitmap(Resource1.korCalibrationStartUp); break; case ButtonImages.korCalibrationZeroDisable: - bt = new Bitmap(Resource1.korCalibrationZeroDisable); + bt = new Bitmap(Resource1.korCalibrationOffsetAdjustmentDisable); break; case ButtonImages.korCalibrationZeroDown: - bt = new Bitmap(Resource1.korCalibrationZeroDown); + bt = new Bitmap(Resource1.korCalibrationOffsetAdjustmentDown); break; case ButtonImages.korCalibrationZeroUp: - bt = new Bitmap(Resource1.korCalibrationZeroUp); + bt = new Bitmap(Resource1.korCalibrationOffsetAdjustmentUp); break; case ButtonImages.korFormMainDisplayClearDisable: bt = new Bitmap(Resource1.korFormMainDisplayClearDisable); diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/ITC81DB_2H_ImageDll.csproj b/ITC81DB_ImageDll/ITC81DB_ImageDll/ITC81DB_2H_ImageDll.csproj index c04a128..2b72456 100644 --- a/ITC81DB_ImageDll/ITC81DB_ImageDll/ITC81DB_2H_ImageDll.csproj +++ b/ITC81DB_ImageDll/ITC81DB_ImageDll/ITC81DB_2H_ImageDll.csproj @@ -2875,33 +2875,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -2911,33 +2884,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -3562,6 +3508,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resource1.Designer.cs b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resource1.Designer.cs index 6a78e84..4b7c80f 100644 --- a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resource1.Designer.cs +++ b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resource1.Designer.cs @@ -5041,6 +5041,27 @@ namespace ITC81DB_2H_ImageDll { } } + internal static System.Drawing.Bitmap korCalibrationOffsetAdjustmentDisable { + get { + object obj = ResourceManager.GetObject("korCalibrationOffsetAdjustmentDisable", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + internal static System.Drawing.Bitmap korCalibrationOffsetAdjustmentDown { + get { + object obj = ResourceManager.GetObject("korCalibrationOffsetAdjustmentDown", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + internal static System.Drawing.Bitmap korCalibrationOffsetAdjustmentUp { + get { + object obj = ResourceManager.GetObject("korCalibrationOffsetAdjustmentUp", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + internal static System.Drawing.Bitmap korCalibrationStartDisable { get { object obj = ResourceManager.GetObject("korCalibrationStartDisable", resourceCulture); @@ -5062,27 +5083,6 @@ namespace ITC81DB_2H_ImageDll { } } - internal static System.Drawing.Bitmap korCalibrationZeroDisable { - get { - object obj = ResourceManager.GetObject("korCalibrationZeroDisable", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - internal static System.Drawing.Bitmap korCalibrationZeroDown { - get { - object obj = ResourceManager.GetObject("korCalibrationZeroDown", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - internal static System.Drawing.Bitmap korCalibrationZeroUp { - get { - object obj = ResourceManager.GetObject("korCalibrationZeroUp", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - internal static System.Drawing.Bitmap korFormMainDisplayClearDisable { get { object obj = ResourceManager.GetObject("korFormMainDisplayClearDisable", resourceCulture); diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resource1.resx b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resource1.resx index 98a7ab9..2a95400 100644 --- a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resource1.resx +++ b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resource1.resx @@ -175,13 +175,13 @@ Resources\korCalibrationStartUp.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - + Resources\korCalibrationZeroDisable.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - + Resources\korCalibrationZeroDown.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - + Resources\korCalibrationZeroUp.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelDisable.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelDisable.png index a2041e9..75e73c4 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelDisable.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelDisable.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelDown.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelDown.png index 3c9bd4e..915a059 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelDown.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelDown.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelUp.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelUp.png index c16920e..b9ed1a5 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelUp.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCancelUp.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightDisable.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightDisable.png index 57b0fc2..d39f295 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightDisable.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightDisable.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightDown.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightDown.png index 5aa776b..242a7d1 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightDown.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightDown.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightUp.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightUp.png index ba0a991..267edc2 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightUp.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationCounterweightUp.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartDisable.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartDisable.png index 1053ec4..22d4f96 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartDisable.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartDisable.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartDown.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartDown.png index 9af2bac..753f6b7 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartDown.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartDown.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartUp.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartUp.png index 50ef3d7..633d17a 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartUp.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/engCalibrationStartUp.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelDisable.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelDisable.png index b15ba04..e7ddbd6 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelDisable.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelDisable.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelDown.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelDown.png index fc40f3a..8d551dd 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelDown.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelDown.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelUp.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelUp.png index 7e242b1..8c7b3e7 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelUp.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCancelUp.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightDisable.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightDisable.png index 95a1bcd..fe8ebf8 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightDisable.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightDisable.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightDown.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightDown.png index f39a041..c9e890b 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightDown.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightDown.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightUp.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightUp.png index e3797ff..87665e4 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightUp.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationCounterweightUp.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartDisable.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartDisable.png index 56929ec..0bddc6c 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartDisable.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartDisable.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartDown.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartDown.png index 8a10104..8cb6dd9 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartDown.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartDown.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartUp.png b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartUp.png index 98150f9..f5359da 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartUp.png and b/ITC81DB_ImageDll/ITC81DB_ImageDll/Resources/korCalibrationStartUp.png differ diff --git a/ITC81DB_ImageDll/ITC81DB_ImageDll/bin/Release/ITC81DB_2H_ImageDll.dll b/ITC81DB_ImageDll/ITC81DB_ImageDll/bin/Release/ITC81DB_2H_ImageDll.dll index f6c758d..4951fb6 100644 Binary files a/ITC81DB_ImageDll/ITC81DB_ImageDll/bin/Release/ITC81DB_2H_ImageDll.dll and b/ITC81DB_ImageDll/ITC81DB_ImageDll/bin/Release/ITC81DB_2H_ImageDll.dll differ