From dc31e833ee6ca5f5f53db7f1440f1f10519b44e1 Mon Sep 17 00:00:00 2001 From: Milan Hanajik Date: Fri, 31 Jan 2020 15:45:30 +0100 Subject: [PATCH] BatchResults.WaterMeters eliminated, Batch.WaterMeters are used instead ... many changes --- Results/BatchResults.cs | 162 ++++++++---------- Results/Entities/WaterMeter.cs | 2 +- Results/Forms/BatchResultsDlg.cs | 26 +-- .../DataEntry/Combined/EntryForm.cs | 19 +- .../DataEntry/Fewa/EntryFormNoStartEnd.cs | 23 +-- .../HeatMeters12/CycleBeginningForm.cs | 20 +-- .../DataEntry/HeatMeters12/EntryForm.cs | 31 ++-- .../HeatMeters6/CycleBeginningForm.cs | 20 +-- .../DataEntry/HeatMeters6/EntryForm.cs | 29 ++-- .../DataEntry/Munich/CycleEndForm.cs | 24 +-- .../DataEntry/Munich/EntryForm.cs | 10 +- .../DataEntry/Munich3/CycleEndForm.cs | 24 +-- .../DataEntry/Munich3/EntryForm.cs | 12 +- .../DataEntry/Single/EntryFormNoStartEnd.cs | 23 +-- .../Standard12/CycleBeginningForm.cs | 20 +-- .../Standard12/EntryFormNoStartEnd.cs | 21 ++- .../Standard24/EntryFormNoStartEnd.cs | 23 +-- .../Standard48/EntryFormNoStartEnd.cs | 21 ++- .../Standard6/EntryFormNoStartEnd.cs | 31 ++-- .../StandardCamera/CycleEndFormMunich.cs | 24 +-- .../DataEntry/StandardCamera/EntryForm.cs | 23 +-- TBF/BenchControl/DataEntry/iPerl/EntryForm.cs | 19 +- TBF/BenchControl/Elde/ControlComSim.cs | 4 +- .../GenericDevices/IStartInfoReader.cs | 4 +- .../Output/DB/ProductionTracing/Tracing.cs | 10 +- .../Output/DB/SensusOracle/Database.cs | 6 +- .../KPackE/DataEntryForRadio/EntryForm.cs | 21 ++- .../DataEntryForRadio/TestStartEndForm.cs | 10 +- TBF/BenchControl/Sequences/MainSeq.cs | 35 +++- TBF/BenchControl/Sequences/SequenceBase.cs | 27 +-- .../TestMethods/Adjustment/AdjustmentSeq.cs | 6 +- .../CombinedWithDetectionSeq.cs | 17 +- .../DiverterTest/DiverterTestSeq.cs | 13 +- .../TestMethods/Endurance/EnduranceSeq.cs | 6 +- .../TestMethods/FixedStart/FixedStartSeq.cs | 13 +- .../FixedStartAdvancedSeq.cs | 13 +- .../FixedStartDeferredEvalSeq.cs | 21 ++- .../FixedStartMassCollDeferredEvalSeq.cs | 21 ++- .../FixedStartMassCollectionSeq.cs | 13 +- .../FixedStartTankCollectionSeq.cs | 13 +- .../TestMethods/FlyingStart/FlyingStartSeq.cs | 13 +- .../FlyingStartFirstRepetWithMassCollSeq.cs | 13 +- .../FlyingStartMassCollComparativeSeq.cs | 13 +- .../FlyingStartMassCollProlongedSeq.cs | 13 +- .../FlyingStartMassCollectionSeq.cs | 13 +- .../FlyingStartTankCollectionSeq.cs | 13 +- .../TestMethods/ManualEntry/ManualEntrySeq.cs | 15 +- .../TestMethods/PulsesTest/PulsesTestSeq.cs | 6 +- .../PulsesTestManual/PulsesTestManualSeq.cs | 6 +- .../SensitivityTest/SensitivityTestSeq.cs | 19 +- .../iPerlCommunicationForm.cs | 2 +- .../iPerlCommunicationSeq.cs | 2 +- TBF/UI/Process/ProcessTabPageCtrl24.cs | 8 +- TBF/UI/Process/ProcessTabPageCtrl48.cs | 8 +- TBF/UI/Process/ProcessTabPageCtrl6.cs | 8 +- TBF/UI/Process/ProcessTabPageExCtrl.cs | 16 +- TBF/UI/ResultsMI/PreviousResultsDlg.cs | 2 +- TBF/UI/ResultsMI/ResultsTabPageCtrl.cs | 34 ++-- 58 files changed, 574 insertions(+), 490 deletions(-) diff --git a/Results/BatchResults.cs b/Results/BatchResults.cs index 4e16dc68b..89a30ef7a 100644 --- a/Results/BatchResults.cs +++ b/Results/BatchResults.cs @@ -18,7 +18,6 @@ namespace Results public Batch Batch; public int WMPositionsCount; - public WaterMeter[] WaterMeters; /// Array length is WMPositionsCount [XmlIgnore] @@ -91,18 +90,24 @@ namespace Results /// Add watermeter to an array, array index is WM position. /// AddWaterMetersToBatch() has to be used before saving results. /// - d.WaterMeters = new WaterMeter[d.WMPositionsCount]; - for (int i = 0; i < d.WMPositionsCount; i++) + for (int wmPos0 = 0; wmPos0 < d.WMPositionsCount; wmPos0++) { - if (waterMeterDatas[i] == null) continue; - WaterMeterData wmd = WaterMeterData.UpdateList(d.WaterMeterDataList, waterMeterDatas[i]); - d.WaterMeters[i] = new WaterMeter() - { - Batch = d.Batch, - WaterMeterData = wmd, - WMPosition = i + 1, - YearOfProduction = year, - }; + if (waterMeterDatas[wmPos0] == null) + { + d.Batch.WaterMeters.Add(new WaterMeter() { Batch = d.Batch, + WaterMeterData = null, + WMPosition = wmPos0 + 1, + YearOfProduction = year, + Disabled = true, }); + } + else + { + WaterMeterData wmd = WaterMeterData.UpdateList(d.WaterMeterDataList, waterMeterDatas[wmPos0]); + d.Batch.WaterMeters.Add(new WaterMeter() { Batch = d.Batch, + WaterMeterData = wmd, + WMPosition = wmPos0 + 1, + YearOfProduction = year, }); + } } @@ -120,32 +125,31 @@ namespace Results for (int i = 0; i < d.WMPositionsCount; i++) { - if (d.WaterMeters[i] == null) continue; - - if (!t.IsPartCompatible(waterMeterParts[i])) continue; - - /// - /// Create empty watermeter test results and add them to the list and to dictionaries - /// - IList wmtrs = d.WaterMeters[i].MeterTestRslts; - if (d.Batch.Compound) - { - /// Compound water meter - wmtrs.Add(new MeterTestRslt(d.WaterMeters[i], tr, Config.Entities.CompoundMeterId.CompoundMain)); - wmtrs.Add(new MeterTestRslt(d.WaterMeters[i], tr, Config.Entities.CompoundMeterId.CompoundAux)); - wmtrs.Add(new MeterTestRslt(d.WaterMeters[i], tr, Config.Entities.CompoundMeterId.Compound)); - } - else if (d.Batch.HeatMeter) - { - /// Heat meter - wmtrs.Add(new MeterTestRslt(d.WaterMeters[i], tr, Config.Entities.CompoundMeterId.HeatMeterVolume)); - wmtrs.Add(new MeterTestRslt(d.WaterMeters[i], tr, Config.Entities.CompoundMeterId.HeatMeterEnergy)); - } - else - { - /// Water meter - wmtrs.Add(new MeterTestRslt(d.WaterMeters[i], tr, Config.Entities.CompoundMeterId.Single)); - } + if (!d.Batch.WaterMeters[i].Disabled && t.IsPartCompatible(waterMeterParts[i])) + { + /// + /// Create empty watermeter test results and add them to the list and to dictionaries + /// + IList wmtrs = d.Batch.WaterMeters[i].MeterTestRslts; + if (d.Batch.Compound) + { + /// Compound water meter + wmtrs.Add(new MeterTestRslt(d.Batch.WaterMeters[i], tr, Config.Entities.CompoundMeterId.CompoundMain)); + wmtrs.Add(new MeterTestRslt(d.Batch.WaterMeters[i], tr, Config.Entities.CompoundMeterId.CompoundAux)); + wmtrs.Add(new MeterTestRslt(d.Batch.WaterMeters[i], tr, Config.Entities.CompoundMeterId.Compound)); + } + else if (d.Batch.HeatMeter) + { + /// Heat meter + wmtrs.Add(new MeterTestRslt(d.Batch.WaterMeters[i], tr, Config.Entities.CompoundMeterId.HeatMeterVolume)); + wmtrs.Add(new MeterTestRslt(d.Batch.WaterMeters[i], tr, Config.Entities.CompoundMeterId.HeatMeterEnergy)); + } + else + { + /// Water meter + wmtrs.Add(new MeterTestRslt(d.Batch.WaterMeters[i], tr, Config.Entities.CompoundMeterId.Single)); + } + } } } } @@ -163,11 +167,17 @@ namespace Results BatchResults batchResults = new BatchResults(wmPosMax); batchResults.Batch = batch; - batchResults.WaterMeters = new WaterMeter[wmPosMax]; - for (int i = 0; i < batch.WaterMeters.Count; i++) + /// Insert missing disabled water meters + for (int wmNr0 = 0; wmNr0 < wmPosMax; wmNr0++) { - WaterMeter wm = batch.WaterMeters[i]; - batchResults.WaterMeters[wm.WMPosition - 1] = wm; + if (batch.WaterMeters[wmNr0].WMPosition > wmNr0 + 1) + { + batch.WaterMeters.Insert(wmNr0, new WaterMeter() { Batch = batch, + WaterMeterData = null, + WMPosition = wmNr0 + 1, + YearOfProduction = 0, + Disabled = true, }); + } } return batchResults; @@ -178,11 +188,11 @@ namespace Results return Batch.GetTestRslt(name, part); } - public MeterTestRslt GetMeterTestRslt(string name, int wmnr0, Config.Entities.CompoundMeterId meterId) + public MeterTestRslt GetMeterTestRslt(string name, int wmNr0, Config.Entities.CompoundMeterId meterId) { - if (WaterMeters[wmnr0] != null) + if (Batch.WaterMeters != null && Batch.WaterMeters.Count > wmNr0 && !Batch.WaterMeters[wmNr0].Disabled) { - return WaterMeters[wmnr0].GetMeterTestRslt(name, meterId); + return Batch.WaterMeters[wmNr0].GetMeterTestRslt(name, meterId); } return null; } @@ -194,11 +204,11 @@ namespace Results /// true = all tests done public bool AllTestsDone() { - for (int i = 0; i < WMPositionsCount; i++) + for (int wmNr0 = 0; wmNr0 < WMPositionsCount; wmNr0++) { - if ((WaterMeters[i] != null) && !WaterMeters[i].Disabled) + if (Batch.WaterMeters != null && Batch.WaterMeters.Count > wmNr0 && !Batch.WaterMeters[wmNr0].Disabled) { - foreach (var mtr in WaterMeters[i].MeterTestRslts) + foreach (var mtr in Batch.WaterMeters[wmNr0].MeterTestRslts) { if (!mtr.TestDone) return false; } @@ -208,44 +218,15 @@ namespace Results } - /// - /// Adds non-null water meters from an array to a Batch water meters list. - /// This method should be used when results are prepared and - /// all disabled water meters are deleted. - /// - public void AddWaterMetersToBatch() - { - for (int i = 0; i < WMPositionsCount; i++) - { - if (WaterMeters[i] != null) - { - WaterMeters[i].Passed = WaterMeters[i].PassedFromTests(); - if (!WaterMeters[i].Disabled) - { - Batch.WaterMeters.Add(WaterMeters[i]); - } - } - } - } - - /// /// Save public fields of this class to the XML file. /// public void Save(string fileName) { - try + using (BinaryWriter writer = new BinaryWriter(File.OpenWrite(fileName))) { - /// Write settings to an unencrypted file - using (BinaryWriter writer = new BinaryWriter(File.OpenWrite(fileName))) - { - WriteBinary(writer); - log.Warn("LocalSettings succesfully saved"); - } - } - catch (Exception e) - { - log.ErrorFormat("Failed to save to '{0}': {1}", fileName, e.Message); + WriteBinary(writer); + log.Warn("LocalSettings succesfully saved"); } } @@ -253,14 +234,17 @@ namespace Results { Batch.WriteBinary(writer); writer.Write(WMPositionsCount); - writer.Write((WaterMeters != null) ? WaterMeters.Length : (int)0); - if (WaterMeters != null) + } + + public static BatchResults Load(string fileName) + { + BatchResults br = new BatchResults(); + using (BinaryReader reader = new BinaryReader(File.OpenRead(fileName))) { - for (int i = 0; i < WaterMeters.Length; i++) - { - WaterMeters[i].WriteBinary(writer); - } + br.ReadBinary(reader); + log.Warn("LocalSettings succesfully saved"); } + return br; } public virtual void ReadBinary(BinaryReader reader) @@ -269,12 +253,6 @@ namespace Results Batch.ReadBinary(reader); WMPositionsCount = reader.ReadInt32(); int waterMetersLength = reader.ReadInt32(); - WaterMeters = new WaterMeter[waterMetersLength]; - for (int i = 0; i < waterMetersLength; i++) - { - WaterMeters[i] = new WaterMeter(); - WaterMeters[i].ReadBinary(reader); - } } } } diff --git a/Results/Entities/WaterMeter.cs b/Results/Entities/WaterMeter.cs index 6a6f68035..72ff84dee 100644 --- a/Results/Entities/WaterMeter.cs +++ b/Results/Entities/WaterMeter.cs @@ -46,7 +46,7 @@ namespace Results.Entities public virtual string SerialNrAux { get; set; } /// S/N of the aux. meter of a compound meter _or_ a complete assigned S/N of an iPerl water meter public virtual string PurchaseOrder { get; set; } public virtual int YearOfProduction { get; set; } - public virtual int WMPosition { get; set; } + public virtual int WMPosition { get; set; } /// 1-based water meter position public virtual string EndState { get; set; } /// End state (of the main water meter) public virtual string EndStateAux { get; set; } /// End state of the auxiliary water meter public virtual double QRise { get; set; } /// [m3/h] detected Q_rise of a composed meter or 'sensitivity' of a single meter diff --git a/Results/Forms/BatchResultsDlg.cs b/Results/Forms/BatchResultsDlg.cs index 4593e3367..4213f1740 100644 --- a/Results/Forms/BatchResultsDlg.cs +++ b/Results/Forms/BatchResultsDlg.cs @@ -78,11 +78,11 @@ namespace Results.Forms /// void OnDoubleClick(object sender, Results.Forms.WaterMeterEventArgs args) { - if (Results.WaterMeters != null && args.WMPosition > 0) + if (args.WMPosition > 0) { - foreach (var wm in Results.WaterMeters) + foreach (var wm in Results.Batch.WaterMeters) { - if ((wm != null) && (wm.WMPosition == args.WMPosition)) + if (!wm.Disabled && (wm.WMPosition == args.WMPosition)) { ShowMoreWMResults(wm); return; @@ -124,9 +124,9 @@ namespace Results.Forms /// Determine water meter positions count /// int displayedControlsCount = 0; - for (int i = 0; i < results.WaterMeters.Length; i++) + for (int i = 0; i < results.Batch.WaterMeters.Count; i++) { - if (((results.WaterMeters[i] != null) && !results.WaterMeters[i].Disabled) || ShowDisabledPositions) + if ((!results.Batch.WaterMeters[i].Disabled) || ShowDisabledPositions) { displayedControlsCount++; } @@ -165,9 +165,9 @@ namespace Results.Forms wmRsltsCtrl = new IOneWMResultsCtrl[displayedControlsCount]; int ix = 0; firstEnabledControl = null; - for (int i = 0; i < results.WaterMeters.Length; i++) + for (int i = 0; i < results.Batch.WaterMeters.Count; i++) { - if (((results.WaterMeters[i] != null) && !results.WaterMeters[i].Disabled) || ShowDisabledPositions) + if (!results.Batch.WaterMeters[i].Disabled || ShowDisabledPositions) { /// Create one water meter position / control wmRsltsCtrl[ix] = (TestsArrangement == TestsArrangement.Rows) @@ -176,9 +176,9 @@ namespace Results.Forms wmRsltsCtrl[ix].Width = oneWidth; wmRsltsCtrl[ix].Height = oneHeight; - if ((results.WaterMeters[i] != null) && !results.WaterMeters[i].Disabled) + if (!results.Batch.WaterMeters[i].Disabled) { - if ((firstEnabledControl == null) && (results.WaterMeters[i] != null) && !results.WaterMeters[i].Disabled) + if ((firstEnabledControl == null) && !results.Batch.WaterMeters[i].Disabled) { firstEnabledControl = wmRsltsCtrl[ix]; } @@ -211,14 +211,14 @@ namespace Results.Forms void UpdateResults(Results.BatchResults results) { - if ((results != null) && (results.WaterMeters != null)) + if (results != null && results.Batch != null && results.Batch.WaterMeters != null) { int ctrlIx = 0; - for (int i = 0; i < results.WaterMeters.Length; i++) + for (int wmNr0 = 0; wmNr0 < results.Batch.WaterMeters.Count; wmNr0++) { - if (((results.WaterMeters[i] != null) && !results.WaterMeters[i].Disabled) || ShowDisabledPositions) + if (!results.Batch.WaterMeters[wmNr0].Disabled || ShowDisabledPositions) { - if (ctrlIx < wmRsltsCtrl.Length) wmRsltsCtrl[ctrlIx++].Update(results.WaterMeters[i]); + if (ctrlIx < wmRsltsCtrl.Length) wmRsltsCtrl[ctrlIx++].Update(results.Batch.WaterMeters[wmNr0]); } } } diff --git a/TBF/BenchControl/DataEntry/Combined/EntryForm.cs b/TBF/BenchControl/DataEntry/Combined/EntryForm.cs index 5a398ea93..735c6d01b 100644 --- a/TBF/BenchControl/DataEntry/Combined/EntryForm.cs +++ b/TBF/BenchControl/DataEntry/Combined/EntryForm.cs @@ -49,7 +49,7 @@ namespace TBF.BenchControl.DataEntry.Combined bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -87,7 +87,7 @@ namespace TBF.BenchControl.DataEntry.Combined { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -96,7 +96,7 @@ namespace TBF.BenchControl.DataEntry.Combined { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -198,7 +198,7 @@ namespace TBF.BenchControl.DataEntry.Combined { purchaseOrder = dlg.PurchaseOrder; - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -276,11 +276,14 @@ namespace TBF.BenchControl.DataEntry.Combined /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - foreach (var wm in batchResults.WaterMeters) - { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) + { + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } } } diff --git a/TBF/BenchControl/DataEntry/Fewa/EntryFormNoStartEnd.cs b/TBF/BenchControl/DataEntry/Fewa/EntryFormNoStartEnd.cs index 91701c713..20450a882 100644 --- a/TBF/BenchControl/DataEntry/Fewa/EntryFormNoStartEnd.cs +++ b/TBF/BenchControl/DataEntry/Fewa/EntryFormNoStartEnd.cs @@ -49,7 +49,7 @@ namespace TBF.BenchControl.DataEntry.Fewa bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -87,7 +87,7 @@ namespace TBF.BenchControl.DataEntry.Fewa { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -96,7 +96,7 @@ namespace TBF.BenchControl.DataEntry.Fewa { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -197,7 +197,7 @@ namespace TBF.BenchControl.DataEntry.Fewa { purchaseOrder = dlg.PurchaseOrder; - for (int i = 0; i < Math.Min(dlg.WMsCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WMsCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -211,7 +211,7 @@ namespace TBF.BenchControl.DataEntry.Fewa else if (entryFormCfg.ShowCycleEndForm && currentOp == CurrentOp.ShowFormAtCycleEnd) { CycleEndForm dlg = (modelessDlg as CycleEndForm); - int count = waterMeters.Length; + int count = waterMeters.Count; if ((dlg != null) && (count > dlg.WMsCount)) count = dlg.WMsCount; for (int i = 0; i < count; i++) @@ -278,13 +278,16 @@ namespace TBF.BenchControl.DataEntry.Fewa /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - foreach (var wm in batchResults.WaterMeters) - { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) + { + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } - } + } } } } diff --git a/TBF/BenchControl/DataEntry/HeatMeters12/CycleBeginningForm.cs b/TBF/BenchControl/DataEntry/HeatMeters12/CycleBeginningForm.cs index c87e8d3fb..5d6ef0b48 100644 --- a/TBF/BenchControl/DataEntry/HeatMeters12/CycleBeginningForm.cs +++ b/TBF/BenchControl/DataEntry/HeatMeters12/CycleBeginningForm.cs @@ -15,7 +15,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 { private static readonly ILog log = LogManager.GetLogger(typeof(CycleBeginningForm)); - readonly Results.Entities.WaterMeter[] WaterMeters; + readonly IList waterMeters; /// Number of water meters public readonly int WaterMetersCount; @@ -77,11 +77,11 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 /// Constructor /// /// Number of text boxes for serial numbers - public CycleBeginningForm(Results.Entities.WaterMeter[] waterMeters, bool atTheEnd, bool sensusExtensions) + public CycleBeginningForm(IList waterMeters, bool atTheEnd, bool sensusExtensions) : this() { - this.WaterMeters = waterMeters; - this.WaterMetersCount = waterMeters.Length; + this.waterMeters = waterMeters; + this.WaterMetersCount = waterMeters.Count; this.AtTheEnd = atTheEnd; this.SensusExtensions = sensusExtensions; SNText = new string[WaterMetersCount]; @@ -89,7 +89,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 ShuffleTextBoxes(Config.Data.WMsCount, Config.Data.LineSize); - foreach (var wm in WaterMeters) if (wm != null) wm.Passed = wm.PassedFromTests(); + foreach (var wm in waterMeters) if (wm != null) wm.Passed = wm.PassedFromTests(); Height = 147 + WaterMetersCount * 45; /// Adjust the window size @@ -216,8 +216,8 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 for (int i = 0; i < WaterMetersCount; i++) { - Results.Entities.WaterMeter wm = WaterMeters[i]; - if (wm == null) + Results.Entities.WaterMeter wm = waterMeters[i]; + if (wm == null && !wm.Disabled) { checkBoxes[i].Checked = true; } @@ -272,9 +272,9 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 for (int i = 0; i < WaterMetersCount; i++) { - Results.Entities.WaterMeter wm = WaterMeters[i]; + Results.Entities.WaterMeter wm = waterMeters[i]; { - if (wm != null) + if (wm != null && !wm.Disabled) { bool pressureTestPassed = false; foreach (var mtr in wm.MeterTestRslts) @@ -501,7 +501,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 for (int i = 0; i < textBoxesCount; i++) { - if (!AtTheEnd || WaterMeters[i].Passed) + if (!AtTheEnd || waterMeters[i].Passed) { if (!snFound) { diff --git a/TBF/BenchControl/DataEntry/HeatMeters12/EntryForm.cs b/TBF/BenchControl/DataEntry/HeatMeters12/EntryForm.cs index 3f9ea8ec7..ed0e4f291 100644 --- a/TBF/BenchControl/DataEntry/HeatMeters12/EntryForm.cs +++ b/TBF/BenchControl/DataEntry/HeatMeters12/EntryForm.cs @@ -64,7 +64,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -105,7 +105,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -114,7 +114,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -168,19 +168,19 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 /// void OpenEndDlg(EntryForm myRef) { - myRef.modelessDlg = new CycleEndForm(myRef.waterMeters.Length); + myRef.modelessDlg = new CycleEndForm(myRef.waterMeters.Count); modelessDlg.Show(); } /// void OpenTestStartStatesDlg(EntryForm myRef) { - myRef.modelessDlg = new TestStartEndForm(entryFormCfg, myRef.waterMeters.Length, myRef.regReaders, myRef.disabled); + myRef.modelessDlg = new TestStartEndForm(entryFormCfg, myRef.waterMeters.Count, myRef.regReaders, myRef.disabled); modelessDlg.Show(); } /// void OpenTestEndStatesDlg(EntryForm myRef) { - myRef.modelessDlg = new TestStartEndForm(entryFormCfg, myRef.waterMeters.Length, myRef.regReaders, wmStartStateStr, energyStartStateStr, + myRef.modelessDlg = new TestStartEndForm(entryFormCfg, myRef.waterMeters.Count, myRef.regReaders, wmStartStateStr, energyStartStateStr, disabled, refVolume, errLimLo, errLimHi, refEnergy, energyErrLimLo, energyErrLimHi); modelessDlg.Show(); } @@ -235,7 +235,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 { purchaseOrder = dlg.PurchaseOrder; - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -248,7 +248,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 else if (entryFormCfg.ShowCycleEndForm && currentOp == CurrentOp.ShowFormAtCycleEnd) { CycleEndForm dlg = (modelessDlg as CycleEndForm); - int count = Math.Min(waterMeters.Length, Config.Data.HeatMetersCount); + int count = Math.Min(waterMeters.Count, Config.Data.HeatMetersCount); if ((dlg != null) && (count > dlg.WaterMetersCount)) count = dlg.WaterMetersCount; for (int i = 0; i < count; i++) @@ -266,7 +266,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 TestStartEndForm dlg = (modelessDlg as TestStartEndForm); if (dlg != null) { - for (int i = 0; i < Math.Min(waterMeters.Length, Config.Data.HeatMetersCount); i++) + for (int i = 0; i < Math.Min(waterMeters.Count, Config.Data.HeatMetersCount); i++) { wmStartState[i] = dlg.WMStartState[i]; wmStartStateStr[i] = dlg.WMStartStateStr[i]; @@ -281,7 +281,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 TestStartEndForm dlg = (modelessDlg as TestStartEndForm); if (dlg != null) { - for (int i = 0; i < Math.Min(waterMeters.Length, Config.Data.HeatMetersCount); i++) + for (int i = 0; i < Math.Min(waterMeters.Count, Config.Data.HeatMetersCount); i++) { wmEndState[i] = dlg.WMEndState[i]; energyEndState[i] = dlg.EnergyEndState[i]; @@ -312,11 +312,14 @@ namespace TBF.BenchControl.DataEntry.HeatMeters12 /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - foreach (var wm in batchResults.WaterMeters) - { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) + { + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } } } diff --git a/TBF/BenchControl/DataEntry/HeatMeters6/CycleBeginningForm.cs b/TBF/BenchControl/DataEntry/HeatMeters6/CycleBeginningForm.cs index e23326036..cac3366a3 100644 --- a/TBF/BenchControl/DataEntry/HeatMeters6/CycleBeginningForm.cs +++ b/TBF/BenchControl/DataEntry/HeatMeters6/CycleBeginningForm.cs @@ -15,7 +15,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 { private static readonly ILog log = LogManager.GetLogger(typeof(CycleBeginningForm)); - readonly Results.Entities.WaterMeter[] WaterMeters; + readonly IList waterMeters; /// Number of water meters public readonly int WaterMetersCount; @@ -70,11 +70,11 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 /// Constructor /// /// Number of text boxes for serial numbers - public CycleBeginningForm(Results.Entities.WaterMeter[] waterMeters, bool atTheEnd, bool sensusExtensions) + public CycleBeginningForm(IList waterMeters, bool atTheEnd, bool sensusExtensions) : this() { - this.WaterMeters = waterMeters; - this.WaterMetersCount = waterMeters.Length; + this.waterMeters = waterMeters; + this.WaterMetersCount = waterMeters.Count; this.AtTheEnd = atTheEnd; this.SensusExtensions = sensusExtensions; SNText = new string[WaterMetersCount]; @@ -82,7 +82,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 ShuffleTextBoxes(Config.Data.WMsCount, Config.Data.LineSize); - foreach (var wm in WaterMeters) if (wm != null) wm.Passed = wm.PassedFromTests(); + foreach (var wm in waterMeters) if (wm != null) wm.Passed = wm.PassedFromTests(); Height = 147 + WaterMetersCount * 45; /// Adjust the window size @@ -209,8 +209,8 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 for (int i = 0; i < WaterMetersCount; i++) { - Results.Entities.WaterMeter wm = WaterMeters[i]; - if (wm == null) + Results.Entities.WaterMeter wm = waterMeters[i]; + if (wm == null && !wm.Disabled) { checkBoxes[i].Checked = true; } @@ -265,9 +265,9 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 for (int i = 0; i < WaterMetersCount; i++) { - Results.Entities.WaterMeter wm = WaterMeters[i]; + Results.Entities.WaterMeter wm = waterMeters[i]; { - if (wm != null) + if (wm != null && !wm.Disabled) { bool pressureTestPassed = false; foreach (var mtr in wm.MeterTestRslts) @@ -434,7 +434,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 for (int i = 0; i < textBoxesCount; i++) { - if (!AtTheEnd || WaterMeters[i].Passed) + if (!AtTheEnd || waterMeters[i].Passed) { if (!snFound) { diff --git a/TBF/BenchControl/DataEntry/HeatMeters6/EntryForm.cs b/TBF/BenchControl/DataEntry/HeatMeters6/EntryForm.cs index d66960e99..44470ea0e 100644 --- a/TBF/BenchControl/DataEntry/HeatMeters6/EntryForm.cs +++ b/TBF/BenchControl/DataEntry/HeatMeters6/EntryForm.cs @@ -64,7 +64,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -105,7 +105,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -114,7 +114,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -168,19 +168,19 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 /// void OpenEndDlg(EntryForm myRef) { - myRef.modelessDlg = new CycleEndForm(myRef.waterMeters.Length); + myRef.modelessDlg = new CycleEndForm(myRef.waterMeters.Count); modelessDlg.Show(); } /// void OpenTestStartStatesDlg(EntryForm myRef) { - myRef.modelessDlg = new TestStartEndForm(entryFormCfg, myRef.waterMeters.Length, myRef.regReaders, disabled); + myRef.modelessDlg = new TestStartEndForm(entryFormCfg, myRef.waterMeters.Count, myRef.regReaders, disabled); modelessDlg.Show(); } /// void OpenTestEndStatesDlg(EntryForm myRef) { - myRef.modelessDlg = new TestStartEndForm(entryFormCfg, myRef.waterMeters.Length, myRef.regReaders, wmStartStateStr, energyStartStateStr, + myRef.modelessDlg = new TestStartEndForm(entryFormCfg, myRef.waterMeters.Count, myRef.regReaders, wmStartStateStr, energyStartStateStr, disabled, refVolume, errLimLo, errLimHi, refEnergy, energyErrLimLo, energyErrLimHi); modelessDlg.Show(); } @@ -235,7 +235,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 { purchaseOrder = dlg.PurchaseOrder; - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -248,7 +248,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 else if (entryFormCfg.ShowCycleEndForm && currentOp == CurrentOp.ShowFormAtCycleEnd) { CycleEndForm dlg = (modelessDlg as CycleEndForm); - int count = Math.Min(waterMeters.Length, Config.Data.HeatMetersCount); + int count = Math.Min(waterMeters.Count, Config.Data.HeatMetersCount); if ((dlg != null) && (count > dlg.WaterMetersCount)) count = dlg.WaterMetersCount; for (int i = 0; i < count; i++) @@ -266,7 +266,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 TestStartEndForm dlg = (modelessDlg as TestStartEndForm); if (dlg != null) { - for (int i = 0; i < Math.Min(waterMeters.Length, Config.Data.HeatMetersCount); i++) + for (int i = 0; i < Math.Min(waterMeters.Count, Config.Data.HeatMetersCount); i++) { wmStartState[i] = dlg.WMStartState[i]; wmStartStateStr[i] = dlg.WMStartStateStr[i]; @@ -281,7 +281,7 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 TestStartEndForm dlg = (modelessDlg as TestStartEndForm); if (dlg != null) { - for (int i = 0; i < Math.Min(waterMeters.Length, Config.Data.HeatMetersCount); i++) + for (int i = 0; i < Math.Min(waterMeters.Count, Config.Data.HeatMetersCount); i++) { wmEndState[i] = dlg.WMEndState[i]; energyEndState[i] = dlg.EnergyEndState[i]; @@ -312,11 +312,14 @@ namespace TBF.BenchControl.DataEntry.HeatMeters6 /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - foreach (var wm in batchResults.WaterMeters) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } } } diff --git a/TBF/BenchControl/DataEntry/Munich/CycleEndForm.cs b/TBF/BenchControl/DataEntry/Munich/CycleEndForm.cs index 4c1f2779a..63c5f7e06 100644 --- a/TBF/BenchControl/DataEntry/Munich/CycleEndForm.cs +++ b/TBF/BenchControl/DataEntry/Munich/CycleEndForm.cs @@ -83,19 +83,19 @@ namespace TBF.BenchControl.DataEntry.Munich radioButton3.Text = ProtocolName3; radioButton4.Text = ProtocolName4; - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 1) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 1 && !Sequences.ProcessData.BatchRslts.Batch.WaterMeters[0].Disabled) { - qRise1TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.WaterMeters[0].QRise, 3); - qFall1TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.WaterMeters[0].QFall, 3); - YearOfProduction[0] = Sequences.ProcessData.BatchRslts.WaterMeters[0].YearOfProduction; + qRise1TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.Batch.WaterMeters[0].QRise, 3); + qFall1TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.Batch.WaterMeters[0].QFall, 3); + YearOfProduction[0] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[0].YearOfProduction; yearOfProduction1TextBox.Text = YearOfProduction[0].ToString(); } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 2) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 2 && !Sequences.ProcessData.BatchRslts.Batch.WaterMeters[1].Disabled) { - qRise2TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.WaterMeters[1].QRise, 3); - qFall2TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.WaterMeters[1].QFall, 3); - YearOfProduction[1] = Sequences.ProcessData.BatchRslts.WaterMeters[1].YearOfProduction; + qRise2TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.Batch.WaterMeters[1].QRise, 3); + qFall2TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.Batch.WaterMeters[1].QFall, 3); + YearOfProduction[1] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[1].YearOfProduction; yearOfProduction2TextBox.Text = YearOfProduction[1].ToString(); } else @@ -104,11 +104,11 @@ namespace TBF.BenchControl.DataEntry.Munich Height = 305; } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 3) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 3 && !Sequences.ProcessData.BatchRslts.Batch.WaterMeters[2].Disabled) { - qRise3TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.WaterMeters[2].QRise, 3); - qFall3TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.WaterMeters[2].QFall, 3); - YearOfProduction[2] = Sequences.ProcessData.BatchRslts.WaterMeters[2].YearOfProduction; + qRise3TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.Batch.WaterMeters[2].QRise, 3); + qFall3TextBox.Text = Utils.DoubleToStr(Sequences.ProcessData.BatchRslts.Batch.WaterMeters[2].QFall, 3); + YearOfProduction[2] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[2].YearOfProduction; yearOfProduction3TextBox.Text = YearOfProduction[2].ToString(); } else diff --git a/TBF/BenchControl/DataEntry/Munich/EntryForm.cs b/TBF/BenchControl/DataEntry/Munich/EntryForm.cs index 5e7fe874d..59c5c42f2 100644 --- a/TBF/BenchControl/DataEntry/Munich/EntryForm.cs +++ b/TBF/BenchControl/DataEntry/Munich/EntryForm.cs @@ -43,9 +43,9 @@ namespace TBF.BenchControl.DataEntry.Munich System.Windows.Forms.Form modelessDlg; public bool Completed { get { return (modelessDlg is IHasCompleted) ? (modelessDlg as IHasCompleted).Completed : true; } } - bool resultSaved; /// Set in Run() when results are saved + bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] wMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList wMeters; /// Reference to ...ProcessData.BatchRslts.Batch.WaterMeters[] public enum CurrentOp { @@ -78,7 +78,7 @@ namespace TBF.BenchControl.DataEntry.Munich { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.wMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.wMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -87,7 +87,7 @@ namespace TBF.BenchControl.DataEntry.Munich { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.wMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.wMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -142,7 +142,7 @@ namespace TBF.BenchControl.DataEntry.Munich if (!resultSaved) /// This is to save the result only once { - int count = Math.Min(3, Math.Min(wMeters.Length, Config.Data.CompoundWMsCount)); + int count = Math.Min(3, Math.Min(wMeters.Count, Config.Data.CompoundWMsCount)); if (modelessDlg is CycleBeginningForm) { if (count >= 1 && wMeters[0] != null) wMeters[0].SerialNr = (modelessDlg as CycleBeginningForm).MainSNText[0]; diff --git a/TBF/BenchControl/DataEntry/Munich3/CycleEndForm.cs b/TBF/BenchControl/DataEntry/Munich3/CycleEndForm.cs index ed6220ae4..038a0f003 100644 --- a/TBF/BenchControl/DataEntry/Munich3/CycleEndForm.cs +++ b/TBF/BenchControl/DataEntry/Munich3/CycleEndForm.cs @@ -68,34 +68,34 @@ namespace TBF.BenchControl.DataEntry.Munich3 if (WaterMetersCount < 5) groupBox5.Visible = false; if (WaterMetersCount < 6) groupBox6.Visible = false; - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 1) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 1) { - YearOfProduction[0] = Sequences.ProcessData.BatchRslts.WaterMeters[0].YearOfProduction; + YearOfProduction[0] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[0].YearOfProduction; yearOfProduction1TextBox.Text = YearOfProduction[0].ToString(); } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 2) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 2) { - YearOfProduction[1] = Sequences.ProcessData.BatchRslts.WaterMeters[1].YearOfProduction; + YearOfProduction[1] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[1].YearOfProduction; yearOfProduction2TextBox.Text = YearOfProduction[1].ToString(); } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 3) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 3) { - YearOfProduction[2] = Sequences.ProcessData.BatchRslts.WaterMeters[2].YearOfProduction; + YearOfProduction[2] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[2].YearOfProduction; yearOfProduction3TextBox.Text = YearOfProduction[2].ToString(); } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 4) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 4) { - YearOfProduction[3] = Sequences.ProcessData.BatchRslts.WaterMeters[3].YearOfProduction; + YearOfProduction[3] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[3].YearOfProduction; yearOfProduction4TextBox.Text = YearOfProduction[3].ToString(); } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 5) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 5) { - YearOfProduction[4] = Sequences.ProcessData.BatchRslts.WaterMeters[4].YearOfProduction; + YearOfProduction[4] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[4].YearOfProduction; yearOfProduction5TextBox.Text = YearOfProduction[4].ToString(); } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 6) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 6) { - YearOfProduction[5] = Sequences.ProcessData.BatchRslts.WaterMeters[5].YearOfProduction; + YearOfProduction[5] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[5].YearOfProduction; yearOfProduction6TextBox.Text = YearOfProduction[5].ToString(); } diff --git a/TBF/BenchControl/DataEntry/Munich3/EntryForm.cs b/TBF/BenchControl/DataEntry/Munich3/EntryForm.cs index 815582927..757708c85 100644 --- a/TBF/BenchControl/DataEntry/Munich3/EntryForm.cs +++ b/TBF/BenchControl/DataEntry/Munich3/EntryForm.cs @@ -52,7 +52,7 @@ namespace TBF.BenchControl.DataEntry.Munich3 bool resultSaved; - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -91,7 +91,7 @@ namespace TBF.BenchControl.DataEntry.Munich3 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -100,7 +100,7 @@ namespace TBF.BenchControl.DataEntry.Munich3 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -146,7 +146,7 @@ namespace TBF.BenchControl.DataEntry.Munich3 /// void OpenTestStartStatesDlg(EntryForm myRef) { - myRef.modelessDlg = new TestStartEndForm(myRef.waterMeters.Length, myRef.regReaders, disabled); + myRef.modelessDlg = new TestStartEndForm(myRef.waterMeters.Count, myRef.regReaders, disabled); modelessDlg.Show(); } /// @@ -192,7 +192,7 @@ namespace TBF.BenchControl.DataEntry.Munich3 { CycleBeginningForm dlg = (modelessDlg as CycleBeginningForm); - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -207,7 +207,7 @@ namespace TBF.BenchControl.DataEntry.Munich3 Sequences.ProcessData.BatchRslts.Batch.ProtocolTitle = dlg.ProtocolTitle; - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { diff --git a/TBF/BenchControl/DataEntry/Single/EntryFormNoStartEnd.cs b/TBF/BenchControl/DataEntry/Single/EntryFormNoStartEnd.cs index 31ae4449d..421fa2337 100644 --- a/TBF/BenchControl/DataEntry/Single/EntryFormNoStartEnd.cs +++ b/TBF/BenchControl/DataEntry/Single/EntryFormNoStartEnd.cs @@ -49,7 +49,7 @@ namespace TBF.BenchControl.DataEntry.Single bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -87,7 +87,7 @@ namespace TBF.BenchControl.DataEntry.Single { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -96,7 +96,7 @@ namespace TBF.BenchControl.DataEntry.Single { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -197,7 +197,7 @@ namespace TBF.BenchControl.DataEntry.Single { purchaseOrder = dlg.PurchaseOrder; - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -210,7 +210,7 @@ namespace TBF.BenchControl.DataEntry.Single else if (entryFormCfg.ShowCycleEndForm && currentOp == CurrentOp.ShowFormAtCycleEnd) { CycleEndForm dlg = (modelessDlg as CycleEndForm); - int count = waterMeters.Length; + int count = waterMeters.Count; if ((dlg != null) && (count > dlg.WaterMetersCount)) count = dlg.WaterMetersCount; for (int i = 0; i < count; i++) @@ -277,13 +277,16 @@ namespace TBF.BenchControl.DataEntry.Single /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - foreach (var wm in batchResults.WaterMeters) - { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) + { + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } - } + } } } } diff --git a/TBF/BenchControl/DataEntry/Standard12/CycleBeginningForm.cs b/TBF/BenchControl/DataEntry/Standard12/CycleBeginningForm.cs index 33dbe04fc..aaf0b97b3 100644 --- a/TBF/BenchControl/DataEntry/Standard12/CycleBeginningForm.cs +++ b/TBF/BenchControl/DataEntry/Standard12/CycleBeginningForm.cs @@ -15,7 +15,7 @@ namespace TBF.BenchControl.DataEntry.Standard12 { private static readonly ILog log = LogManager.GetLogger(typeof(CycleBeginningForm)); - readonly Results.Entities.WaterMeter[] WaterMeters; + readonly IList waterMeters; /// Number of water meters public readonly int WaterMetersCount; @@ -78,11 +78,11 @@ namespace TBF.BenchControl.DataEntry.Standard12 /// Constructor /// /// Number of text boxes for serial numbers - public CycleBeginningForm(Results.Entities.WaterMeter[] waterMeters, bool atTheEnd, bool sensusExtensions, bool plusKeyIsOK) + public CycleBeginningForm(IList waterMeters, bool atTheEnd, bool sensusExtensions, bool plusKeyIsOK) : this() { - this.WaterMeters = waterMeters; - this.WaterMetersCount = waterMeters.Length; + this.waterMeters = waterMeters; + this.WaterMetersCount = waterMeters.Count; this.AtTheEnd = atTheEnd; this.SensusExtensions = sensusExtensions; this.PlusKeyIsOK = plusKeyIsOK; @@ -91,7 +91,7 @@ namespace TBF.BenchControl.DataEntry.Standard12 ShuffleTextBoxes(Config.Data.WMsCount, Config.Data.LineSize); - foreach (var wm in WaterMeters) if (wm != null) wm.Passed = wm.PassedFromTests(); + foreach (var wm in waterMeters) if (wm != null) wm.Passed = wm.PassedFromTests(); Height = 147 + WaterMetersCount * 45; /// Adjust the window size @@ -218,8 +218,8 @@ namespace TBF.BenchControl.DataEntry.Standard12 for (int i = 0; i < WaterMetersCount; i++) { - Results.Entities.WaterMeter wm = WaterMeters[i]; - if (wm == null) + Results.Entities.WaterMeter wm = waterMeters[i]; + if (wm == null && !wm.Disabled) { checkBoxes[i].Checked = true; } @@ -274,9 +274,9 @@ namespace TBF.BenchControl.DataEntry.Standard12 for (int i = 0; i < WaterMetersCount; i++) { - Results.Entities.WaterMeter wm = WaterMeters[i]; + Results.Entities.WaterMeter wm = waterMeters[i]; { - if (wm != null) + if (wm != null && !wm.Disabled) { bool pressureTestPassed = false; foreach (var mtr in wm.MeterTestRslts) @@ -503,7 +503,7 @@ namespace TBF.BenchControl.DataEntry.Standard12 for (int i = 0; i < textBoxesCount; i++) { - if (!AtTheEnd || WaterMeters[i].Passed) + if (!AtTheEnd || waterMeters[i].Passed) { if (!snFound) { diff --git a/TBF/BenchControl/DataEntry/Standard12/EntryFormNoStartEnd.cs b/TBF/BenchControl/DataEntry/Standard12/EntryFormNoStartEnd.cs index e2cb9d0e9..58370ac12 100644 --- a/TBF/BenchControl/DataEntry/Standard12/EntryFormNoStartEnd.cs +++ b/TBF/BenchControl/DataEntry/Standard12/EntryFormNoStartEnd.cs @@ -49,7 +49,7 @@ namespace TBF.BenchControl.DataEntry.Standard12 bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -87,7 +87,7 @@ namespace TBF.BenchControl.DataEntry.Standard12 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -96,7 +96,7 @@ namespace TBF.BenchControl.DataEntry.Standard12 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -197,7 +197,7 @@ namespace TBF.BenchControl.DataEntry.Standard12 { purchaseOrder = dlg.PurchaseOrder; - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -210,7 +210,7 @@ namespace TBF.BenchControl.DataEntry.Standard12 else if (entryFormCfg.ShowCycleEndForm && currentOp == CurrentOp.ShowFormAtCycleEnd) { CycleEndForm dlg = (modelessDlg as CycleEndForm); - int count = waterMeters.Length; + int count = waterMeters.Count; if ((dlg != null) && (count > dlg.WaterMetersCount)) count = dlg.WaterMetersCount; for (int i = 0; i < count; i++) @@ -277,11 +277,14 @@ namespace TBF.BenchControl.DataEntry.Standard12 /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - foreach (var wm in batchResults.WaterMeters) - { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) + { + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } } } diff --git a/TBF/BenchControl/DataEntry/Standard24/EntryFormNoStartEnd.cs b/TBF/BenchControl/DataEntry/Standard24/EntryFormNoStartEnd.cs index efe2eb992..68775bda6 100644 --- a/TBF/BenchControl/DataEntry/Standard24/EntryFormNoStartEnd.cs +++ b/TBF/BenchControl/DataEntry/Standard24/EntryFormNoStartEnd.cs @@ -49,7 +49,7 @@ namespace TBF.BenchControl.DataEntry.Standard24 bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -87,7 +87,7 @@ namespace TBF.BenchControl.DataEntry.Standard24 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -96,7 +96,7 @@ namespace TBF.BenchControl.DataEntry.Standard24 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -197,7 +197,7 @@ namespace TBF.BenchControl.DataEntry.Standard24 { purchaseOrder = dlg.PurchaseOrder; - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -210,7 +210,7 @@ namespace TBF.BenchControl.DataEntry.Standard24 else if (entryFormCfg.ShowCycleEndForm && currentOp == CurrentOp.ShowFormAtCycleEnd) { CycleEndForm dlg = (modelessDlg as CycleEndForm); - int count = waterMeters.Length; + int count = waterMeters.Count; if ((dlg != null) && (count > dlg.WaterMetersCount)) count = dlg.WaterMetersCount; for (int i = 0; i < count; i++) @@ -277,13 +277,16 @@ namespace TBF.BenchControl.DataEntry.Standard24 /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - foreach (var wm in batchResults.WaterMeters) - { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) + { + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } - } + } } } } diff --git a/TBF/BenchControl/DataEntry/Standard48/EntryFormNoStartEnd.cs b/TBF/BenchControl/DataEntry/Standard48/EntryFormNoStartEnd.cs index d5452c24a..301a20ef4 100644 --- a/TBF/BenchControl/DataEntry/Standard48/EntryFormNoStartEnd.cs +++ b/TBF/BenchControl/DataEntry/Standard48/EntryFormNoStartEnd.cs @@ -49,7 +49,7 @@ namespace TBF.BenchControl.DataEntry.Standard48 bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -87,7 +87,7 @@ namespace TBF.BenchControl.DataEntry.Standard48 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -96,7 +96,7 @@ namespace TBF.BenchControl.DataEntry.Standard48 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -197,7 +197,7 @@ namespace TBF.BenchControl.DataEntry.Standard48 { purchaseOrder = dlg.PurchaseOrder; - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -210,7 +210,7 @@ namespace TBF.BenchControl.DataEntry.Standard48 else if (entryFormCfg.ShowCycleEndForm && currentOp == CurrentOp.ShowFormAtCycleEnd) { CycleEndForm dlg = (modelessDlg as CycleEndForm); - int count = waterMeters.Length; + int count = waterMeters.Count; if ((dlg != null) && (count > dlg.WaterMetersCount)) count = dlg.WaterMetersCount; for (int i = 0; i < count; i++) @@ -277,11 +277,14 @@ namespace TBF.BenchControl.DataEntry.Standard48 /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - foreach (var wm in batchResults.WaterMeters) - { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) + { + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } } } diff --git a/TBF/BenchControl/DataEntry/Standard6/EntryFormNoStartEnd.cs b/TBF/BenchControl/DataEntry/Standard6/EntryFormNoStartEnd.cs index d765d3d4c..e938c26e1 100644 --- a/TBF/BenchControl/DataEntry/Standard6/EntryFormNoStartEnd.cs +++ b/TBF/BenchControl/DataEntry/Standard6/EntryFormNoStartEnd.cs @@ -48,7 +48,7 @@ namespace TBF.BenchControl.DataEntry.Standard6 bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -86,7 +86,7 @@ namespace TBF.BenchControl.DataEntry.Standard6 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -95,7 +95,7 @@ namespace TBF.BenchControl.DataEntry.Standard6 { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -124,25 +124,25 @@ namespace TBF.BenchControl.DataEntry.Standard6 /// void OpenBeginningDlg(EntryFormNoStartEnd myRef) { - myRef.modelessDlg = new CycleBeginningForm(myRef.waterMeters.Length, (myRef.entryFormCfg.RemarkEnabled && !myRef.entryFormCfg.ShowCycleEndForm)); + myRef.modelessDlg = new CycleBeginningForm(myRef.waterMeters.Count, (myRef.entryFormCfg.RemarkEnabled && !myRef.entryFormCfg.ShowCycleEndForm)); modelessDlg.Show(); } /// void OpenEndDlg(EntryFormNoStartEnd myRef) { - myRef.modelessDlg = new CycleEndForm(myRef.waterMeters.Length, myRef.entryFormCfg.RemarkEnabled); + myRef.modelessDlg = new CycleEndForm(myRef.waterMeters.Count, myRef.entryFormCfg.RemarkEnabled); modelessDlg.Show(); } /// void OpenTestStartStatesDlg(EntryFormNoStartEnd myRef) { - myRef.modelessDlg = new TestStartEndForm(myRef.waterMeters.Length, myRef.regReaders, myRef.disabled); + myRef.modelessDlg = new TestStartEndForm(myRef.waterMeters.Count, myRef.regReaders, myRef.disabled); modelessDlg.Show(); } /// void OpenTestEndStatesDlg(EntryFormNoStartEnd myRef) { - myRef.modelessDlg = new TestStartEndForm(myRef.waterMeters.Length, myRef.regReaders, wmStartStateStr, disabled, refVolume, errLimLo, errLimHi); + myRef.modelessDlg = new TestStartEndForm(myRef.waterMeters.Count, myRef.regReaders, wmStartStateStr, disabled, refVolume, errLimLo, errLimHi); modelessDlg.Show(); } @@ -196,7 +196,7 @@ namespace TBF.BenchControl.DataEntry.Standard6 { purchaseOrder = dlg.PurchaseOrder; - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -213,7 +213,7 @@ namespace TBF.BenchControl.DataEntry.Standard6 else if (entryFormCfg.ShowCycleEndForm && currentOp == CurrentOp.ShowFormAtCycleEnd) { CycleEndForm dlg = (modelessDlg as CycleEndForm); - int count = waterMeters.Length; + int count = waterMeters.Count; if ((dlg != null) && (count > dlg.WaterMetersCount)) count = dlg.WaterMetersCount; for (int i = 0; i < count; i++) @@ -283,16 +283,19 @@ namespace TBF.BenchControl.DataEntry.Standard6 /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - if (batchRemark != null) + if (batchResults.Batch != null && batchRemark != null) { batchResults.Batch.Remark = batchRemark; } - foreach (var wm in batchResults.WaterMeters) - { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) + { + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } } } diff --git a/TBF/BenchControl/DataEntry/StandardCamera/CycleEndFormMunich.cs b/TBF/BenchControl/DataEntry/StandardCamera/CycleEndFormMunich.cs index dc651e598..91ee425f4 100644 --- a/TBF/BenchControl/DataEntry/StandardCamera/CycleEndFormMunich.cs +++ b/TBF/BenchControl/DataEntry/StandardCamera/CycleEndFormMunich.cs @@ -68,34 +68,34 @@ namespace TBF.BenchControl.DataEntry.StandardCamera if (WaterMetersCount < 5) groupBox5.Visible = false; if (WaterMetersCount < 6) groupBox6.Visible = false; - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 1) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 1) { - YearOfProduction[0] = Sequences.ProcessData.BatchRslts.WaterMeters[0].YearOfProduction; + YearOfProduction[0] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[0].YearOfProduction; yearOfProduction1TextBox.Text = YearOfProduction[0].ToString(); } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 2) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 2) { - YearOfProduction[1] = Sequences.ProcessData.BatchRslts.WaterMeters[1].YearOfProduction; + YearOfProduction[1] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[1].YearOfProduction; yearOfProduction2TextBox.Text = YearOfProduction[1].ToString(); } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 3) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 3) { - YearOfProduction[2] = Sequences.ProcessData.BatchRslts.WaterMeters[2].YearOfProduction; + YearOfProduction[2] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[2].YearOfProduction; yearOfProduction3TextBox.Text = YearOfProduction[2].ToString(); } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 4) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 4) { - YearOfProduction[3] = Sequences.ProcessData.BatchRslts.WaterMeters[3].YearOfProduction; + YearOfProduction[3] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[3].YearOfProduction; yearOfProduction4TextBox.Text = YearOfProduction[3].ToString(); } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 5) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 5) { - YearOfProduction[4] = Sequences.ProcessData.BatchRslts.WaterMeters[4].YearOfProduction; + YearOfProduction[4] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[4].YearOfProduction; yearOfProduction5TextBox.Text = YearOfProduction[4].ToString(); } - if (Sequences.ProcessData.BatchRslts.WaterMeters.Length >= 6) + if (Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= 6) { - YearOfProduction[5] = Sequences.ProcessData.BatchRslts.WaterMeters[5].YearOfProduction; + YearOfProduction[5] = Sequences.ProcessData.BatchRslts.Batch.WaterMeters[5].YearOfProduction; yearOfProduction6TextBox.Text = YearOfProduction[5].ToString(); } diff --git a/TBF/BenchControl/DataEntry/StandardCamera/EntryForm.cs b/TBF/BenchControl/DataEntry/StandardCamera/EntryForm.cs index da54d89a4..db922a328 100644 --- a/TBF/BenchControl/DataEntry/StandardCamera/EntryForm.cs +++ b/TBF/BenchControl/DataEntry/StandardCamera/EntryForm.cs @@ -98,7 +98,7 @@ namespace TBF.BenchControl.DataEntry.StandardCamera bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -137,7 +137,7 @@ namespace TBF.BenchControl.DataEntry.StandardCamera { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -146,7 +146,7 @@ namespace TBF.BenchControl.DataEntry.StandardCamera { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -290,7 +290,7 @@ namespace TBF.BenchControl.DataEntry.StandardCamera purchaseOrder = dlg.PurchaseOrder; } - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -305,7 +305,7 @@ namespace TBF.BenchControl.DataEntry.StandardCamera if (modelessDlg is CycleEndForm) { CycleEndForm dlg = (modelessDlg as CycleEndForm); - int count = waterMeters.Length; + int count = waterMeters.Count; if ((dlg != null) && (count > dlg.WaterMetersCount)) count = dlg.WaterMetersCount; for (int i = 0; i < count; i++) @@ -323,7 +323,7 @@ namespace TBF.BenchControl.DataEntry.StandardCamera Sequences.ProcessData.BatchRslts.Batch.ProtocolTitle = dlg.ProtocolTitle; - for (int i = 0; i < Math.Min(waterMeters.Length, dlg.WaterMetersCount); i++) + for (int i = 0; i < Math.Min(waterMeters.Count, dlg.WaterMetersCount); i++) { if (waterMeters[i] != null) { @@ -396,11 +396,14 @@ namespace TBF.BenchControl.DataEntry.StandardCamera /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - foreach (var wm in batchResults.WaterMeters) - { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) + { + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } } } diff --git a/TBF/BenchControl/DataEntry/iPerl/EntryForm.cs b/TBF/BenchControl/DataEntry/iPerl/EntryForm.cs index 3ba10531c..6a8deabb9 100644 --- a/TBF/BenchControl/DataEntry/iPerl/EntryForm.cs +++ b/TBF/BenchControl/DataEntry/iPerl/EntryForm.cs @@ -49,7 +49,7 @@ namespace TBF.BenchControl.DataEntry.iPerl bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -87,7 +87,7 @@ namespace TBF.BenchControl.DataEntry.iPerl { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -96,7 +96,7 @@ namespace TBF.BenchControl.DataEntry.iPerl { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleEnd; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -137,7 +137,7 @@ namespace TBF.BenchControl.DataEntry.iPerl /// void OpenTestStartStatesDlg(EntryForm myRef) { - myRef.modelessDlg = new TestStartEndForm(myRef.waterMeters.Length, myRef.regReaders, disabled); + myRef.modelessDlg = new TestStartEndForm(myRef.waterMeters.Count, myRef.regReaders, disabled); modelessDlg.Show(); } /// @@ -194,7 +194,7 @@ namespace TBF.BenchControl.DataEntry.iPerl else if (entryFormCfg.ShowCycleEndForm && currentOp == CurrentOp.ShowFormAtCycleEnd) { CycleEndForm dlg = (modelessDlg as CycleEndForm); - int count = waterMeters.Length; + int count = waterMeters.Count; if ((dlg != null) && (count > dlg.WaterMetersCount)) count = dlg.WaterMetersCount; for (int i = 0; i < count; i++) @@ -256,11 +256,14 @@ namespace TBF.BenchControl.DataEntry.iPerl /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - foreach (var wm in batchResults.WaterMeters) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if (!wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } } } diff --git a/TBF/BenchControl/Elde/ControlComSim.cs b/TBF/BenchControl/Elde/ControlComSim.cs index faa54b993..fe6d26903 100644 --- a/TBF/BenchControl/Elde/ControlComSim.cs +++ b/TBF/BenchControl/Elde/ControlComSim.cs @@ -338,8 +338,8 @@ namespace TBF.BenchControl.Elde { float wmPulsesPerLiter = 0; if ((BenchControl.Sequences.ProcessData.RegisterReaders[i - 1] != null) && - (BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters.Length >= i) && - (BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters[i - 1] != null)) + (BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count >= i) && + (BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters[i - 1] != null)) { wmPulsesPerLiter = (float)BenchControl.Sequences.ProcessData.RegisterReaders[i-1].PulsesPerLtr; } diff --git a/TBF/BenchControl/GenericDevices/IStartInfoReader.cs b/TBF/BenchControl/GenericDevices/IStartInfoReader.cs index 54e1e0d12..bb8232538 100644 --- a/TBF/BenchControl/GenericDevices/IStartInfoReader.cs +++ b/TBF/BenchControl/GenericDevices/IStartInfoReader.cs @@ -1,6 +1,8 @@ /// /// Copyright (c) 2018 Sensus Slovensko a.s. /// +using System; +using System.Collections.Generic; using TBF.BenchControl.Generic; namespace TBF.BenchControl.GenericDevices @@ -11,6 +13,6 @@ namespace TBF.BenchControl.GenericDevices /// Reads information on start of a cycle, Events: Event.InfoRead /// /// Reference to the operation - IOperation ReadStartInfoOp(Results.Entities.WaterMeter[] waterMeters); + IOperation ReadStartInfoOp(IList waterMeters); } } diff --git a/TBF/BenchControl/Output/DB/ProductionTracing/Tracing.cs b/TBF/BenchControl/Output/DB/ProductionTracing/Tracing.cs index 26a9db559..d69729ebc 100644 --- a/TBF/BenchControl/Output/DB/ProductionTracing/Tracing.cs +++ b/TBF/BenchControl/Output/DB/ProductionTracing/Tracing.cs @@ -68,7 +68,7 @@ namespace TBF.BenchControl.Output.DB.ProductionTracing /// /// Watermeters to check at the beginning of the cycle /// - Results.Entities.WaterMeter[] waterMeters; + IList waterMeters; /// /// Data (tracing records) to write at the end of cycle @@ -192,7 +192,7 @@ namespace TBF.BenchControl.Output.DB.ProductionTracing /// /// Results of water meters /// Reference to the operation - public IOperation ReadStartInfoOp(Results.Entities.WaterMeter[] waterMeters) + public IOperation ReadStartInfoOp(IList waterMeters) { if (!tracingCfg.CheckPreviousRecords) { @@ -304,14 +304,14 @@ namespace TBF.BenchControl.Output.DB.ProductionTracing } - Retv CheckPreviousRecords(Results.Entities.WaterMeter[] waterMeters) + Retv CheckPreviousRecords(IList waterMeters) { Retv retVal = Retv.Error; bool isAtLeastOneNOK = false; using (ISession session = sessionFactory.OpenSession()) { - for (int i = 0; i < waterMeters.Length; i++) + for (int i = 0; i < waterMeters.Count; i++) { Results.Entities.WaterMeter wm = waterMeters[i]; @@ -332,7 +332,7 @@ namespace TBF.BenchControl.Output.DB.ProductionTracing { using (ISession session2 = sessionFactory2.OpenSession()) { - for (int i = 0; i < waterMeters.Length; i++) + for (int i = 0; i < waterMeters.Count; i++) { Results.Entities.WaterMeter wm = waterMeters[i]; diff --git a/TBF/BenchControl/Output/DB/SensusOracle/Database.cs b/TBF/BenchControl/Output/DB/SensusOracle/Database.cs index 0585c7400..ceb4ad0e4 100644 --- a/TBF/BenchControl/Output/DB/SensusOracle/Database.cs +++ b/TBF/BenchControl/Output/DB/SensusOracle/Database.cs @@ -50,7 +50,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle /// /// Start info is read into WaterMeter objects referenced by this array /// - Results.Entities.WaterMeter[] waterMeters; + IList waterMeters; /// /// Results to print @@ -217,7 +217,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle /// /// Results of water meters /// Reference to the operation - public IOperation ReadStartInfoOp(Results.Entities.WaterMeter[] waterMeters) + public IOperation ReadStartInfoOp(IList waterMeters) { if (!dbCfg.ReadStartInfo) { @@ -283,7 +283,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle { if (!opCompleted) { - if (waterMeters.Length == 0) return Event.ResultsWritten; + if (waterMeters.Count == 0) return Event.ResultsWritten; if ((dbCfg.DebugLevel == DebugMode.Normal) && (connection != null)) { diff --git a/TBF/BenchControl/RegisterReaders/KPackE/DataEntryForRadio/EntryForm.cs b/TBF/BenchControl/RegisterReaders/KPackE/DataEntryForRadio/EntryForm.cs index 09ceaf804..2a1fc4615 100644 --- a/TBF/BenchControl/RegisterReaders/KPackE/DataEntryForRadio/EntryForm.cs +++ b/TBF/BenchControl/RegisterReaders/KPackE/DataEntryForRadio/EntryForm.cs @@ -52,7 +52,7 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.DataEntryForRadio bool resultSaved; /// Set in Run() when results are saved - Results.Entities.WaterMeter[] waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] + IList waterMeters; /// Reference to ...ProcessData.BatchRslts.WaterMeters[] public enum CurrentOp { @@ -93,7 +93,7 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.DataEntryForRadio { if (currentOp != CurrentOp.None) throw new Exception("Sequence error"); currentOp = CurrentOp.ShowFormAtCycleBeginning; - this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters; + this.waterMeters = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters; return this; } @@ -188,7 +188,7 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.DataEntryForRadio { purchaseOrder = dlg.PurchaseOrder; - for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Length); i++) + for (int i = 0; i < Math.Min(dlg.WaterMetersCount, waterMeters.Count); i++) { if (waterMeters[i] != null) { @@ -248,11 +248,11 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.DataEntryForRadio } - void BindRegisterReadersToRadio(Results.Entities.WaterMeter[] wMeters, IRegisterReader[] rReaders, bool isEndOfTest) + void BindRegisterReadersToRadio(IList wMeters, IRegisterReader[] rReaders, bool isEndOfTest) { radio.RegReaders.Clear(); - for (int i = 0; i < Math.Min(wMeters.Length, rReaders.Length); i++) + for (int i = 0; i < Math.Min(wMeters.Count, rReaders.Length); i++) { RegisterReader.RegisterReader regReader = rReaders[i] as RegisterReader.RegisterReader; if (regReader != null) @@ -273,11 +273,14 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.DataEntryForRadio /// Test results to be updated with the information public void UpdateTestResults(Results.BatchResults batchResults) { - foreach (var wm in batchResults.WaterMeters) - { - if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + if (batchResults.Batch != null && batchResults.Batch.WaterMeters != null) + { + foreach (var wm in batchResults.Batch.WaterMeters) { - wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + if ((wm != null) && !wm.Disabled && (PurchaseOrder != null)) + { + wm.PurchaseOrder = PurchaseOrder; /// PurchaseOrder == null if form button OK has not been used => no update + } } } } diff --git a/TBF/BenchControl/RegisterReaders/KPackE/DataEntryForRadio/TestStartEndForm.cs b/TBF/BenchControl/RegisterReaders/KPackE/DataEntryForRadio/TestStartEndForm.cs index 43f7277de..a0735e456 100644 --- a/TBF/BenchControl/RegisterReaders/KPackE/DataEntryForRadio/TestStartEndForm.cs +++ b/TBF/BenchControl/RegisterReaders/KPackE/DataEntryForRadio/TestStartEndForm.cs @@ -20,7 +20,7 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.DataEntryForRadio /// Number of text boxes for serial numbers public readonly int WaterMetersCount; - readonly Results.Entities.WaterMeter[] waterMeters; + readonly IList waterMeters; readonly IRegisterReader[] regReaders; readonly bool[] disabled; @@ -107,12 +107,12 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.DataEntryForRadio /// /// Number of water meters /// Information from CycleBeginningForm about availability of water meters - public TestStartEndForm(Results.Entities.WaterMeter[] waterMeters, IRegisterReader[] regReaders, bool[] disabled) + public TestStartEndForm(IList waterMeters, IRegisterReader[] regReaders, bool[] disabled) : this() { endStates = false; - this.WaterMetersCount = waterMeters.Length; + this.WaterMetersCount = waterMeters.Count; this.waterMeters = waterMeters; this.regReaders = regReaders; this.disabled = disabled; @@ -132,13 +132,13 @@ namespace TBF.BenchControl.RegisterReaders.KPackE.DataEntryForRadio /// Reference volume, it is used to verify the end state, show/hide exclamation if necessary /// Error limit low, it is used to verify the end state, show/hide exclamation if necessary /// Error limit high, it is used to verify the end state, show/hide exclamation if necessary - public TestStartEndForm(Results.Entities.WaterMeter[] waterMeters, IRegisterReader[] regReaders, string[] wmStartStateStr, bool[] disabled, + public TestStartEndForm(IList waterMeters, IRegisterReader[] regReaders, string[] wmStartStateStr, bool[] disabled, double refVolume, double errLimLo, double errLimHi) : this() { endStates = true; - this.WaterMetersCount = waterMeters.Length; + this.WaterMetersCount = waterMeters.Count; this.waterMeters = waterMeters; this.regReaders = regReaders; if (wmStartStateStr == null || wmStartStateStr.Length != WaterMetersCount) diff --git a/TBF/BenchControl/Sequences/MainSeq.cs b/TBF/BenchControl/Sequences/MainSeq.cs index 23a986754..916706e2a 100644 --- a/TBF/BenchControl/Sequences/MainSeq.cs +++ b/TBF/BenchControl/Sequences/MainSeq.cs @@ -520,10 +520,10 @@ namespace TBF.BenchControl.Sequences BatchRslts = CreateNewBatchResults(newBatchNr, StateMachine.Procedure); RestoreBatchResults(TBF.UiBridge.Bridge.BatchNr, ref BatchRslts); /// pass the original batch number of the batch to be restored - for (int i = 0; i < BatchRslts.WaterMeters.Length; i++) + for (int i = 0; i < BatchRslts.Batch.WaterMeters.Count; i++) { - WaterMeter wm = BatchRslts.WaterMeters[i]; - if (wm != null) + WaterMeter wm = BatchRslts.Batch.WaterMeters[i]; + if (wm != null && !wm.Disabled) { if (wm.Passed) { @@ -585,7 +585,7 @@ namespace TBF.BenchControl.Sequences { try { - IOperation op = infoReader.ReadStartInfoOp(ProcessData.BatchRslts.WaterMeters); + IOperation op = infoReader.ReadStartInfoOp(ProcessData.BatchRslts.Batch.WaterMeters); if (op != null) startInfoReadOps.Add(op); } catch (Exception exc) @@ -725,9 +725,9 @@ namespace TBF.BenchControl.Sequences else if ((selection == Selection.RestoreAndFixBatch) && (Users.GlobalData.GetCurrentUserName() != "milan")) { /// Restore and fix a batch - part 2 - for (int i = 0; i < BatchRslts.WaterMeters.Length; i++) + for (int i = 0; i < BatchRslts.Batch.WaterMeters.Count; i++) { - WaterMeter wm = BatchRslts.WaterMeters[i]; + WaterMeter wm = BatchRslts.Batch.WaterMeters[i]; if (wm != null && !wm.Disabled) { /// Water meter did not pass @@ -1340,8 +1340,25 @@ namespace TBF.BenchControl.Sequences Results.Utils.GetCounterStates(ProcessData.BatchRslts.Batch, Program.LocalSettings.Counters); } + /// + /// Update batch results, determine whether watermeters passed all required tests + /// ProcessData.BatchRslts.Batch.EndTime = DateTime.Now; - ProcessData.BatchRslts.AddWaterMetersToBatch(); + for (int wmNr0 = ProcessData.BatchRslts.Batch.WaterMeters.Count - 1; wmNr0 >= 0; wmNr0--) + { + WaterMeter wm = ProcessData.BatchRslts.Batch.WaterMeters[wmNr0]; + if (wm.Disabled) + { + /// Do not save disabled watermeters to DB, remove them from the list + ProcessData.BatchRslts.Batch.WaterMeters.RemoveAt(wmNr0); + } + else + { + /// Determine whether the watermeter passed all required tests + wm.Passed = wm.PassedFromTests(); + } + } + //------------------------------------------------------ Bridge.OnActivity(this, Strings.Saving_and_printing_results); @@ -1928,9 +1945,9 @@ namespace TBF.BenchControl.Sequences } } - for (int i = 0; i < batchResults.WaterMeters.Length; i++) + for (int i = 0; i < batchResults.Batch.WaterMeters.Count; i++) { - WaterMeter wm = batchResults.WaterMeters[i]; + WaterMeter wm = batchResults.Batch.WaterMeters[i]; wm.Disabled = true; foreach (var wm2 in oriBatch.WaterMeters) { diff --git a/TBF/BenchControl/Sequences/SequenceBase.cs b/TBF/BenchControl/Sequences/SequenceBase.cs index 79773b710..322040c1d 100644 --- a/TBF/BenchControl/Sequences/SequenceBase.cs +++ b/TBF/BenchControl/Sequences/SequenceBase.cs @@ -1272,9 +1272,12 @@ namespace TBF.BenchControl.Sequences for (int i = 0; i < ProcessData.BatchRslts.WMPositionsCount; i++) { - if (ProcessData.BatchRslts.WaterMeters[i] != null) + if (ProcessData.BatchRslts.Batch.WaterMeters != null && + ProcessData.BatchRslts.Batch.WaterMeters.Count > i && + ProcessData.BatchRslts.Batch.WaterMeters[i] != null && + !ProcessData.BatchRslts.Batch.WaterMeters[i].Disabled) { - if (!ProcessData.BatchRslts.WaterMeters[i].Compound() && !ProcessData.BatchRslts.WaterMeters[i].HeatMeter()) + if (!ProcessData.BatchRslts.Batch.WaterMeters[i].Compound() && !ProcessData.BatchRslts.Batch.WaterMeters[i].HeatMeter()) { /// If this is a single meter @@ -1284,14 +1287,14 @@ namespace TBF.BenchControl.Sequences { bool isCamera = (mtrRslt.RegReaderType == (int)RegisterReaderType.Camera); - sb.Append(";"); sb.Append(ProcessData.BatchRslts.WaterMeters[i].SerialNr); /// CE WM Ser.No. + sb.Append(";"); sb.Append(ProcessData.BatchRslts.Batch.WaterMeters[i].SerialNr); /// CE WM Ser.No. sb.Append(";"); sb.Append(mtrRslt.VolumeStart); /// CF WM Vstart - pociatocny stav pri pevnom starte alebo zachyteny pri data streame sb.Append(";"); sb.Append(mtrRslt.VolumeEnd); /// CG WM Vend - konecny stav pri pevnom starte alebo zachyteny pri data streame sb.Append(";"); sb.Append(mtrRslt.VolumeMeter); /// CH WM Vmer - objem namerany vodomerom sb.Append(";"); sb.Append(mtrRslt.VolumeRef); /// CI WM Vref - objem namerany stanicou sb.Append(";"); sb.Append(mtrRslt.Error); /// CJ WM Emt - chyba vodomerom nameraneho objemu #if IPERL - sb.Append(";"); sb.Append(ProcessData.BatchRslts.WaterMeters[i].CalibFactor); /// CK iPerl calibration factor used during the test / ... + sb.Append(";"); sb.Append(ProcessData.BatchRslts.Batch.WaterMeters[i].CalibFactor); /// CK iPerl calibration factor used during the test / ... #else sb.Append(";"); sb.Append(" "); /// CK nechat prazdne #endif @@ -1318,7 +1321,7 @@ namespace TBF.BenchControl.Sequences sb.Append(";"); sb.Append(0); /// CY Analog out 4 (max Q) } } - else if (ProcessData.BatchRslts.WaterMeters[i].Compound()) + else if (ProcessData.BatchRslts.Batch.WaterMeters[i].Compound()) { /// Else if this is a compound meter @@ -1332,13 +1335,13 @@ namespace TBF.BenchControl.Sequences switch ((CompoundMeterId)b) { case CompoundMeterId.CompoundMain: - sb.Append(ProcessData.BatchRslts.WaterMeters[i].SerialNr); /// CE + sb.Append(ProcessData.BatchRslts.Batch.WaterMeters[i].SerialNr); /// CE break; case CompoundMeterId.CompoundAux: - sb.Append(ProcessData.BatchRslts.WaterMeters[i].SerialNrAux); /// CE + sb.Append(ProcessData.BatchRslts.Batch.WaterMeters[i].SerialNrAux); /// CE break; case CompoundMeterId.Compound: - sb.Append(ProcessData.BatchRslts.WaterMeters[i].SerialNr); /// CE + sb.Append(ProcessData.BatchRslts.Batch.WaterMeters[i].SerialNr); /// CE break; } sb.Append(";"); sb.Append(mtrRslt.VolumeStart); /// CF WM Vinit - pri pevnom starte pociatocny stav natukany alebo cez inteligentny system @@ -1376,14 +1379,14 @@ namespace TBF.BenchControl.Sequences if (volumeMtr != null) { - sb.Append(";"); sb.Append(ProcessData.BatchRslts.WaterMeters[i].SerialNr); /// WM Ser.No. + sb.Append(";"); sb.Append(ProcessData.BatchRslts.Batch.WaterMeters[i].SerialNr); /// WM Ser.No. sb.Append(";"); sb.Append(volumeMtr.VolumeStart); /// WM Vstart - pociatocny stav pri pevnom starte alebo zachyteny pri data streame sb.Append(";"); sb.Append(volumeMtr.VolumeEnd); /// WM Vend - konecny stav pri pevnom starte alebo zachyteny pri data streame sb.Append(";"); sb.Append(volumeMtr.VolumeMeter); /// WM Vmer - objem namerany vodomerom sb.Append(";"); sb.Append(volumeMtr.VolumeRef); /// WM Vref - objem namerany stanicou sb.Append(";"); sb.Append(volumeMtr.Error); /// WM Emt - chyba vodomerom nameraneho objemu #if IPERL - sb.Append(";"); sb.Append(ProcessData.BatchRslts.WaterMeters[i].CalibFactor); /// iPerl calibration factor used during the test / ... + sb.Append(";"); sb.Append(ProcessData.BatchRslts.Batch.WaterMeters[i].CalibFactor); /// iPerl calibration factor used during the test / ... #else sb.Append(";"); sb.Append(" "); /// nechat prazdne #endif @@ -1404,14 +1407,14 @@ namespace TBF.BenchControl.Sequences if (energyMtr != null) { - sb.Append(";"); sb.Append(ProcessData.BatchRslts.WaterMeters[i].SerialNr); /// WM Ser.No. + sb.Append(";"); sb.Append(ProcessData.BatchRslts.Batch.WaterMeters[i].SerialNr); /// WM Ser.No. sb.Append(";"); sb.Append(energyMtr.VolumeStart); /// WM Vstart - pociatocny stav pri pevnom starte alebo zachyteny pri data streame sb.Append(";"); sb.Append(energyMtr.VolumeEnd); /// WM Vend - konecny stav pri pevnom starte alebo zachyteny pri data streame sb.Append(";"); sb.Append(energyMtr.VolumeMeter); /// WM Vmer - objem namerany vodomerom sb.Append(";"); sb.Append(energyMtr.VolumeRef); /// WM Vref - objem namerany stanicou sb.Append(";"); sb.Append(energyMtr.Error); /// WM Emt - chyba vodomerom nameraneho objemu #if IPERL - sb.Append(";"); sb.Append(ProcessData.BatchRslts.WaterMeters[i].CalibFactor); /// iPerl calibration factor used during the test / ... + sb.Append(";"); sb.Append(ProcessData.BatchRslts.Batch.WaterMeters[i].CalibFactor); /// iPerl calibration factor used during the test / ... #else sb.Append(";"); sb.Append(" "); /// nechat prazdne #endif diff --git a/TBF/BenchControl/TestMethods/Adjustment/AdjustmentSeq.cs b/TBF/BenchControl/TestMethods/Adjustment/AdjustmentSeq.cs index 49b2971fc..0bcdedf9e 100644 --- a/TBF/BenchControl/TestMethods/Adjustment/AdjustmentSeq.cs +++ b/TBF/BenchControl/TestMethods/Adjustment/AdjustmentSeq.cs @@ -469,11 +469,11 @@ namespace TBF.BenchControl.TestMethods.Adjustment { for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - if (BatchRslts.WaterMeters[i] != null) + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) { long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; } } } diff --git a/TBF/BenchControl/TestMethods/CombinedWithDetection/CombinedWithDetectionSeq.cs b/TBF/BenchControl/TestMethods/CombinedWithDetection/CombinedWithDetectionSeq.cs index 78369120c..d6613446f 100644 --- a/TBF/BenchControl/TestMethods/CombinedWithDetection/CombinedWithDetectionSeq.cs +++ b/TBF/BenchControl/TestMethods/CombinedWithDetection/CombinedWithDetectionSeq.cs @@ -762,8 +762,8 @@ namespace TBF.BenchControl.TestMethods.CombinedWithDetection mainMeterRslt.TestDone = auxMeterRslt.TestDone = compoundMeterRslt.TestDone = true; tstRslt.TestDone = true; - if (Qrise != 0) BatchRslts.WaterMeters[i].QRise = Qrise; - if (Qfall != 0) BatchRslts.WaterMeters[i].QFall = Qfall; + if (Qrise != 0) BatchRslts.Batch.WaterMeters[i].QRise = Qrise; + if (Qfall != 0) BatchRslts.Batch.WaterMeters[i].QFall = Qfall; } } @@ -780,13 +780,16 @@ namespace TBF.BenchControl.TestMethods.CombinedWithDetection /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/DiverterTest/DiverterTestSeq.cs b/TBF/BenchControl/TestMethods/DiverterTest/DiverterTestSeq.cs index f99fb5872..dd2cb0e62 100644 --- a/TBF/BenchControl/TestMethods/DiverterTest/DiverterTestSeq.cs +++ b/TBF/BenchControl/TestMethods/DiverterTest/DiverterTestSeq.cs @@ -849,13 +849,16 @@ namespace TBF.BenchControl.TestMethods.DiverterTest /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long _infoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out _infoFlags); - BatchRslts.WaterMeters[i].InfoFlags = infoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/Endurance/EnduranceSeq.cs b/TBF/BenchControl/TestMethods/Endurance/EnduranceSeq.cs index 9703f85db..cb68c16f2 100644 --- a/TBF/BenchControl/TestMethods/Endurance/EnduranceSeq.cs +++ b/TBF/BenchControl/TestMethods/Endurance/EnduranceSeq.cs @@ -467,11 +467,11 @@ namespace TBF.BenchControl.TestMethods.Endurance { for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - if (BatchRslts.WaterMeters[i] != null) + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) { long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; } } } diff --git a/TBF/BenchControl/TestMethods/FixedStart/FixedStartSeq.cs b/TBF/BenchControl/TestMethods/FixedStart/FixedStartSeq.cs index bb61fcdd4..4b5828e50 100644 --- a/TBF/BenchControl/TestMethods/FixedStart/FixedStartSeq.cs +++ b/TBF/BenchControl/TestMethods/FixedStart/FixedStartSeq.cs @@ -1001,13 +1001,16 @@ namespace TBF.BenchControl.TestMethods.FixedStart /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/FixedStartAdvanced/FixedStartAdvancedSeq.cs b/TBF/BenchControl/TestMethods/FixedStartAdvanced/FixedStartAdvancedSeq.cs index e0b0ed4dc..1ba1c42d8 100644 --- a/TBF/BenchControl/TestMethods/FixedStartAdvanced/FixedStartAdvancedSeq.cs +++ b/TBF/BenchControl/TestMethods/FixedStartAdvanced/FixedStartAdvancedSeq.cs @@ -646,13 +646,16 @@ namespace TBF.BenchControl.TestMethods.FixedStartAdvanced /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/FixedStartDeferredEval/FixedStartDeferredEvalSeq.cs b/TBF/BenchControl/TestMethods/FixedStartDeferredEval/FixedStartDeferredEvalSeq.cs index 25c61a665..f40b6f2f6 100644 --- a/TBF/BenchControl/TestMethods/FixedStartDeferredEval/FixedStartDeferredEvalSeq.cs +++ b/TBF/BenchControl/TestMethods/FixedStartDeferredEval/FixedStartDeferredEvalSeq.cs @@ -1000,16 +1000,19 @@ namespace TBF.BenchControl.TestMethods.FixedStartDeferredEval /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) - { - if (BatchRslts.WaterMeters[i] != null) - { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) + { + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + { + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } - } - } + } + } /// Update results Bridge.OnTestCompleted(this, new TestCompletedEventArgs(data.TestName, tstRslt)); diff --git a/TBF/BenchControl/TestMethods/FixedStartMassCollDeferredEval/FixedStartMassCollDeferredEvalSeq.cs b/TBF/BenchControl/TestMethods/FixedStartMassCollDeferredEval/FixedStartMassCollDeferredEvalSeq.cs index a185b7df2..7ba1ce705 100644 --- a/TBF/BenchControl/TestMethods/FixedStartMassCollDeferredEval/FixedStartMassCollDeferredEvalSeq.cs +++ b/TBF/BenchControl/TestMethods/FixedStartMassCollDeferredEval/FixedStartMassCollDeferredEvalSeq.cs @@ -1145,16 +1145,19 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollDeferredEval /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) - { - if (BatchRslts.WaterMeters[i] != null) - { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) + { + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + { + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } - } - } + } + } /// Update results Bridge.OnTestCompleted(this, new TestCompletedEventArgs(data.TestName, tstRslt)); diff --git a/TBF/BenchControl/TestMethods/FixedStartMassCollection/FixedStartMassCollectionSeq.cs b/TBF/BenchControl/TestMethods/FixedStartMassCollection/FixedStartMassCollectionSeq.cs index 1a2fa2568..71376585b 100644 --- a/TBF/BenchControl/TestMethods/FixedStartMassCollection/FixedStartMassCollectionSeq.cs +++ b/TBF/BenchControl/TestMethods/FixedStartMassCollection/FixedStartMassCollectionSeq.cs @@ -1180,13 +1180,16 @@ namespace TBF.BenchControl.TestMethods.FixedStartMassCollection /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/FixedStartTankCollection/FixedStartTankCollectionSeq.cs b/TBF/BenchControl/TestMethods/FixedStartTankCollection/FixedStartTankCollectionSeq.cs index c34bb1373..9b0a17ef8 100644 --- a/TBF/BenchControl/TestMethods/FixedStartTankCollection/FixedStartTankCollectionSeq.cs +++ b/TBF/BenchControl/TestMethods/FixedStartTankCollection/FixedStartTankCollectionSeq.cs @@ -841,13 +841,16 @@ namespace TBF.BenchControl.TestMethods.FixedStartTankCollection /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs b/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs index c677cfa08..05137d16e 100644 --- a/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs @@ -689,13 +689,16 @@ namespace TBF.BenchControl.TestMethods.FlyingStart /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/FlyingStartFirstRepetWithMassCollSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/FlyingStartFirstRepetWithMassCollSeq.cs index b51502080..4f19c90c0 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/FlyingStartFirstRepetWithMassCollSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartFirstRepetWithMassColl/FlyingStartFirstRepetWithMassCollSeq.cs @@ -1046,13 +1046,16 @@ namespace TBF.BenchControl.TestMethods.FlyingStartFirstRepetWithMassColl /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollComparative/FlyingStartMassCollComparativeSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollComparative/FlyingStartMassCollComparativeSeq.cs index 3cbdfbba7..ff9d3a3a8 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartMassCollComparative/FlyingStartMassCollComparativeSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollComparative/FlyingStartMassCollComparativeSeq.cs @@ -1152,13 +1152,16 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollComparative /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs index 25038ac4d..df054cb93 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs @@ -1011,13 +1011,16 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs index a6dc7a7e6..e2fb30f95 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs @@ -1025,13 +1025,16 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/FlyingStartTankCollection/FlyingStartTankCollectionSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartTankCollection/FlyingStartTankCollectionSeq.cs index 12a09e918..95328f879 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartTankCollection/FlyingStartTankCollectionSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartTankCollection/FlyingStartTankCollectionSeq.cs @@ -711,13 +711,16 @@ namespace TBF.BenchControl.TestMethods.FlyingStartTankCollection /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/ManualEntry/ManualEntrySeq.cs b/TBF/BenchControl/TestMethods/ManualEntry/ManualEntrySeq.cs index 8c7f78829..30c640bb6 100644 --- a/TBF/BenchControl/TestMethods/ManualEntry/ManualEntrySeq.cs +++ b/TBF/BenchControl/TestMethods/ManualEntry/ManualEntrySeq.cs @@ -125,7 +125,7 @@ namespace TBF.BenchControl.TestMethods.ManualEntry IList items = Results.ManualEntryItemSpec.FromStrArray(cfg.Items); - foreach (var waterMeter in BatchRslts.WaterMeters) + foreach (var waterMeter in BatchRslts.Batch.WaterMeters) { if (waterMeter == null && waterMeter.Disabled) continue; @@ -175,13 +175,16 @@ namespace TBF.BenchControl.TestMethods.ManualEntry /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (!BatchRslts.Batch.WaterMeters[i].Disabled) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/PulsesTest/PulsesTestSeq.cs b/TBF/BenchControl/TestMethods/PulsesTest/PulsesTestSeq.cs index 97652e0d3..e6c94c40f 100644 --- a/TBF/BenchControl/TestMethods/PulsesTest/PulsesTestSeq.cs +++ b/TBF/BenchControl/TestMethods/PulsesTest/PulsesTestSeq.cs @@ -465,11 +465,11 @@ namespace TBF.BenchControl.TestMethods.PulsesTest { for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - if (BatchRslts.WaterMeters[i] != null) + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) { long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; } } } diff --git a/TBF/BenchControl/TestMethods/PulsesTestManual/PulsesTestManualSeq.cs b/TBF/BenchControl/TestMethods/PulsesTestManual/PulsesTestManualSeq.cs index ce4809a3f..b88a22996 100644 --- a/TBF/BenchControl/TestMethods/PulsesTestManual/PulsesTestManualSeq.cs +++ b/TBF/BenchControl/TestMethods/PulsesTestManual/PulsesTestManualSeq.cs @@ -467,11 +467,11 @@ namespace TBF.BenchControl.TestMethods.PulsesTestManual { for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - if (BatchRslts.WaterMeters[i] != null) + if (BatchRslts.Batch.WaterMeters[i] != null && !BatchRslts.Batch.WaterMeters[i].Disabled) { long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; } } } diff --git a/TBF/BenchControl/TestMethods/SensitivityTest/SensitivityTestSeq.cs b/TBF/BenchControl/TestMethods/SensitivityTest/SensitivityTestSeq.cs index c77ef7fd5..eea74b5e3 100644 --- a/TBF/BenchControl/TestMethods/SensitivityTest/SensitivityTestSeq.cs +++ b/TBF/BenchControl/TestMethods/SensitivityTest/SensitivityTestSeq.cs @@ -350,7 +350,7 @@ namespace TBF.BenchControl.TestMethods.SensitivityTest for (int i = 0; i < Config.Data.WMsCount; i++) { - if ((BatchRslts.WaterMeters[i] != null) && !BatchRslts.WaterMeters[i].Disabled && (RegisterReaders[i] != null) && !detected[i]) + if ((BatchRslts.Batch.WaterMeters[i] != null) && !BatchRslts.Batch.WaterMeters[i].Disabled && (RegisterReaders[i] != null) && !detected[i]) { double[] freqBefore = new double[DetectionKernelSize]; double[] freqAfter = new double[DetectionKernelSize]; @@ -375,7 +375,7 @@ namespace TBF.BenchControl.TestMethods.SensitivityTest aveFreqAfter /= (double)(DetectionKernelSize); UiBridge.Bridge.OnLog(this, string.Format(" WM{0}: pulseFreq={1}, aveFreqB={2}, aveFreqA={3}\r\n", - BatchRslts.WaterMeters[i].WMPosition, + BatchRslts.Batch.WaterMeters[i].WMPosition, pulseFreqsForDetection[i, 0].ToString("F2"), aveFreqBefore.ToString("F2"), aveFreqAfter.ToString("F2"))); @@ -401,7 +401,7 @@ namespace TBF.BenchControl.TestMethods.SensitivityTest allDetected = true; for (int i = 0; i < Config.Data.WMsCount; i++) { - if ((BatchRslts.WaterMeters[i] != null) && !BatchRslts.WaterMeters[i].Disabled && (RegisterReaders[i] != null) && !detected[i]) allDetected = false; + if ((BatchRslts.Batch.WaterMeters[i] != null) && !BatchRslts.Batch.WaterMeters[i].Disabled && (RegisterReaders[i] != null) && !detected[i]) allDetected = false; } } } @@ -526,13 +526,16 @@ namespace TBF.BenchControl.TestMethods.SensitivityTest /// Update water meter error flags if (ErrorFlagsComp != null) { - for (int i = 0; i < BatchRslts.WMPositionsCount; i++) + if (BatchRslts.Batch != null && BatchRslts.Batch.WaterMeters != null) { - if (BatchRslts.WaterMeters[i] != null) + for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - long wmInfoFlags; - BatchRslts.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.WaterMeters[i].MeterTestRslts, out wmInfoFlags); - BatchRslts.WaterMeters[i].InfoFlags = wmInfoFlags; + if (BatchRslts.Batch.WaterMeters[i] != null) + { + long wmInfoFlags; + BatchRslts.Batch.WaterMeters[i].ErrorFlags = ErrorFlagsComp.GetWMtrErrorFlags(BatchRslts.Batch.WaterMeters[i].MeterTestRslts, out wmInfoFlags); + BatchRslts.Batch.WaterMeters[i].InfoFlags = wmInfoFlags; + } } } } diff --git a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationForm.cs b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationForm.cs index 164ffca88..b9102ad64 100644 --- a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationForm.cs +++ b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationForm.cs @@ -792,7 +792,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication if ((ihead.Group == group) && (threadIx < muxBrdOrGroup14Nrs.Count) && (ihead.MuxBoardNrOrGroup14 == muxBrdOrGroup14Nrs[threadIx])) { wmFound = true; - Results.Entities.WaterMeter wm = ProcessData.BatchRslts.WaterMeters[waterMeterPositions0[wmNr0]]; + Results.Entities.WaterMeter wm = ProcessData.BatchRslts.Batch.WaterMeters[waterMeterPositions0[wmNr0]]; CommErr error; string resultStr = string.Empty; diff --git a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationSeq.cs b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationSeq.cs index 49995997c..f546decf0 100644 --- a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationSeq.cs +++ b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationSeq.cs @@ -114,7 +114,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication for (int i = 0; i < BatchRslts.WMPositionsCount; i++) { - Results.Entities.WaterMeter wm = BatchRslts.WaterMeters[i]; + Results.Entities.WaterMeter wm = BatchRslts.Batch.WaterMeters[i]; Results.Entities.MeterTestRslt mtr = ProcessData.BatchRslts.GetMeterTestRslt(test.Name, i, CompoundMeterId.Single); ///// Reference to iPerl water meter or null: diff --git a/TBF/UI/Process/ProcessTabPageCtrl24.cs b/TBF/UI/Process/ProcessTabPageCtrl24.cs index b9198e919..c8581fbae 100644 --- a/TBF/UI/Process/ProcessTabPageCtrl24.cs +++ b/TBF/UI/Process/ProcessTabPageCtrl24.cs @@ -546,10 +546,10 @@ namespace TBF.UI.Process if (!tRes.Batch.Compound) { - for (int i = 0; i < Math.Min(textBoxesCount, ProcessData.BatchRslts.WaterMeters.Length); i++) + for (int i = 0; i < Math.Min(textBoxesCount, ProcessData.BatchRslts.Batch.WaterMeters.Count); i++) { - WaterMeter wm = ProcessData.BatchRslts.WaterMeters[i]; - MeterTestRslt mtr = (wm != null) ? wm.GetMeterTestRslt(args.TestName) : null; + WaterMeter wm = ProcessData.BatchRslts.Batch.WaterMeters[i]; + MeterTestRslt mtr = (wm != null && !wm.Disabled) ? wm.GetMeterTestRslt(args.TestName) : null; if (mtr != null) { @@ -565,7 +565,7 @@ namespace TBF.UI.Process { for (int compMtr = 0; compMtr < Config.Data.CompoundWMsCount; compMtr++) { - WaterMeter wm = ProcessData.BatchRslts.WaterMeters[compMtr]; + WaterMeter wm = ProcessData.BatchRslts.Batch.WaterMeters[compMtr]; if (wm == null) continue; int end = Math.Min(textBoxesCount, Config.Data.WMsCount); diff --git a/TBF/UI/Process/ProcessTabPageCtrl48.cs b/TBF/UI/Process/ProcessTabPageCtrl48.cs index 79c8d23f7..117e20daf 100644 --- a/TBF/UI/Process/ProcessTabPageCtrl48.cs +++ b/TBF/UI/Process/ProcessTabPageCtrl48.cs @@ -575,9 +575,9 @@ namespace TBF.UI.Process if (!tRes.Batch.Compound) { - for (int i = 0; i < Math.Min(textBoxesCount, ProcessData.BatchRslts.WaterMeters.Length); i++) + for (int i = 0; i < Math.Min(textBoxesCount, ProcessData.BatchRslts.Batch.WaterMeters.Count); i++) { - WaterMeter wm = ProcessData.BatchRslts.WaterMeters[i]; + WaterMeter wm = ProcessData.BatchRslts.Batch.WaterMeters[i]; MeterTestRslt mtr = (wm != null) ? wm.GetMeterTestRslt(args.TestName) : null; if (mtr != null) @@ -594,8 +594,8 @@ namespace TBF.UI.Process { for (int compMtr = 0; compMtr < Config.Data.CompoundWMsCount; compMtr++) { - WaterMeter wm = ProcessData.BatchRslts.WaterMeters[compMtr]; - if (wm == null) continue; + WaterMeter wm = ProcessData.BatchRslts.Batch.WaterMeters[compMtr]; + if (wm == null && !wm.Disabled) continue; int end = Math.Min(textBoxesCount, Config.Data.WMsCount); diff --git a/TBF/UI/Process/ProcessTabPageCtrl6.cs b/TBF/UI/Process/ProcessTabPageCtrl6.cs index c12648b33..2da038df1 100644 --- a/TBF/UI/Process/ProcessTabPageCtrl6.cs +++ b/TBF/UI/Process/ProcessTabPageCtrl6.cs @@ -579,9 +579,9 @@ namespace TBF.UI.Process if (!tRes.Batch.Compound) { - for (int i = 0; i < Math.Min(textBoxesCount, ProcessData.BatchRslts.WaterMeters.Length); i++) + for (int i = 0; i < Math.Min(textBoxesCount, ProcessData.BatchRslts.Batch.WaterMeters.Count); i++) { - WaterMeter wm = ProcessData.BatchRslts.WaterMeters[i]; + WaterMeter wm = ProcessData.BatchRslts.Batch.WaterMeters[i]; MeterTestRslt mtr = (wm != null) ? wm.GetMeterTestRslt(args.TestName) : null; if (mtr != null) @@ -598,8 +598,8 @@ namespace TBF.UI.Process { for (int compMtr = 0; compMtr < Config.Data.CompoundWMsCount; compMtr++) { - WaterMeter wm = ProcessData.BatchRslts.WaterMeters[compMtr]; - if (wm == null) continue; + WaterMeter wm = ProcessData.BatchRslts.Batch.WaterMeters[compMtr]; + if (wm == null && !wm.Disabled) continue; int end = Math.Min(textBoxesCount, Config.Data.WMsCount); diff --git a/TBF/UI/Process/ProcessTabPageExCtrl.cs b/TBF/UI/Process/ProcessTabPageExCtrl.cs index f79b93e11..784feb5e1 100644 --- a/TBF/UI/Process/ProcessTabPageExCtrl.cs +++ b/TBF/UI/Process/ProcessTabPageExCtrl.cs @@ -551,10 +551,10 @@ namespace TBF.UI.Process /// /// Test results for single meters /// - for (int i = 0; i < Math.Min(metersListView.Items.Count, ProcessData.BatchRslts.WaterMeters.Length); i++) + for (int i = 0; i < Math.Min(metersListView.Items.Count, ProcessData.BatchRslts.Batch.WaterMeters.Count); i++) { - WaterMeter wm = ProcessData.BatchRslts.WaterMeters[i]; - MeterTestRslt mtr = (wm != null) ? wm.GetMeterTestRslt(args.TestName) : null; + WaterMeter wm = ProcessData.BatchRslts.Batch.WaterMeters[i]; + MeterTestRslt mtr = (wm != null && !wm.Disabled) ? wm.GetMeterTestRslt(args.TestName) : null; if (mtr != null) { @@ -571,10 +571,10 @@ namespace TBF.UI.Process /// /// Test results for heat meters /// - for (int i = 0; i < Math.Min(metersListView.Items.Count, ProcessData.BatchRslts.WaterMeters.Length); i++) + for (int i = 0; i < Math.Min(metersListView.Items.Count, ProcessData.BatchRslts.Batch.WaterMeters.Count); i++) { - WaterMeter wm = ProcessData.BatchRslts.WaterMeters[i]; - if (wm == null) continue; + WaterMeter wm = ProcessData.BatchRslts.Batch.WaterMeters[i]; + if (wm == null || wm.Disabled) continue; MeterTestRslt mtrVolume = wm.GetMeterTestRslt(args.TestName, CompoundMeterId.HeatMeterVolume); MeterTestRslt mtrEnergy = wm.GetMeterTestRslt(args.TestName, CompoundMeterId.HeatMeterEnergy); @@ -603,8 +603,8 @@ namespace TBF.UI.Process /// for (int z = 0; z < Math.Min(Config.Data.CompoundWMsCount, metersListView.Items.Count / 3); z++) { - WaterMeter wm = ProcessData.BatchRslts.WaterMeters[z]; - if (wm == null) continue; + WaterMeter wm = ProcessData.BatchRslts.Batch.WaterMeters[z]; + if (wm == null && !wm.Disabled) continue; MeterTestRslt mtrComp = wm.GetMeterTestRslt(args.TestName, CompoundMeterId.Compound); MeterTestRslt mtrMain = wm.GetMeterTestRslt(args.TestName, CompoundMeterId.CompoundMain); diff --git a/TBF/UI/ResultsMI/PreviousResultsDlg.cs b/TBF/UI/ResultsMI/PreviousResultsDlg.cs index fd2df01f3..562082879 100644 --- a/TBF/UI/ResultsMI/PreviousResultsDlg.cs +++ b/TBF/UI/ResultsMI/PreviousResultsDlg.cs @@ -249,7 +249,7 @@ namespace TBF.UI.ResultsMI IList items = null; foreach (var wm in b.WaterMeters) { - if (wm != null) + if (!wm.Disabled && wm.WaterMeterData != null) { if (wm.WaterMeterData.Compound) { diff --git a/TBF/UI/ResultsMI/ResultsTabPageCtrl.cs b/TBF/UI/ResultsMI/ResultsTabPageCtrl.cs index 2d9dae7e0..500ff040d 100644 --- a/TBF/UI/ResultsMI/ResultsTabPageCtrl.cs +++ b/TBF/UI/ResultsMI/ResultsTabPageCtrl.cs @@ -327,11 +327,11 @@ namespace TBF.UI.ResultsMI /// void OnDoubleClick(object sender, WaterMeterEventArgs args) { - int waterMetersCount = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters.Length; + int waterMetersCount = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters.Count; WaterMeter wm; if ((args.WMPosition <= 0) || (args.WMPosition > waterMetersCount) || - ((wm = TBF.BenchControl.Sequences.ProcessData.BatchRslts.WaterMeters[args.WMPosition - 1]) == null)) + ((wm = TBF.BenchControl.Sequences.ProcessData.BatchRslts.Batch.WaterMeters[args.WMPosition - 1]) == null)) { MessageBox.Show(Strings.No_water_meter); return; @@ -384,7 +384,7 @@ namespace TBF.UI.ResultsMI bool IsLayoutChangedDueToData(BatchResults results) { - if (results == null || results.WaterMeters == null || results.WaterMeters.Length == 0) + if (results == null || results.Batch == null || results.Batch.WaterMeters == null || results.Batch.WaterMeters.Count == 0) { /// 'results' contain no water meters, wmRsltsCtrl.Lenght == 0 expected return (wmRsltsCtrl.Length != 0); /// true when there are currently water meters on screen @@ -394,11 +394,11 @@ namespace TBF.UI.ResultsMI /// Determine water meter positions count /// int displayedWatermetersCount = 0; - for (int i = 0; i < results.WaterMeters.Length; i++) + for (int i = 0; i < results.Batch.WaterMeters.Count; i++) { - if (results.WaterMeters[i] != null) + if (results.Batch.WaterMeters[i] != null) { - if (ShowDisabledPositions || !results.WaterMeters[i].Disabled) + if (ShowDisabledPositions || !results.Batch.WaterMeters[i].Disabled) { displayedWatermetersCount++; } @@ -428,11 +428,11 @@ namespace TBF.UI.ResultsMI /// Determine water meter positions count /// int displayedControlsCount = 0; - for (int i = 0; i < results.WaterMeters.Length; i++) + for (int i = 0; i < results.Batch.WaterMeters.Count; i++) { - if (results.WaterMeters[i] != null) + if (results.Batch.WaterMeters[i] != null) { - if (ShowDisabledPositions || !results.WaterMeters[i].Disabled) + if (ShowDisabledPositions || !results.Batch.WaterMeters[i].Disabled) { displayedControlsCount++; } @@ -473,11 +473,11 @@ namespace TBF.UI.ResultsMI wmRsltsCtrl = new IOneWMResultsCtrl[displayedControlsCount]; int ix = 0; firstEnabledControl = null; - for (int i = 0; i < results.WaterMeters.Length; i++) + for (int i = 0; i < results.Batch.WaterMeters.Count; i++) { - if (results.WaterMeters[i] != null) + if (results.Batch.WaterMeters[i] != null) { - if (!results.WaterMeters[i].Disabled || ShowDisabledPositions) + if (!results.Batch.WaterMeters[i].Disabled || ShowDisabledPositions) { /// Create one water meter position / control wmRsltsCtrl[ix] = (TestsArrangement == TestsArrangement.Rows) @@ -489,7 +489,7 @@ namespace TBF.UI.ResultsMI wmRsltsCtrl[ix].WMResultsClickedHandler += HandleDoubleClick; flowLayoutPanel.Controls.Add(wmRsltsCtrl[ix] as UserControl); - if ((firstEnabledControl == null) && !results.WaterMeters[i].Disabled) firstEnabledControl = wmRsltsCtrl[ix]; + if ((firstEnabledControl == null) && !results.Batch.WaterMeters[i].Disabled) firstEnabledControl = wmRsltsCtrl[ix]; ix++; } } @@ -530,14 +530,14 @@ namespace TBF.UI.ResultsMI void UpdateResults(BatchResults batchResults) { - if ((batchResults != null) && (batchResults.WaterMeters != null)) + if (batchResults != null && batchResults.Batch != null && batchResults.Batch.WaterMeters != null) { int ctrlIx = 0; - for (int i = 0; i < batchResults.WaterMeters.Length; i++) + for (int i = 0; i < batchResults.Batch.WaterMeters.Count; i++) { - if (!batchResults.WaterMeters[i].Disabled || ShowDisabledPositions) + if (!batchResults.Batch.WaterMeters[i].Disabled || ShowDisabledPositions) { - if (ctrlIx < wmRsltsCtrl.Length) wmRsltsCtrl[ctrlIx++].Update(batchResults.WaterMeters[i]); + if (ctrlIx < wmRsltsCtrl.Length) wmRsltsCtrl[ctrlIx++].Update(batchResults.Batch.WaterMeters[i]); } } }