DB 3.6 -> 3.7, PulsesPerLtrAux added to WaterMeterData and to Results items, MainSeqUtils and ProcedureDlg changes, ver. 3.7.2088

This commit is contained in:
Milan Hanajik
2023-08-17 19:57:58 +02:00
parent bc0de96ad9
commit eaf60f3292
10 changed files with 133 additions and 34 deletions
+55 -7
View File
@@ -271,14 +271,60 @@ namespace TBF.UI.Procedures
///----------------
/// Create a control for the water meters and add it to the list.
IList<IComponent> waterMeters = new List<IComponent>();
foreach (var cmpnt in TbfComponents)
{
if (cmpnt is IWaterMeter) waterMeters.Add(cmpnt);
}
int wmsCount;
int toBeDisplayedWMsCount;
switch (procedure.MetersKind)
{
default:
case MetersKind.Single:
wmsCount = Data.WMsCount;
toBeDisplayedWMsCount = Data.WMsCount;
break;
case MetersKind.Combined:
wmsCount = Data.CompoundWMsCount;
toBeDisplayedWMsCount = 2 * Data.CompoundWMsCount;
break;
case MetersKind.HeatMeter:
wmsCount = Data.WMsCount;
toBeDisplayedWMsCount = 2 * Data.WMsCount;
break;
}
{
var newCtrl = new ProcedureParamsCtrl(this, waterMeters, false);
IList<string> names = new List<string>();
for (int wmNr1 = 1; wmNr1 <= wmsCount; wmNr1++)
{
switch (procedure.MetersKind)
{
default:
case MetersKind.Single:
names.Add(wmNr1.ToString());
break;
case MetersKind.Combined:
names.Add(Strings.Main);
names.Add(Strings.Aux);
break;
case MetersKind.HeatMeter:
names.Add(string.Format("Energy {0}", wmNr1));
names.Add(string.Format("Volume {0}", wmNr1));
break;
}
}
IList<IComponent> waterMeters = new List<IComponent>();
int addedWMsCount = 0;
foreach (var cmpnt in TbfComponents)
{
if (cmpnt is IWaterMeter)
{
waterMeters.Add(cmpnt);
addedWMsCount++;
if (addedWMsCount == toBeDisplayedWMsCount) break;
}
}
var newCtrl = new ProcedureParamsCtrl(this, waterMeters, names);
procedureParamsCtrls.Add(newCtrl);
TabPage newTab = new TabPage(Strings.Water_meters);
@@ -308,13 +354,15 @@ namespace TBF.UI.Procedures
if (usedPath != null)
{
IList<IComponent> cmpntsInMPath = new List<IComponent>();
IList<string> names = new List<string>();
for (int i = 0; i < TBF.Data.WMsCount; i++)
{
IComponent sensor = TbfComponents.FirstOrDefault<IComponent>(x => (x.Cfg.Name.Equals(usedPath.GetSensor(i))));
cmpntsInMPath.Add(sensor);
names.Add((i+1).ToString());
}
var nwCtrl = new ProcedureParamsCtrl(this, cmpntsInMPath, true);
var nwCtrl = new ProcedureParamsCtrl(this, cmpntsInMPath, names);
procedureParamsCtrls.Add(nwCtrl);
TabPage nwTab = new TabPage(usedPathName);