From 76b9f6402954934c2dde187df67644fa8e352c85 Mon Sep 17 00:00:00 2001 From: Milan Hanajik Date: Sat, 22 Aug 2015 20:37:43 +0200 Subject: [PATCH] Serious bugfixes - version 1.5.94 --- .../BenchControl/DB/SensusOracle/Database.cs | 237 +++++++++--------- .../DB/SensusOracle/DatabaseCfg.cs | 13 +- .../DB/SensusOracle/DatabaseCfgCtrl.cs | 22 +- .../SensusOracle/DatabaseCfgCtrl.designer.cs | 70 ++++-- .../iPerlCommunicationForm.cs | 32 +-- .../WaterMeters/iPerl/WaterMeter.cs | 34 ++- TestBenchFramework/Properties/AssemblyInfo.cs | 4 +- 7 files changed, 246 insertions(+), 166 deletions(-) diff --git a/TestBenchFramework/BenchControl/DB/SensusOracle/Database.cs b/TestBenchFramework/BenchControl/DB/SensusOracle/Database.cs index f80f7c8cf..1737b04d2 100644 --- a/TestBenchFramework/BenchControl/DB/SensusOracle/Database.cs +++ b/TestBenchFramework/BenchControl/DB/SensusOracle/Database.cs @@ -72,8 +72,19 @@ namespace TBF.BenchControl.DB.SensusOracle public void Initialize() { - string oradb = "Data Source=STARA_TEST.WORLD;User Id=deltachef;Password=deltachef;"; - conn = new OracleConnection(oradb); // C# + if (dbCfg.DBUsed == DBUsed.Test) + { + conn = new OracleConnection("Data Source=STARA_TEST.WORLD;User Id=deltachef;Password=deltachef;"); + } + else if (dbCfg.DBUsed == DBUsed.Production) + { + conn = new OracleConnection("Data Source=STARA01.WORLD;User Id=deltachef;Password=deltachef;"); + } + else if (dbCfg.DBUsed == DBUsed.Quality) + { + /// Temporarily use test database + conn = new OracleConnection("Data Source=STARA_TEST.WORLD;User Id=deltachef;Password=deltachef;"); + } /// /// Do something with the database to see if the connection works well @@ -320,125 +331,127 @@ namespace TBF.BenchControl.DB.SensusOracle int MAX_Pruefindex = 100 * dbCfg.TestBenchId + maxpruefindexLowPart + 1; + bool passed = true; int Sekundaere_Adr; int Hydr_Pruefung; - { - bool passed = true; - foreach (var r in results) - { - if (!r.DoNotEvaluate && !r.Meters[wmNr].Passed) passed = false; - } - if (!passed) + foreach (var r in results) + { + if (!r.DoNotEvaluate && !r.Meters[wmNr].Passed) passed = false; + } + + if (!passed) + { + /// Failed + Sekundaere_Adr = 0; + Hydr_Pruefung = 97; /// Hydr. tets failed, Pressure test passed + } + else + { + /// Passed + Sekundaere_Adr = 1; + if (maxpruefindexLowPart == 0) + Hydr_Pruefung = 96; + else + Hydr_Pruefung = 224; + } + + if (passed) + { + OracleParameter parm1 = new OracleParameter(); + parm1.OracleDbType = OracleDbType.Varchar2; + parm1.Value = "BBAATMXX"; + + OracleParameter parm2 = new OracleParameter(); + parm2.OracleDbType = OracleDbType.Varchar2; + parm2.Value = "IPBATMXX"; + + OracleParameter parm3 = new OracleParameter(); + parm3.OracleDbType = OracleDbType.Varchar2; + parm3.Value = pcbNr; + + OracleParameter parm4 = new OracleParameter(); + parm4.OracleDbType = OracleDbType.Int32; + parm4.Value = MAX_Pruefindex; + + OracleParameter parm5 = new OracleParameter(); + parm5.OracleDbType = OracleDbType.Int32; + parm5.Value = -1; + + OracleParameter parm6 = new OracleParameter(); + parm6.OracleDbType = OracleDbType.Int32; + parm6.Value = Sekundaere_Adr; + + OracleParameter parm7 = new OracleParameter(); + parm7.OracleDbType = OracleDbType.Int32; + parm7.Value = Hydr_Pruefung; + + OracleParameter parm8 = new OracleParameter(); + parm8.OracleDbType = OracleDbType.Int32; + parm8.Value = 6; + + OracleParameter parm9 = new OracleParameter(); + parm9.OracleDbType = OracleDbType.Int32; + parm9.Value = 4; /// = ANBID Stara Tura + + if (MAX_Pruefindex % 100 == 1) { - /// Failed - Sekundaere_Adr = 0; - Hydr_Pruefung = 97; /// Hydr. tets failed, Pressure test passed + OracleCommand cmd = new OracleCommand(); + cmd.Connection = conn; + cmd.CommandText = "INSERT INTO VT_ZAEHLER_PD(Auftragsnummer, VT_Identnummer, VT_Fernum, Max_Pruefindex, Zaehlernummer, Sekundaere_Adr, Hydr_Pruefung, ID_Benutzer, ANBID) VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9)"; + cmd.Parameters.Add(parm1); + cmd.Parameters.Add(parm2); + cmd.Parameters.Add(parm3); + cmd.Parameters.Add(parm4); + cmd.Parameters.Add(parm5); + cmd.Parameters.Add(parm6); + cmd.Parameters.Add(parm7); + cmd.Parameters.Add(parm8); + cmd.Parameters.Add(parm9); + int rowsUpdated = cmd.ExecuteNonQuery(); } else { - /// Passed - Sekundaere_Adr = 1; - if (maxpruefindexLowPart == 0) - Hydr_Pruefung = 96; - else - Hydr_Pruefung = 224; + //OracleCommand cmd = new OracleCommand(); + //cmd.Connection = conn; + //cmd.CommandText = "UPDATE VT_ZAEHLER_PD SET Auftragsnummer = :1, VT_Identnummer = :2, Max_Pruefindex = :4, Zaehlernummer = :5, Sekundaere_Adr= :6, Hydr_Pruefung= :7, ID_Benutzer= :8 WHERE VT_Fernum = :3 and ANBID = :9"; + //cmd.Parameters.Add(parm1); + //cmd.Parameters.Add(parm2); + //cmd.Parameters.Add(parm3); + //cmd.Parameters.Add(parm4); + //cmd.Parameters.Add(parm5); + //cmd.Parameters.Add(parm6); + //cmd.Parameters.Add(parm7); + //cmd.Parameters.Add(parm8); + //cmd.Parameters.Add(parm9); + //int rowsUpdated = cmd.ExecuteNonQuery(); + + OracleTransaction transaction = conn.BeginTransaction(); + try + { + OracleCommand cmd = new OracleCommand(); + cmd.Connection = conn; + cmd.CommandText = "UPDATE VT_ZAEHLER_PD SET Auftragsnummer = :1, VT_Identnummer = :2, Max_Pruefindex = :4, Zaehlernummer = :5, Sekundaere_Adr= :6, Hydr_Pruefung= :7, ID_Benutzer= :8 WHERE VT_Fernum = :3 and ANBID = :9"; + cmd.Parameters.Add(parm1); + cmd.Parameters.Add(parm2); + cmd.Parameters.Add(parm3); + cmd.Parameters.Add(parm4); + cmd.Parameters.Add(parm5); + cmd.Parameters.Add(parm6); + cmd.Parameters.Add(parm7); + cmd.Parameters.Add(parm8); + cmd.Parameters.Add(parm9); + + int rowsUpdated = cmd.ExecuteNonQuery(); + + transaction.Commit(); + } + catch + { + transaction.Rollback(); + } } } - - OracleParameter parm1 = new OracleParameter(); - parm1.OracleDbType = OracleDbType.Varchar2; - parm1.Value = "BBAATMXX"; - - OracleParameter parm2 = new OracleParameter(); - parm2.OracleDbType = OracleDbType.Varchar2; - parm2.Value = "IPBATMXX"; - - OracleParameter parm3 = new OracleParameter(); - parm3.OracleDbType = OracleDbType.Varchar2; - parm3.Value = pcbNr; - - OracleParameter parm4 = new OracleParameter(); - parm4.OracleDbType = OracleDbType.Int32; - parm4.Value = MAX_Pruefindex; - - OracleParameter parm5 = new OracleParameter(); - parm5.OracleDbType = OracleDbType.Int32; - parm5.Value = -1; - - OracleParameter parm6 = new OracleParameter(); - parm6.OracleDbType = OracleDbType.Int32; - parm6.Value = Sekundaere_Adr; - - OracleParameter parm7 = new OracleParameter(); - parm7.OracleDbType = OracleDbType.Int32; - parm7.Value = Hydr_Pruefung; - - OracleParameter parm8 = new OracleParameter(); - parm8.OracleDbType = OracleDbType.Int32; - parm8.Value = 6; - - OracleParameter parm9 = new OracleParameter(); - parm9.OracleDbType = OracleDbType.Int32; - parm9.Value = 4; /// = ANBID Stara Tura - - if (MAX_Pruefindex % 100 == 1) - { - OracleCommand cmd = new OracleCommand(); - cmd.Connection = conn; - cmd.CommandText = "INSERT INTO VT_ZAEHLER_PD(Auftragsnummer, VT_Identnummer, VT_Fernum, Max_Pruefindex, Zaehlernummer, Sekundaere_Adr, Hydr_Pruefung, ID_Benutzer, ANBID) VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9)"; - cmd.Parameters.Add(parm1); - cmd.Parameters.Add(parm2); - cmd.Parameters.Add(parm3); - cmd.Parameters.Add(parm4); - cmd.Parameters.Add(parm5); - cmd.Parameters.Add(parm6); - cmd.Parameters.Add(parm7); - cmd.Parameters.Add(parm8); - cmd.Parameters.Add(parm9); - int rowsUpdated = cmd.ExecuteNonQuery(); - } - else - { - //OracleCommand cmd = new OracleCommand(); - //cmd.Connection = conn; - //cmd.CommandText = "UPDATE VT_ZAEHLER_PD SET Auftragsnummer = :1, VT_Identnummer = :2, Max_Pruefindex = :4, Zaehlernummer = :5, Sekundaere_Adr= :6, Hydr_Pruefung= :7, ID_Benutzer= :8 WHERE VT_Fernum = :3 and ANBID = :9"; - //cmd.Parameters.Add(parm1); - //cmd.Parameters.Add(parm2); - //cmd.Parameters.Add(parm3); - //cmd.Parameters.Add(parm4); - //cmd.Parameters.Add(parm5); - //cmd.Parameters.Add(parm6); - //cmd.Parameters.Add(parm7); - //cmd.Parameters.Add(parm8); - //cmd.Parameters.Add(parm9); - //int rowsUpdated = cmd.ExecuteNonQuery(); - - OracleTransaction transaction = conn.BeginTransaction(); - try - { - OracleCommand cmd = new OracleCommand(); - cmd.Connection = conn; - cmd.CommandText = "UPDATE VT_ZAEHLER_PD SET Auftragsnummer = :1, VT_Identnummer = :2, Max_Pruefindex = :4, Zaehlernummer = :5, Sekundaere_Adr= :6, Hydr_Pruefung= :7, ID_Benutzer= :8 WHERE VT_Fernum = :3 and ANBID = :9"; - cmd.Parameters.Add(parm1); - cmd.Parameters.Add(parm2); - cmd.Parameters.Add(parm3); - cmd.Parameters.Add(parm4); - cmd.Parameters.Add(parm5); - cmd.Parameters.Add(parm6); - cmd.Parameters.Add(parm7); - cmd.Parameters.Add(parm8); - cmd.Parameters.Add(parm9); - - int rowsUpdated = cmd.ExecuteNonQuery(); - - transaction.Commit(); - } - catch - { - transaction.Rollback(); - } - } } diff --git a/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfg.cs b/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfg.cs index 5463fcf9a..597a87b3a 100644 --- a/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfg.cs +++ b/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfg.cs @@ -10,6 +10,14 @@ using TBF.BenchControl.Generic; namespace TBF.BenchControl.DB.SensusOracle { + public enum DBUsed + { + Production, + Test, + Quality, + Count + } + public enum Separator { None, @@ -27,6 +35,7 @@ namespace TBF.BenchControl.DB.SensusOracle public int TestBenchId; + public DBUsed DBUsed; public string DestinationPath; /// Directory path into which the results will be saved public bool YearFolders; public bool MonthFolders; @@ -41,6 +50,7 @@ namespace TBF.BenchControl.DB.SensusOracle Name = "Sensus-Oracle-DB"; ParentName = string.Empty; TestBenchId = 1; + DBUsed = DBUsed.Test; DestinationPath = Program.HomeDir + "Results\\"; YearFolders = true; MonthFolders = true; @@ -57,9 +67,10 @@ namespace TBF.BenchControl.DB.SensusOracle public string ToString(int i) { - return string.Format("Name={0}, BenchId={1}, Path={2}, Y={3}, M={4}, D={5}, Elim.Spaces={6}, Separator={7}", + return string.Format("Name={0}, BenchId={1}, DBUsed={2}, Path={3}, Y={4}, M={5}, D={6}, Elim.Spaces={7}, Separator={8}", Name, TestBenchId, + DBUsed, DestinationPath, YearFolders, MonthFolders, diff --git a/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfgCtrl.cs b/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfgCtrl.cs index c271af36c..eadeccfd6 100644 --- a/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfgCtrl.cs +++ b/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfgCtrl.cs @@ -33,6 +33,10 @@ namespace TBF.BenchControl.DB.SensusOracle private void WriterCfgCtrl_Load(object sender, EventArgs e) { + for (int i = 0; i < (int)DBUsed.Count; i++) + { + dbUsedComboBox.Items.Add(((DBUsed)i).ToString()); + } for (int i = 0; i < (int)Separator.Count; i++) { separatorComboBox.Items.Add(((Separator)i).ToString()); @@ -50,6 +54,7 @@ namespace TBF.BenchControl.DB.SensusOracle classNameLabel.Text = config.Factory.ClassName; nameTextBox.Text = config.Name; benchIdTextBox.Text = config.TestBenchId.ToString(); + dbUsedComboBox.Text = config.DBUsed.ToString(); destinationTextBox.Text = config.DestinationPath; yearFoldersCheckBox.Checked = config.YearFolders; monthFoldersCheckBox.Checked = config.MonthFolders; @@ -62,6 +67,7 @@ namespace TBF.BenchControl.DB.SensusOracle { nameTextBox.Enabled = true; benchIdTextBox.Enabled = true; + dbUsedComboBox.Enabled = true; destinationTextBox.Enabled = true; destinationButton.Enabled = true; yearFoldersCheckBox.Enabled = true; @@ -82,6 +88,12 @@ namespace TBF.BenchControl.DB.SensusOracle message += Environment.NewLine + "Invalid 'Test bench ID'"; } + if (!dbUsedComboBox.Items.Contains(dbUsedComboBox.Text)) + { + flags |= CfgUpdateFlags.Error; + message += Environment.NewLine + "Invalid 'Database used' item"; + } + if (!separatorComboBox.Items.Contains(separatorComboBox.Text)) { flags |= CfgUpdateFlags.Error; @@ -104,6 +116,11 @@ namespace TBF.BenchControl.DB.SensusOracle config.TestBenchId = benchId; } + for (int i = 0; i < (int)DBUsed.Count; i++) + { + if (((DBUsed)i).ToString().Equals(dbUsedComboBox.Text)) config.DBUsed = (DBUsed)i; + } + if (config.DestinationPath != destinationTextBox.Text) { config.DestinationPath = destinationTextBox.Text; @@ -129,10 +146,7 @@ namespace TBF.BenchControl.DB.SensusOracle for (int i = 0; i < (int)Separator.Count; i++) { - if (((Separator)i).ToString().Equals(separatorComboBox.Text)) - { - config.Separator = (Separator)i; - } + if (((Separator)i).ToString().Equals(separatorComboBox.Text)) config.Separator = (Separator)i; } if (eliminateSpacesCheckBox.Checked != config.EliminateSpaces) diff --git a/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfgCtrl.designer.cs b/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfgCtrl.designer.cs index 7cd20c86d..4cdfafc2e 100644 --- a/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfgCtrl.designer.cs +++ b/TestBenchFramework/BenchControl/DB/SensusOracle/DatabaseCfgCtrl.designer.cs @@ -46,12 +46,14 @@ namespace TBF.BenchControl.DB.SensusOracle this.separatorComboBox = new System.Windows.Forms.ComboBox(); this.benchIdTextBox = new System.Windows.Forms.TextBox(); this.benchIdLabel = new System.Windows.Forms.Label(); + this.dbUsedComboBox = new System.Windows.Forms.ComboBox(); + this.dbUsedLabel = new System.Windows.Forms.Label(); this.SuspendLayout(); // // nameTextBox // this.nameTextBox.Enabled = false; - this.nameTextBox.Location = new System.Drawing.Point(110, 36); + this.nameTextBox.Location = new System.Drawing.Point(110, 33); this.nameTextBox.Name = "nameTextBox"; this.nameTextBox.Size = new System.Drawing.Size(146, 20); this.nameTextBox.TabIndex = 2; @@ -59,7 +61,7 @@ namespace TBF.BenchControl.DB.SensusOracle // nameLabel // this.nameLabel.AutoSize = true; - this.nameLabel.Location = new System.Drawing.Point(19, 39); + this.nameLabel.Location = new System.Drawing.Point(19, 36); this.nameLabel.Name = "nameLabel"; this.nameLabel.Size = new System.Drawing.Size(35, 13); this.nameLabel.TabIndex = 1; @@ -68,7 +70,7 @@ namespace TBF.BenchControl.DB.SensusOracle // classNameLabel // this.classNameLabel.AutoSize = true; - this.classNameLabel.Location = new System.Drawing.Point(107, 12); + this.classNameLabel.Location = new System.Drawing.Point(107, 8); this.classNameLabel.Name = "classNameLabel"; this.classNameLabel.Size = new System.Drawing.Size(83, 13); this.classNameLabel.TabIndex = 0; @@ -77,38 +79,38 @@ namespace TBF.BenchControl.DB.SensusOracle // destinationTextBox // this.destinationTextBox.Enabled = false; - this.destinationTextBox.Location = new System.Drawing.Point(110, 92); + this.destinationTextBox.Location = new System.Drawing.Point(110, 131); this.destinationTextBox.Name = "destinationTextBox"; - this.destinationTextBox.Size = new System.Drawing.Size(146, 20); - this.destinationTextBox.TabIndex = 6; + this.destinationTextBox.Size = new System.Drawing.Size(145, 20); + this.destinationTextBox.TabIndex = 8; // // destinationLabel // this.destinationLabel.AutoSize = true; - this.destinationLabel.Location = new System.Drawing.Point(19, 95); + this.destinationLabel.Location = new System.Drawing.Point(19, 134); this.destinationLabel.Name = "destinationLabel"; this.destinationLabel.Size = new System.Drawing.Size(60, 13); - this.destinationLabel.TabIndex = 5; + this.destinationLabel.TabIndex = 7; this.destinationLabel.Text = "Destination"; // // dayFoldersCheckBox // this.dayFoldersCheckBox.AutoSize = true; this.dayFoldersCheckBox.Enabled = false; - this.dayFoldersCheckBox.Location = new System.Drawing.Point(111, 157); + this.dayFoldersCheckBox.Location = new System.Drawing.Point(207, 157); this.dayFoldersCheckBox.Name = "dayFoldersCheckBox"; this.dayFoldersCheckBox.Size = new System.Drawing.Size(79, 17); - this.dayFoldersCheckBox.TabIndex = 10; + this.dayFoldersCheckBox.TabIndex = 12; this.dayFoldersCheckBox.Text = "Day folders"; this.dayFoldersCheckBox.UseVisualStyleBackColor = true; // // destinationButton // this.destinationButton.Enabled = false; - this.destinationButton.Location = new System.Drawing.Point(261, 92); + this.destinationButton.Location = new System.Drawing.Point(261, 131); this.destinationButton.Name = "destinationButton"; this.destinationButton.Size = new System.Drawing.Size(30, 20); - this.destinationButton.TabIndex = 7; + this.destinationButton.TabIndex = 9; this.destinationButton.Text = "..."; this.destinationButton.UseVisualStyleBackColor = true; this.destinationButton.Click += new System.EventHandler(this.destinationButton_Click); @@ -117,10 +119,10 @@ namespace TBF.BenchControl.DB.SensusOracle // this.yearFoldersCheckBox.AutoSize = true; this.yearFoldersCheckBox.Enabled = false; - this.yearFoldersCheckBox.Location = new System.Drawing.Point(111, 119); + this.yearFoldersCheckBox.Location = new System.Drawing.Point(23, 157); this.yearFoldersCheckBox.Name = "yearFoldersCheckBox"; this.yearFoldersCheckBox.Size = new System.Drawing.Size(82, 17); - this.yearFoldersCheckBox.TabIndex = 8; + this.yearFoldersCheckBox.TabIndex = 10; this.yearFoldersCheckBox.Text = "Year folders"; this.yearFoldersCheckBox.UseVisualStyleBackColor = true; // @@ -128,10 +130,10 @@ namespace TBF.BenchControl.DB.SensusOracle // this.monthFoldersCheckBox.AutoSize = true; this.monthFoldersCheckBox.Enabled = false; - this.monthFoldersCheckBox.Location = new System.Drawing.Point(111, 138); + this.monthFoldersCheckBox.Location = new System.Drawing.Point(111, 157); this.monthFoldersCheckBox.Name = "monthFoldersCheckBox"; this.monthFoldersCheckBox.Size = new System.Drawing.Size(90, 17); - this.monthFoldersCheckBox.TabIndex = 9; + this.monthFoldersCheckBox.TabIndex = 11; this.monthFoldersCheckBox.Text = "Month folders"; this.monthFoldersCheckBox.UseVisualStyleBackColor = true; // @@ -142,32 +144,32 @@ namespace TBF.BenchControl.DB.SensusOracle this.eliminateSpacesCheckBox.Location = new System.Drawing.Point(111, 205); this.eliminateSpacesCheckBox.Name = "eliminateSpacesCheckBox"; this.eliminateSpacesCheckBox.Size = new System.Drawing.Size(165, 17); - this.eliminateSpacesCheckBox.TabIndex = 13; + this.eliminateSpacesCheckBox.TabIndex = 15; this.eliminateSpacesCheckBox.Text = "Eliminate spaces in each field"; this.eliminateSpacesCheckBox.UseVisualStyleBackColor = true; // // separatorLabel // this.separatorLabel.AutoSize = true; - this.separatorLabel.Location = new System.Drawing.Point(19, 181); + this.separatorLabel.Location = new System.Drawing.Point(19, 182); this.separatorLabel.Name = "separatorLabel"; this.separatorLabel.Size = new System.Drawing.Size(53, 13); - this.separatorLabel.TabIndex = 11; + this.separatorLabel.TabIndex = 13; this.separatorLabel.Text = "Separator"; // // separatorComboBox // this.separatorComboBox.Enabled = false; this.separatorComboBox.FormattingEnabled = true; - this.separatorComboBox.Location = new System.Drawing.Point(110, 178); + this.separatorComboBox.Location = new System.Drawing.Point(110, 179); this.separatorComboBox.Name = "separatorComboBox"; this.separatorComboBox.Size = new System.Drawing.Size(146, 21); - this.separatorComboBox.TabIndex = 12; + this.separatorComboBox.TabIndex = 14; // // benchIdTextBox // this.benchIdTextBox.Enabled = false; - this.benchIdTextBox.Location = new System.Drawing.Point(111, 64); + this.benchIdTextBox.Location = new System.Drawing.Point(110, 57); this.benchIdTextBox.Name = "benchIdTextBox"; this.benchIdTextBox.Size = new System.Drawing.Size(57, 20); this.benchIdTextBox.TabIndex = 4; @@ -175,16 +177,36 @@ namespace TBF.BenchControl.DB.SensusOracle // benchIdLabel // this.benchIdLabel.AutoSize = true; - this.benchIdLabel.Location = new System.Drawing.Point(19, 67); + this.benchIdLabel.Location = new System.Drawing.Point(19, 60); this.benchIdLabel.Name = "benchIdLabel"; this.benchIdLabel.Size = new System.Drawing.Size(76, 13); this.benchIdLabel.TabIndex = 3; this.benchIdLabel.Text = "Test Bench ID"; // + // dbUsedComboBox + // + this.dbUsedComboBox.Enabled = false; + this.dbUsedComboBox.FormattingEnabled = true; + this.dbUsedComboBox.Location = new System.Drawing.Point(110, 81); + this.dbUsedComboBox.Name = "dbUsedComboBox"; + this.dbUsedComboBox.Size = new System.Drawing.Size(145, 21); + this.dbUsedComboBox.TabIndex = 6; + // + // dbUsedLabel + // + this.dbUsedLabel.AutoSize = true; + this.dbUsedLabel.Location = new System.Drawing.Point(19, 84); + this.dbUsedLabel.Name = "dbUsedLabel"; + this.dbUsedLabel.Size = new System.Drawing.Size(79, 13); + this.dbUsedLabel.TabIndex = 5; + this.dbUsedLabel.Text = "Database used"; + // // DatabaseCfgCtrl // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.dbUsedComboBox); + this.Controls.Add(this.dbUsedLabel); this.Controls.Add(this.benchIdTextBox); this.Controls.Add(this.benchIdLabel); this.Controls.Add(this.separatorComboBox); @@ -223,5 +245,7 @@ namespace TBF.BenchControl.DB.SensusOracle private System.Windows.Forms.ComboBox separatorComboBox; private System.Windows.Forms.TextBox benchIdTextBox; private System.Windows.Forms.Label benchIdLabel; + private System.Windows.Forms.ComboBox dbUsedComboBox; + private System.Windows.Forms.Label dbUsedLabel; } } diff --git a/TestBenchFramework/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationForm.cs b/TestBenchFramework/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationForm.cs index 5049a5879..9d44105c5 100644 --- a/TestBenchFramework/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationForm.cs +++ b/TestBenchFramework/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationForm.cs @@ -76,10 +76,10 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication switch (boardNr) { default: - case 0: return openPort1(cfg.RfidPortNrBoard1); - case 1: return openPort2(cfg.RfidPortNrBoard2); - case 2: return openPort3(cfg.RfidPortNrBoard3); - case 3: return openPort4(cfg.RfidPortNrBoard4); + case 1: return openPort1(cfg.RfidPortNrBoard1); + case 2: return openPort2(cfg.RfidPortNrBoard2); + case 3: return openPort3(cfg.RfidPortNrBoard3); + case 4: return openPort4(cfg.RfidPortNrBoard4); } } @@ -94,10 +94,10 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication switch (boardNr) { default: - case 0: return closePort1(); - case 1: return closePort2(); - case 2: return closePort3(); - case 3: return closePort4(); + case 1: return closePort1(); + case 2: return closePort2(); + case 3: return closePort3(); + case 4: return closePort4(); } } @@ -115,10 +115,10 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication switch (boardNr) { default: - case 0: retv = readRequestPort1(messageID, offset, lenght, pBuf, timeout); break; - case 1: retv = readRequestPort2(messageID, offset, lenght, pBuf, timeout); break; - case 2: retv = readRequestPort3(messageID, offset, lenght, pBuf, timeout); break; - case 3: retv = readRequestPort4(messageID, offset, lenght, pBuf, timeout); break; + case 1: retv = readRequestPort1(messageID, offset, lenght, pBuf, timeout); break; + case 2: retv = readRequestPort2(messageID, offset, lenght, pBuf, timeout); break; + case 3: retv = readRequestPort3(messageID, offset, lenght, pBuf, timeout); break; + case 4: retv = readRequestPort4(messageID, offset, lenght, pBuf, timeout); break; } rfidDataLogger.InfoFormat("Group={0}, Board={1}, ReadRequestPort({2}, {3}, {4}, ...) returned {5} {6}", currentGroup, boardNr, messageID, offset, lenght, retv, (retv != 0) ? "!" : ""); @@ -142,10 +142,10 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication switch (boardNr) { default: - case 0: retv = writeRequestPort1(messageID, offset, lenght, pBuf, timeout); break; - case 1: retv = writeRequestPort2(messageID, offset, lenght, pBuf, timeout); break; - case 2: retv = writeRequestPort3(messageID, offset, lenght, pBuf, timeout); break; - case 3: retv = writeRequestPort4(messageID, offset, lenght, pBuf, timeout); break; + case 1: retv = writeRequestPort1(messageID, offset, lenght, pBuf, timeout); break; + case 2: retv = writeRequestPort2(messageID, offset, lenght, pBuf, timeout); break; + case 3: retv = writeRequestPort3(messageID, offset, lenght, pBuf, timeout); break; + case 4: retv = writeRequestPort4(messageID, offset, lenght, pBuf, timeout); break; } if (lenght == 1) diff --git a/TestBenchFramework/BenchControl/WaterMeters/iPerl/WaterMeter.cs b/TestBenchFramework/BenchControl/WaterMeters/iPerl/WaterMeter.cs index 0e5548cc8..9cb128492 100644 --- a/TestBenchFramework/BenchControl/WaterMeters/iPerl/WaterMeter.cs +++ b/TestBenchFramework/BenchControl/WaterMeters/iPerl/WaterMeter.cs @@ -160,9 +160,13 @@ namespace TBF.BenchControl.WaterMeters.iPerl public double VolumeLtrEnd; /// Test end volume for metrology public double VolumeLtrRef; /// Reference volume or metrology double volumeLtrEnd1; /// auxiliary buffer1 to keep the end volume before test stops - double volumeLtrEnd2; /// auxiliary buffer2 to keep the end volume before test stops + double volumeLtrEnd2; /// auxiliary buffer2 to keep the end volume before test stops + double volumeLtrEnd3; /// auxiliary buffer3 to keep the end volume before test stops + double volumeLtrEnd4; /// auxiliary buffer4 to keep the end volume before test stops + double volumeLtrEnd5; /// auxiliary buffer5 to keep the end volume before test stops + double volumeLtrEnd6; /// auxiliary buffer6 to keep the end volume before test stops - /// + /// /// Timestamp from the opto telegram /// bool lastTimestampValid; @@ -174,6 +178,10 @@ namespace TBF.BenchControl.WaterMeters.iPerl public double TimestampSecEnd; double timestampSecEnd1; double timestampSecEnd2; + double timestampSecEnd3; + double timestampSecEnd4; + double timestampSecEnd5; + double timestampSecEnd6; private Boxes.IntBox pulses; private Boxes.IntBox refPulses; @@ -366,7 +374,7 @@ namespace TBF.BenchControl.WaterMeters.iPerl { sampleNr++; ReadPulses(); - if (sampleNr == 3) + if (sampleNr == 4) { /// Take the test start sample VolumeLtrStart = volumeLtr; @@ -374,13 +382,23 @@ namespace TBF.BenchControl.WaterMeters.iPerl } /// Shift data in pipelines - VolumeLtrEnd = volumeLtrEnd2; - volumeLtrEnd2 = volumeLtrEnd1; + VolumeLtrEnd = volumeLtrEnd3; + + //volumeLtrEnd6 = volumeLtrEnd5; + //volumeLtrEnd5 = volumeLtrEnd4; + //volumeLtrEnd4 = volumeLtrEnd3; + volumeLtrEnd3 = volumeLtrEnd2; + volumeLtrEnd2 = volumeLtrEnd1; volumeLtrEnd1 = volumeLtr; - TimestampSecEnd = timestampSecEnd2; - timestampSecEnd2 = timestampSecEnd1; - timestampSecEnd1 = timestampSec; + TimestampSecEnd = timestampSecEnd3; + + //timestampSecEnd6 = timestampSecEnd5; + //timestampSecEnd5 = timestampSecEnd4; + //timestampSecEnd4 = timestampSecEnd3; + timestampSecEnd3 = timestampSecEnd2; + timestampSecEnd2 = timestampSecEnd1; + timestampSecEnd1 = timestampSec; return Event.ReadRegisterDone; } diff --git a/TestBenchFramework/Properties/AssemblyInfo.cs b/TestBenchFramework/Properties/AssemblyInfo.cs index 7277708fc..5be2aea0b 100644 --- a/TestBenchFramework/Properties/AssemblyInfo.cs +++ b/TestBenchFramework/Properties/AssemblyInfo.cs @@ -29,5 +29,5 @@ using System.Runtime.InteropServices; // Build Number // Revision // -[assembly: AssemblyVersion("1.5.93.1")] -[assembly: AssemblyFileVersion("1.5.93.1")] +[assembly: AssemblyVersion("1.5.94.1")] +[assembly: AssemblyFileVersion("1.5.94.1")]