(1) Passed/Failed with color in the on-screen results
(2) Error of main and aux. combined watermeters calculated and can be used in results (3) Bugfix: no zero reference exception when the list of results items is empty
This commit is contained in:
parent
00b937553c
commit
5a4df5593a
31
TODO.txt
31
TODO.txt
@ -1,26 +1,17 @@
|
||||
- zdruzeny: vysledky na process obrazovke sa opakuju 3x
|
||||
- s/n sa nedostalo do vysledkov
|
||||
- oprava process obrazovky
|
||||
- zdruzeny: ignorovanie pulzov z velkeho vodomera
|
||||
|
||||
BUGS HI – High importance
|
||||
|
||||
LO – Low importance
|
||||
|
||||
MI – Medium importance
|
||||
|
||||
|
||||
|
||||
1. HI Po prípravnej procedure zruší nastavenie frekvencie čerpadla a nenastaví ho
|
||||
|
||||
2. MI Bolo by dobré mať count down pri zavodnení napriklad ako pri skuške
|
||||
|
||||
3. LI text pri zavodnení voliteľný
|
||||
|
||||
4. HI chýba procedúra pre reguláciu vodomerov
|
||||
|
||||
5. HI ak sa prekopirovala procedura tak TEST CONFIGURATION ERROR na začiatku skúšky
|
||||
|
||||
6. LI Zobrazovanie stavu čo sa deje bude treba modifikovať keď za pozrieme na obrazovku nevieme kde sa nachádzame
|
||||
|
||||
7. MI Vysledky by mali byť v poradí Nazov skúšky, Flow, Error, Vet, Vetmet, Vmeter, Tupa, Tdwa, Pupa, Pdwa
|
||||
|
||||
LO – Low importance
|
||||
MI – Medium importance
|
||||
|
||||
2. MI Bolo by dobré mať count down pri zavodnení napriklad ako pri skuške
|
||||
4. HI chýba procedúra pre reguláciu vodomerov
|
||||
6. LI Zobrazovanie stavu čo sa deje bude treba modifikovať keď za pozrieme na obrazovku nevieme kde sa nachádzame
|
||||
7. MI Vysledky by mali byť v poradí Nazov skúšky, Flow, Error, Vet, Vetmet, Vmeter, Tupa, Tdwa, Pupa, Pdwa
|
||||
|
||||
|
||||
= ked dam na DN100 zdruzeny test tak na konci testu pri prepisovani vysledkov padne:
|
||||
|
||||
@ -346,6 +346,8 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
|
||||
for (int iCmbnd = 0; iCmbnd < Program.WMsCount / 2; iCmbnd++)
|
||||
{
|
||||
tstRslt.CombinedMeters[iCmbnd].VolumeRef = tstRslt.VolumeCTV; /// [l] must be calculated before main & aux. meter error
|
||||
|
||||
for (int i = 2 * iCmbnd; i < 2 * iCmbnd + 2; i++)
|
||||
{
|
||||
if (sensPath.RegisterReaders[i] == null || sensPath.RegisterReaders[i].PulsesPerLtr <= float.Epsilon)
|
||||
@ -357,11 +359,11 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
tstRslt.Meters[i].VolumeMeter = Convert.ToSingle(WMPulses[i]) / sensPath.RegisterReaders[i].PulsesPerLtr;
|
||||
}
|
||||
|
||||
tstRslt.Meters[i].SerialNr = "wm" + (i + 1).ToString();
|
||||
tstRslt.Meters[i].VolumeStart = 0; /// liter
|
||||
tstRslt.Meters[i].VolumeEnd = 0; /// liter
|
||||
tstRslt.Meters[i].SerialNr = "not specified";
|
||||
tstRslt.Meters[i].VolumeStart = 0; /// [l]
|
||||
tstRslt.Meters[i].VolumeEnd = 0; /// [l]
|
||||
|
||||
tstRslt.Meters[i].VolumeRef = tstRslt.VolumeCTV; /// liter
|
||||
tstRslt.Meters[i].VolumeRef = tstRslt.VolumeCTV; /// [l]
|
||||
if (WMRefPulses[i] != 0)
|
||||
{
|
||||
tstRslt.Meters[i].VolumeMeter *= ((float)cBrd.EtPulses(0) / (float)WMRefPulses[i]);
|
||||
@ -371,10 +373,9 @@ namespace TBF.BenchControl.TestMethods.CombinedMeters
|
||||
tstRslt.Meters[i].PulsesMaster = WMRefPulses[i];
|
||||
tstRslt.Meters[i].Time = cBrd.TTime;
|
||||
|
||||
tstRslt.Meters[i].VolumeErrorPct = 0; /// Not used
|
||||
tstRslt.Meters[i].VolumeErrorPct = Formulas.ErrorFromVolumes(tstRslt.Meters[i].VolumeMeter, tstRslt.CombinedMeters[iCmbnd].VolumeRef); /// Not used
|
||||
}
|
||||
|
||||
tstRslt.CombinedMeters[iCmbnd].VolumeRef = tstRslt.VolumeCTV; /// liter
|
||||
tstRslt.CombinedMeters[iCmbnd].VolumeMeter = tstRslt.Meters[2 * iCmbnd].VolumeMeter + tstRslt.Meters[2 * iCmbnd + 1].VolumeMeter;
|
||||
|
||||
tstRslt.CombinedMeters[iCmbnd].PulsesMaster = cBrd.EtPulses(0);
|
||||
|
||||
@ -88,8 +88,8 @@ namespace TBF.Forms
|
||||
AllItems.Add(new ResultItemSpec("Error", "Error [%]", x => x.VolumeErrorPct.ToString("F2"),
|
||||
(x, y, z) => z.VolumeErrorPct.ToString("F2")));
|
||||
|
||||
AllItems.Add(new ResultItemSpec("Passed", "Result", x => (x.Passed ? Strings.Passed : Strings.Failed),
|
||||
(x, y, z) => (z.Passed ? Strings.Passed : Strings.Failed)));
|
||||
AllItems.Add(new ResultItemSpec("Passed", "Result", x => (x.Passed ? Strings.Passed + "|Green" : Strings.Failed + "|Red"),
|
||||
(x, y, z) => (z.Passed ? Strings.Passed + "|Green" : Strings.Failed + "|Red")));
|
||||
|
||||
AllItems.Add(new ResultItemSpec("Serial Nr", "s/n", x => x.SerialNr, (x, y, z) => z.SerialNr));
|
||||
AllItems.Add(new ResultItemSpec("End state", "End state", x => x.EndState, (x, y, z) => z.EndState));
|
||||
|
||||
@ -2,6 +2,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using log4net;
|
||||
using TBF.Resources;
|
||||
@ -230,8 +231,9 @@ namespace TBF.Screens
|
||||
/// <returns>ListView object</returns>
|
||||
ListView GetResultsTestsAreRows(int mtr, bool combined)
|
||||
{
|
||||
if (tests == null) return null;
|
||||
IList<Forms.ResultItemSpec> items = (combined ? RsltItems_Screen_CombinedWM : RsltItems_Screen_SingleWM);
|
||||
if (tests == null || items == null) return null;
|
||||
|
||||
ListView lview = GetListView();
|
||||
|
||||
// Header
|
||||
@ -247,15 +249,33 @@ namespace TBF.Screens
|
||||
{
|
||||
foreach (var item in items)
|
||||
{
|
||||
string str;
|
||||
if (combined)
|
||||
{
|
||||
lvi.SubItems.Add((item.PrintCombined == null) ? string.Empty : item.PrintCombined(testRslt.Meters[2 * mtr],
|
||||
testRslt.Meters[2 * mtr + 1],
|
||||
testRslt.CombinedMeters[mtr]));
|
||||
str = (item.PrintCombined == null) ? string.Empty : item.PrintCombined(testRslt.Meters[2 * mtr],
|
||||
testRslt.Meters[2 * mtr + 1],
|
||||
testRslt.CombinedMeters[mtr]);
|
||||
}
|
||||
else
|
||||
{
|
||||
lvi.SubItems.Add((item.Print == null) ? string.Empty : item.Print(testRslt.Meters[mtr]));
|
||||
str = (item.Print == null) ? string.Empty : item.Print(testRslt.Meters[mtr]);
|
||||
}
|
||||
|
||||
string[] texts = str.Split(new char[] { '|' });
|
||||
if (texts.Length == 1)
|
||||
{
|
||||
lvi.SubItems.Add(str);
|
||||
}
|
||||
else if (texts.Length == 2)
|
||||
{
|
||||
Color color = texts[1].Equals("Green") ? Color.Green : (texts[1].Equals("Red") ? Color.Red : Color.White);
|
||||
lvi.UseItemStyleForSubItems = false;
|
||||
lvi.SubItems.Add(texts[0]);
|
||||
lvi.SubItems[lvi.SubItems.Count - 1].BackColor = color;
|
||||
}
|
||||
else
|
||||
{
|
||||
lvi.SubItems.Add(string.Empty);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -272,8 +292,9 @@ namespace TBF.Screens
|
||||
/// <returns>ListView object</returns>
|
||||
ListView GetResultsTestsAreColumns(int mtr, bool combined)
|
||||
{
|
||||
if (tests == null) return null;
|
||||
IList<Forms.ResultItemSpec> items = (combined ? RsltItems_Screen_CombinedWM : RsltItems_Screen_SingleWM);
|
||||
if (tests == null || items == null) return null;
|
||||
|
||||
ListView lview = GetListView();
|
||||
|
||||
// Header
|
||||
@ -289,16 +310,49 @@ namespace TBF.Screens
|
||||
{
|
||||
foreach (var tr in trs)
|
||||
{
|
||||
lvi.SubItems.Add((item.PrintCombined == null || tr == null) ? string.Empty : item.PrintCombined(tr.Meters[2 * mtr],
|
||||
string str = (item.PrintCombined == null || tr == null) ? string.Empty : item.PrintCombined(tr.Meters[2 * mtr],
|
||||
tr.Meters[2 * mtr + 1],
|
||||
tr.CombinedMeters[mtr]));
|
||||
tr.CombinedMeters[mtr]);
|
||||
string[] texts = str.Split(new char[] { '|' });
|
||||
if (texts.Length == 1)
|
||||
{
|
||||
lvi.SubItems.Add(str);
|
||||
}
|
||||
else if (texts.Length == 2)
|
||||
{
|
||||
Color color = texts[1].Equals("Green") ? Color.Green : (texts[1].Equals("Red") ? Color.Red : Color.White);
|
||||
lvi.UseItemStyleForSubItems = false;
|
||||
lvi.SubItems.Add(texts[0]);
|
||||
lvi.SubItems[lvi.SubItems.Count - 1].BackColor = color;
|
||||
}
|
||||
else
|
||||
{
|
||||
lvi.SubItems.Add(string.Empty);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
foreach (var tr in trs)
|
||||
{
|
||||
lvi.SubItems.Add((item.Print == null || tr == null) ? string.Empty : item.Print(tr.Meters[mtr]));
|
||||
string str = (item.Print == null || tr == null) ? string.Empty : item.Print(tr.Meters[mtr]);
|
||||
|
||||
string[] texts = str.Split(new char[] { '|' });
|
||||
if (texts.Length == 1)
|
||||
{
|
||||
lvi.SubItems.Add(str);
|
||||
}
|
||||
else if (texts.Length == 2)
|
||||
{
|
||||
Color color = texts[1].Equals("Green") ? Color.Green : (texts[1].Equals("Red") ? Color.Red : Color.White);
|
||||
lvi.UseItemStyleForSubItems = false;
|
||||
lvi.SubItems.Add(texts[0]);
|
||||
lvi.SubItems[lvi.SubItems.Count - 1].BackColor = color;
|
||||
}
|
||||
else
|
||||
{
|
||||
lvi.SubItems.Add(string.Empty);
|
||||
}
|
||||
}
|
||||
}
|
||||
lview.Items.Add(lvi);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user