diff --git a/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.Designer.cs b/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.Designer.cs index 11eaf8b..a31b6e5 100644 --- a/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.Designer.cs +++ b/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.Designer.cs @@ -264,18 +264,17 @@ this.labelCh2Format.BackPictureBox2 = this.smartGroupBox1; this.labelCh2Format.BorderColor = System.Drawing.Color.Black; this.labelCh2Format.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelCh2Format.Font = new System.Drawing.Font("Arial", 8F, System.Drawing.FontStyle.Regular); this.labelCh2Format.ForeColor = System.Drawing.Color.White; this.labelCh2Format.InitVisible = true; this.labelCh2Format.LineSpacing = 0F; - this.labelCh2Format.Location = new System.Drawing.Point(194, 208); + this.labelCh2Format.Location = new System.Drawing.Point(194, 210); this.labelCh2Format.Name = "labelCh2Format"; this.labelCh2Format.Size = new System.Drawing.Size(393, 40); this.labelCh2Format.TabIndex = 39; this.labelCh2Format.Text = "smartLabel2"; - this.labelCh2Format.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle; - this.labelCh2Format.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; - this.labelCh2Format.Wordwrap = false; + this.labelCh2Format.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left; + this.labelCh2Format.TextVAlign = SmartX.SmartLabel.TextVerAlign.Top; + this.labelCh2Format.Wordwrap = true; // // labelCh1Format // @@ -283,18 +282,17 @@ this.labelCh1Format.BackPictureBox2 = this.smartGroupBox1; this.labelCh1Format.BorderColor = System.Drawing.Color.Black; this.labelCh1Format.BorderStyle = System.Windows.Forms.BorderStyle.None; - this.labelCh1Format.Font = new System.Drawing.Font("Arial", 8F, System.Drawing.FontStyle.Regular); this.labelCh1Format.ForeColor = System.Drawing.Color.White; this.labelCh1Format.InitVisible = true; this.labelCh1Format.LineSpacing = 0F; - this.labelCh1Format.Location = new System.Drawing.Point(194, 110); + this.labelCh1Format.Location = new System.Drawing.Point(194, 112); this.labelCh1Format.Name = "labelCh1Format"; this.labelCh1Format.Size = new System.Drawing.Size(393, 40); this.labelCh1Format.TabIndex = 38; this.labelCh1Format.Text = "STX[1] ID[5] No[4] U[6] R[6] O[6] G[1] W[6] ETX[1]"; - this.labelCh1Format.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle; - this.labelCh1Format.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle; - this.labelCh1Format.Wordwrap = false; + this.labelCh1Format.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left; + this.labelCh1Format.TextVAlign = SmartX.SmartLabel.TextVerAlign.Top; + this.labelCh1Format.Wordwrap = true; // // comboBoxCOM3BaudRate // diff --git a/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.cs b/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.cs index a318eb1..7c6a7f8 100644 --- a/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.cs +++ b/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.cs @@ -78,6 +78,7 @@ namespace ITC81DB_2.Controls this.comboBoxCOM1Mode.Items.Add("STD1"); this.comboBoxCOM1Mode.Items.Add("Remote"); this.comboBoxCOM1Mode.Items.Add("Printer"); + this.comboBoxCOM1Mode.Items.Add("STD2"); this.comboBoxCOM1Mode.SelectedIndex = 0; this.comboBoxCOM1Mode.SelectedIndexChanged += new EventHandler(this.comboBoxSerial1Mode_SelectedIndexChanged); @@ -96,6 +97,7 @@ namespace ITC81DB_2.Controls this.comboBoxCOM3Mode.Items.Add("STD1"); this.comboBoxCOM3Mode.Items.Add("Remote"); this.comboBoxCOM3Mode.Items.Add("Printer"); + this.comboBoxCOM3Mode.Items.Add("STD2"); this.comboBoxCOM3Mode.SelectedIndex = 0; this.comboBoxCOM3Mode.SelectedIndexChanged += new EventHandler(this.comboBoxSerial3Mode_SelectedIndexChanged); @@ -113,16 +115,17 @@ namespace ITC81DB_2.Controls switch(this.comboBoxCOM1Mode.SelectedIndex) { case 1: // STD1 - this.labelCh1Format.Text = "STX[1],ID[5],No[4],Line[1],U[6],R[6],O[6],G[1],W[6],ETX[1]"; + this.labelCh1Format.Text = "STX[1],ID[5],No[4],Lane[1],U[6],R[6],O[6],G[1],W[6],ETX[1]"; break; case 2: // Remote this.labelCh1Format.Text = "STX[1],No[2],Grd[1],Weight[6],ETX[1]"; break; - case 3: // Printer(All) - case 4: // Printer(1Lane) - case 5: // Printer(2Lane) + case 3: // Printer this.labelCh1Format.Text = "No[4],Grd[8],Weight[10],CNT[10]"; break; + case 4: // STD2 + this.labelCh1Format.Text = "STX[1],ID[5],No[4],Lane[1],U[6],P[6],O[6],UC[7],PC[7],OC[7],ExC[7],TC[9],Grd[1],Sign[1],Weight[6],ETX[1]"; + break; default: break; } @@ -132,16 +135,17 @@ namespace ITC81DB_2.Controls switch (this.comboBoxCOM3Mode.SelectedIndex) { case 1: // STD1 - this.labelCh2Format.Text = "STX[1],ID[5],No[4],Line[1],U[6],R[6],O[6],G[1],W[6],ETX[1]"; + this.labelCh2Format.Text = "STX[1],ID[5],No[4],Lane[1],U[6],R[6],O[6],G[1],W[6],ETX[1]"; break; case 2: // Remote this.labelCh2Format.Text = "STX[1],No[2],Grd[1],Weight[6],ETX[1]"; break; - case 3: // Printer(All) - case 4: // Printer(1Lane) - case 5: // Printer(2Lane) + case 3: // Printer this.labelCh2Format.Text = "No[4],Grd[8],Weight[10],CNT[10]"; break; + case 4: // STD2 + this.labelCh2Format.Text = "STX[1],ID[5],No[4],Lane[1],U[6],P[6],O[6],UC[7],PC[7],OC[7],ExC[7],TC[9],Grd[1],Sign[1],Weight[6],ETX[1]"; + break; default: break; } @@ -298,8 +302,6 @@ namespace ITC81DB_2.Controls #endregion break; case 3: - case 4: - case 5: #region Printer sb.Append(string.Format("{0, 4}", this.ParentForm.ParentForm.SystemConfig.ProductNumber)); sb.Append(string.Format("{0, 3}", 1)); @@ -312,6 +314,26 @@ namespace ITC81DB_2.Controls sb.Append("\n"); #endregion break; + case 4: + #region STD2 + sb.Append((char)0x02); + sb.Append("IN001"); + sb.Append("0001"); + sb.Append("1"); + sb.Append(Helper.StringZeroFillDigits6(Helper.StringToDecimalPlaces("1000", this.ParentForm.ParentForm.SystemConfig.DecimalPlaces))); + sb.Append(Helper.StringZeroFillDigits6(Helper.StringToDecimalPlaces("2000", this.ParentForm.ParentForm.SystemConfig.DecimalPlaces))); + sb.Append(Helper.StringZeroFillDigits6(Helper.StringToDecimalPlaces("3000", this.ParentForm.ParentForm.SystemConfig.DecimalPlaces))); + sb.Append(string.Format("{0:0000000}", 11111)); + sb.Append(string.Format("{0:0000000}", 22222)); + sb.Append(string.Format("{0:0000000}", 33333)); + sb.Append(string.Format("{0:0000000}", 11111)); + sb.Append(string.Format("{0:000000000}", 77777)); + sb.Append("P"); + sb.Append(" "); + sb.Append(Helper.StringZeroFillDigits6(Helper.DoubleToString(123.4, this.ParentForm.ParentForm.SystemConfig.DecimalPlaces))); + sb.Append((char)0x03); + #endregion + break; default: break; } @@ -351,9 +373,7 @@ namespace ITC81DB_2.Controls #endregion break; case 3: - case 4: - case 5: - #region Printer + #region Printer sb.Append(string.Format("{0, 4}", this.ParentForm.ParentForm.SystemConfig.ProductNumber)); sb.Append(string.Format("{0, 3}", 1)); sb.Append(" P"); @@ -364,6 +384,26 @@ namespace ITC81DB_2.Controls sb.Append(value.PadLeft(11, ' ')); #endregion break; + case 4: + #region STD2 + sb.Append((char)0x02); + sb.Append("IN001"); + sb.Append("0001"); + sb.Append("1"); + sb.Append(Helper.StringZeroFillDigits6(Helper.StringToDecimalPlaces("1000", this.ParentForm.ParentForm.SystemConfig.DecimalPlaces))); + sb.Append(Helper.StringZeroFillDigits6(Helper.StringToDecimalPlaces("2000", this.ParentForm.ParentForm.SystemConfig.DecimalPlaces))); + sb.Append(Helper.StringZeroFillDigits6(Helper.StringToDecimalPlaces("3000", this.ParentForm.ParentForm.SystemConfig.DecimalPlaces))); + sb.Append(string.Format("{0:0000000}", 11111)); + sb.Append(string.Format("{0:0000000}", 22222)); + sb.Append(string.Format("{0:0000000}", 33333)); + sb.Append(string.Format("{0:0000000}", 11111)); + sb.Append(string.Format("{0:000000000}", 77777)); + sb.Append("P"); + sb.Append(" "); + sb.Append(Helper.StringZeroFillDigits6(Helper.DoubleToString(123.4, this.ParentForm.ParentForm.SystemConfig.DecimalPlaces))); + sb.Append((char)0x03); + #endregion + break; default: break; } diff --git a/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.resx b/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.resx index 57b096e..4dfc158 100644 --- a/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.resx +++ b/ITC81DB_2/Controls/CenterConfiguration/ControlCenterConfiCommunication.resx @@ -1107,193 +1107,221 @@ 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 - RK5CYII= + 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 + 91VtkSCeEDA9lyV/sKbax9UH0zCwT3u+1S9tJbC0AfWQYFF9lm2ngSeVAF/7O2bdyLn01pve4tJ7jSPV + Pj5HVfWPt5LnWqE018J0u+qTrJN1s037PyRt/7XXRb5v99Mua9szdqpy/Owvpq9Xu01bOa88p7p+69pI + 1XOdttV+0t4uyz7yuH1OWb+q9tdez70+W6tUr52+qum1PNVe29etu1btc+gtZx79uQ6bCMY99QZeb5D7 + JKBWIEzVG2G+Vh0amnraN9ve8qn2h9IxNeeHcGr6ODWd/dtner7pmwScNjAk2GTdti/2BZW2LZV9ZZ+9 + EHbMugnFFfxyTmmP9vXPtll39Bqn2sfn6LrKc5/+YzDjpGp6fVT/pc+rrb0uptdmu6xtr/3kNWqPn+/r + dUu121Tl9ZyecwXqaWCtazP7bNujavq659qpmi5rA337c2LNUr12+qry2uf6HWl/HuVxb19rl/Ouap/b + dc7xlqIlpXrtLOtig3EGYG9glnqDzdfe8vLex//qoTfc6Zta3vDa5b3QlDfMPB5pZ7t6y0uFjTy37PdY + c34opaaPU9lf275P+rGqDUaR/VS1M7XXBZV2u+m51D7qWMesW2E5x5mGqLpmsk0e5zVJTfeZah+fo6o8 + xzy/yGtQzzmV/piG0xo3076r1y/bV1t7XeT7dv12WbVln1U1Flp1jFTbXtULpHW+07HRBtm2Paqmr3t7 + /Onzj7rW2lnoNUv12umbU9Pr/ly04/OYmo4ZHpbqtbOsiw3GGYCnqKf/5nNXX/OmNvohljfBvNm1g74N + TXN/iEyrDRVLSU0fp475Adc+/4Tfdlk7y5b1ynVBpV7f3oxehdvqr0PXvS54JVhV5fza17hdL9U+PkdV + vdc5z71CXu+aTD+lX6t/2mrXb6+LfN/uo112yPrT5W17VW+bSHvGb86t/Udu1XT9qmnf1PNN32TZ1L4+ + W6NUr52+fa/56JqYM1mxBjnv3vO5zmgM8hWpXjvLuthgnAHYG5jHyn4S3nozQPvUm2T20Vs+R8Ja9ntT + 03C6T2r6ONULjiPpw6re8qr6oZmv1wWV9Gsq67T76i07dN32POsfOq20VWXdbJPKsnafqfbxOaqaPrcy + /UdCtbd9lEofRS8Utv1dr31v2SHrT5e37VW9bdrnkcoseM6x/ncgNd2mato3dT1cV20frFmq187h6po4 + l9ecu5XqtbOsTd1jnEBYISc/qEq19d44W9m+trkuXGad1PTNs+QNeV/QzXbTY6T9FHXd82yl2scVGHIu + bfs+o8BSqrLeoUEl/ZPqncd02aHrtud5XWXdbJPKPtp9ptrH56hq+txK21f5Pm3trH4CcvuPyd5r0NtH + b1mvrW5ZavW2iarpMdr/Icj11Qb80b6iato3dT30rrNzlOq1c7hLuya4XaleO8vaRDCuQHtIZWar96Yb + 7Zvl9E12qo43ffPMudTsWSozolm31VYej2ar951PL4jMkWoftzOC+2bR8zxzTvW1qrduVRusrgsq+57f + dNmh6+7rz55sk8o+2vZU+/gcVU2fW2n/AVP/gKu+TE3Xr75qX4N9/d3uv9raINv7H4u0VbXtVdNj7Dv+ + vudSNe2bOn7vlp2o20tGfbo2qV47h+td9zCS6rWzrIsPxglX9d/x+Zo3pTZw1Tp5I24D6/SNMva9kR4i + b+ztueSYo/XaN+aE0d56h7yx3/QHcqp93B5z9AbfBpiEgXab3vpVhzyfVPu49/ymyw5dtz3vtE/XTXDP + epFrJl9766bax+eoqtcPee41VvK12qsvU+nLak9wrmpfg7Z9Oham/0NQqs8zftpj5PsaW6l2m6rpNdVe + b+0/hrOv9mdBu01UTfum3d90WRv0R+N+bVK9dg5X12t73Z+zmui4qXbs8qJUr51lXXwwbt+sMyB765QM + 1qoEuunybF913b562u0PeXOsH6qp3vJ951PP+6Y/kFPTtva8es+jnVXO8vY8p+tGVbvedUFl3/ObLjtm + 3XpuOV77wzvfV1irMFjrZh+1XqTax+eoKs81z7O0gTXVvk7t65d1syyvfxtY094ep17X+odi/eOjrXb9 + 9hg5lzpGe32k2m2qpmMkr2mdW7av40+fY7tN1LGyXvbZvv7tuWcc1PKqbNPua81SvXZe1L62N6npz5C1 + mo7NuTUdi3xFqtfOsjYVjK/74dPOYPVmads35TkDu91/L3i32jCYr7119p1PPe9pEDlWatrWzsKn8lxy + vGh/cNax2/Oc7iuqEkoODSr7nt902THrtuc6Ooc8zrrZJpV9tPtMtY/P0XVV/xMw3S791avqv+lrkDHR + XktVbX+360eOcd027f8KVfXOd+7xp1XLMm7TN73Kc2//sbV2qV47L8q1kNf1prKf3v7XJueZn3c31Y5P + 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 + RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZI + MAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2 + RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZI + MAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2 + RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZI + MAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2 + RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZI + MAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2 + RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZI + MAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2 + RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZI + MAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2 + RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZI + MAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2 + RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZI + MAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2RDBmSDAGALZEMGZIMAYAtkQwZkgwBgC2 + RDBmSDAGALYkwfiJJ57o5tFjtZlKML4AgjEAsCUJxvfu3evm0WO1mUowvgCCMQCwJQnGjz76aDePHqvN + VILxBRCMAYAtSTD+wAdunl2jzVSC8QUQjAGALRGMGRKMAYAtEYwZEowBgC0RjBkSjAGALRGMGRKMAYAt + EYwZEowBgC0RjBkSjAGALRGMGUowfvDgQffCAQC4NIIxQ4IxALAlgjFDgjEAsCWCMUOCMQCwJYIxQ4Ix + ALAlgjFDgjEAsCWCMUOCMQCwJYIxQ4IxALAlgjFDgjEAsCWCMUOCMQCwJYIxQ4IxALAlgjFDgjEAsCWC + MUOCMQCwJYIxQ4IxALAlgjFDgjEAsCWCMUOCMQCwJYIxQ4IxALAlgjFDgjEAsCWCMUOCMQCwJYIxQ4Ix + ALAlgjFDgjEAsCWCMUOCMQCwJYIxQ4IxALAlgjFDCcap3oUDAHBpBGOGBGMAYEsEY4YEYwBgSwRjhgRj + AGBLBGOGBGMAYEsEY4YEYwBgSwRjhgRjAGBLBGOGBGMAYEsEY4YSjP2BDwBgKwRjhgRjAGBLBGOG3EoB + AGyJYMyQYAwAbIlgzJBgDABsiWDMkGAMAGzJ13zN1+weeeSRbh49VpupThqMf+AHfkAwvgOCMQCwJd/y + Ld+y+8M//MNuHj1Wm6lOGoy/6Zu+affUU0/tfvQ/vbhPbp9gDABsyfd+7/fu3vKWt3Tz6LHaTHXSYByP + PfbY7t/87kceOgi3SzAGALbkF3/xF3c///M/382ix2oz1cmD8W/+5m/ufvt9n3joINwuwRgA2Iqv+qqv + 2n3qU5/aveIVr+hm0WO1merkwfjbv/3bd08++eTuX/63Dz90IG6PYAwAbMVrXvOaq4nYXg6do81UJw/G + 8Ru/8Ru7//LInz50IG6PYAwAbMH3fM/37D7xiU/svuu7vqubQedoM9WtBON473vfu/vP7//E7qd+548f + OiCnJxgDAJcut07kroSf/Mmf7GbPudpMdWvB+Ou//ut373znO68+peKXf++jDx2U0xKMAYBLlXuKf/Zn + f/Zqpvinf/qnu7nzJtpMdWvBuPzSL/3S7t69e7v3fPSTu//wnsd2//odH9798//6od1r3vZBTqSC8dd+ + 7dcCAJy9b/7mb776SLZf+IVfuPpFu9xT/N3f/d3drHlTbRa+9WAcmT1+3etet3vXu9519XFun/zkJ3dP + PPEEJ5R6//vfDwBw9vLHO/I5xQnGp/r0iZE2Cy8SjAEAYI3aLCwYAwCwWW0WFowBANisNgsLxgAAbFab + hQVjAAA2q83CgjEAAJvVZmHBGACAzWqzsGAMAMBmtVlYMAYAYLPaLCwYAwCwWW0WFowBANisNgsLxgAA + bFabhQVjAAA2q83CgjEAAJvVZmHBGACAzWqzsGAMAMBmtVlYMAYAYLPaLPxQMAYAgK0SjAEA4B8JxgAA + 8Fsf2P1/P01U5x4HaZkAAAAASUVORK5CYII= diff --git a/ITC81DB_2/Controls/CenterInformation/ControlCenterInforSystem.cs b/ITC81DB_2/Controls/CenterInformation/ControlCenterInforSystem.cs index 88e7ae8..88017af 100644 --- a/ITC81DB_2/Controls/CenterInformation/ControlCenterInforSystem.cs +++ b/ITC81DB_2/Controls/CenterInformation/ControlCenterInforSystem.cs @@ -63,7 +63,7 @@ namespace ITC81DB_2.Controls private void DefaultSetting() { this.labelSerialNo.Text = this.ParentForm.ParentForm.SystemConfig.SerialNumber; - this.labelDisplayVer.Text = "2.1.2"; + this.labelDisplayVer.Text = "2.2.0"; } public void UpdateMainBoardVersionDisplay(string version) diff --git a/ITC81DB_2/Forms/FormMain.cs b/ITC81DB_2/Forms/FormMain.cs index 9de506f..69935cc 100644 --- a/ITC81DB_2/Forms/FormMain.cs +++ b/ITC81DB_2/Forms/FormMain.cs @@ -1500,6 +1500,9 @@ namespace ITC81DB_2.Forms if (this.SystemConfig.IsPrint1Enable == true) this.TransferSerialCOM1(this.Transfer_3_Print(this.CurrentWeightData1, DataStore.Line.Line1, this.CurrentProductItem1)); break; + case 4: + this.TransferSerialCOM1(this.Transfer_4_STD2(this.SystemConfig, DataStore.Line.Line1, this.CurrentWeightData1, this.CurrentProductItem1)); + break; default: break; } @@ -1519,6 +1522,9 @@ namespace ITC81DB_2.Forms if (this.SystemConfig.IsPrint1Enable == true) this.TransferSerialCOM3(this.Transfer_3_Print(this.CurrentWeightData1, DataStore.Line.Line1, this.CurrentProductItem1)); break; + case 4: + this.TransferSerialCOM3(this.Transfer_4_STD2(this.SystemConfig, DataStore.Line.Line1, this.CurrentWeightData1, this.CurrentProductItem1)); + break; default: break; } @@ -1571,6 +1577,9 @@ namespace ITC81DB_2.Forms if (this.SystemConfig.IsPrint2Enable == true) this.TransferSerialCOM1(this.Transfer_3_Print(this.CurrentWeightData2, DataStore.Line.Line2, this.CurrentProductItem2)); break; + case 4: + this.TransferSerialCOM1(this.Transfer_4_STD2(this.SystemConfig, DataStore.Line.Line2, this.CurrentWeightData2, this.CurrentProductItem2)); + break; default: break; } @@ -1590,6 +1599,9 @@ namespace ITC81DB_2.Forms if(this.SystemConfig.IsPrint2Enable == true) this.TransferSerialCOM3(this.Transfer_3_Print(this.CurrentWeightData2, DataStore.Line.Line2, this.CurrentProductItem2)); break; + case 4: + this.TransferSerialCOM3(this.Transfer_4_STD2(this.SystemConfig, DataStore.Line.Line2, this.CurrentWeightData2, this.CurrentProductItem2)); + break; default: break; } @@ -1957,6 +1969,68 @@ namespace ITC81DB_2.Forms return sb.ToString(); } + private string Transfer_4_STD2(SystemConfigurationItem system, DataStore.Line line, WeightData weight, ProductItem product) + { + StringBuilder sb = new StringBuilder(); + + if (weight.JudgmentStatus == DataStore.JudgmentStatus.Empty) + return ""; + + sb.Append((char)0x02); + sb.Append(string.Format("IN{0:000}", system.EquipmentID)); + sb.Append(string.Format("{0:0000}", product.Number)); + sb.Append((int)line); + + sb.Append(Helper.StringZeroFillDigits6(Helper.StringToDecimalPlaces(product.UnderRange, this.SystemConfig.DecimalPlaces))); + sb.Append(Helper.StringZeroFillDigits6(Helper.StringToDecimalPlaces(product.PassRange, this.SystemConfig.DecimalPlaces))); + sb.Append(Helper.StringZeroFillDigits6(Helper.StringToDecimalPlaces(product.OverRange, this.SystemConfig.DecimalPlaces))); + + sb.Append(string.Format("{0:0000000}", weight.UnderCount)); + sb.Append(string.Format("{0:0000000}", weight.PassCount)); + sb.Append(string.Format("{0:0000000}", weight.OverCount)); + sb.Append(string.Format("{0:0000000}", weight.ExNGCount)); + sb.Append(string.Format("{0:000000000}", weight.TotalCount1)); + + switch (weight.JudgmentStatus) + { + case DataStore.JudgmentStatus.Empty: + break; + case DataStore.JudgmentStatus.Under: + sb.Append("U"); + break; + case DataStore.JudgmentStatus.Pass: + sb.Append("P"); + break; + case DataStore.JudgmentStatus.Over: + sb.Append("O"); + break; + case DataStore.JudgmentStatus.Double: + sb.Append("D"); + break; + case DataStore.JudgmentStatus.Metal: + sb.Append("M"); + break; + case DataStore.JudgmentStatus.ExNg: + sb.Append("E"); + break; + default: + sb.Append("E"); + break; + } + + if (weight.Weight <= 0.0) + sb.Append("-"); + else + sb.Append(" "); + + string temp = Helper.DoubleToString(weight.Weight, this.SystemConfig.DecimalPlaces); + if (temp.StartsWith("-")) + temp = temp.Substring(1, temp.Length - 1); + sb.Append(temp.PadLeft(6, ' ')); + sb.Append((char)0x03); + + return sb.ToString(); + } #endregion #region Data Backup diff --git a/ITC81DB_2/Version.txt b/ITC81DB_2/Version.txt index c04507e..daa1029 100644 --- a/ITC81DB_2/Version.txt +++ b/ITC81DB_2/Version.txt @@ -13,6 +13,11 @@ 2¿­ ±âº»Çü ÄÁº£¾î °è·®±â */ +@ Ver 2.2.0 by CJY + - 2021.09.28 + - Ver 2.1.2 Modify + - Åë½Å¼³Á¤ - STD2 Ãß°¡ + @ Ver 2.1.2 by CJY - 2021.02.15 - Ver 2.1.1 Modify diff --git a/ITC81DB_2/bin/Release/ITC81DB_2.exe b/ITC81DB_2/bin/Release/ITC81DB_2.exe index 6082ea6..064983f 100644 Binary files a/ITC81DB_2/bin/Release/ITC81DB_2.exe and b/ITC81DB_2/bin/Release/ITC81DB_2.exe differ diff --git a/ITC81DB_2/bin/Release/ITC81DB_2_ImageDll.dll b/ITC81DB_2/bin/Release/ITC81DB_2_ImageDll.dll index a081239..092c74a 100644 Binary files a/ITC81DB_2/bin/Release/ITC81DB_2_ImageDll.dll and b/ITC81DB_2/bin/Release/ITC81DB_2_ImageDll.dll differ diff --git a/ITC81DB_2/obj/Release/ITC81DB_2.exe b/ITC81DB_2/obj/Release/ITC81DB_2.exe index 6082ea6..064983f 100644 Binary files a/ITC81DB_2/obj/Release/ITC81DB_2.exe and b/ITC81DB_2/obj/Release/ITC81DB_2.exe differ diff --git a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll.csproj b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll.csproj index 5daaf78..7fbde9d 100644 --- a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll.csproj +++ b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll.csproj @@ -655,9 +655,6 @@ - - - @@ -955,9 +952,6 @@ - - - @@ -1048,6 +1042,12 @@ + + + + + + diff --git a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/Resources/engBackgroundSerial.png b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/Resources/engBackgroundSerial.png index 41a76b0..3378abe 100644 Binary files a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/Resources/engBackgroundSerial.png and b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/Resources/engBackgroundSerial.png differ diff --git a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/Resources/korBackgroundSerial.png b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/Resources/korBackgroundSerial.png index 5043bf0..f9daa84 100644 Binary files a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/Resources/korBackgroundSerial.png and b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/Resources/korBackgroundSerial.png differ diff --git a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/bin/Release/ITC81DB_2_ImageDll.dll b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/bin/Release/ITC81DB_2_ImageDll.dll index a081239..092c74a 100644 Binary files a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/bin/Release/ITC81DB_2_ImageDll.dll and b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/bin/Release/ITC81DB_2_ImageDll.dll differ diff --git a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/obj/Release/ITC81DB_2_ImageDll.dll b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/obj/Release/ITC81DB_2_ImageDll.dll index a081239..092c74a 100644 Binary files a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/obj/Release/ITC81DB_2_ImageDll.dll and b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/obj/Release/ITC81DB_2_ImageDll.dll differ diff --git a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/obj/Release/Refactor/ITC81DB_2_ImageDll.dll b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/obj/Release/Refactor/ITC81DB_2_ImageDll.dll index 043ed1f..021041f 100644 Binary files a/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/obj/Release/Refactor/ITC81DB_2_ImageDll.dll and b/ITC81DB_2_ImageDll/ITC81DB_2_ImageDll/obj/Release/Refactor/ITC81DB_2_ImageDll.dll differ