Handling of error conditions in ProcedureDlg (e.g. when sensors are changed and user changes parameters without reopening), ver. 2.18.1096

This commit is contained in:
Milan Hanajik
2018-12-14 11:40:59 +01:00
parent bb8b4a6fd6
commit 9ba3fd34d3
17 changed files with 75 additions and 32 deletions
+5 -1
View File
@@ -60,7 +60,11 @@ namespace Config.Entities
/// <param name="strValue">String representation of the parameter</param> /// <param name="strValue">String representation of the parameter</param>
CfgUpdateFlags UpdateParam(int ix, string strValue); CfgUpdateFlags UpdateParam(int ix, string strValue);
void UpdateEmbeddedDbEntity(); /// <summary>
/// Updates DB entities for related parameters
/// </summary>
/// <returns>true when successful</returns>
bool UpdateEmbeddedDbEntity();
/// <summary> /// <summary>
/// Creates an object copy /// Creates an object copy
@@ -215,9 +215,9 @@ namespace TBF.BenchControl.BenchInfo.Extended
return pars; return pars;
} }
public void UpdateEmbeddedDbEntity() public bool UpdateEmbeddedDbEntity()
{ {
/// Do nothing return true; /// =OK, do nothing
} }
} }
} }
@@ -258,9 +258,9 @@ namespace TBF.BenchControl.BenchInfo.iPerl
return pars; return pars;
} }
public void UpdateEmbeddedDbEntity() public bool UpdateEmbeddedDbEntity()
{ {
/// Do nothing return true; /// =OK, do nothing
} }
} }
} }
@@ -175,9 +175,9 @@ namespace TBF.BenchControl.Elde.TempMeterMeret
return pars; return pars;
} }
public void UpdateEmbeddedDbEntity() public bool UpdateEmbeddedDbEntity()
{ {
/// Do nothing return true; /// =OK, do nothing
} }
} }
} }
+2 -2
View File
@@ -240,9 +240,9 @@ namespace TBF.BenchControl.Hart.Common
return pars; return pars;
} }
public void UpdateEmbeddedDbEntity() public bool UpdateEmbeddedDbEntity()
{ {
/// Do nothing return true; /// =OK, do nothing
} }
} }
} }
@@ -200,9 +200,9 @@ namespace TBF.BenchControl.Hart.Nivotrack
return pars; return pars;
} }
public void UpdateEmbeddedDbEntity() public bool UpdateEmbeddedDbEntity()
{ {
/// Do nothing return true; /// =OK, do nothing
} }
} }
} }
@@ -137,9 +137,9 @@ namespace TBF.BenchControl.Modbus.UltrasoundLevelMeter
return pars; return pars;
} }
public void UpdateEmbeddedDbEntity() public bool UpdateEmbeddedDbEntity()
{ {
/// Do nothing return true; /// =OK, do nothing
} }
} }
} }
@@ -173,9 +173,9 @@ namespace TBF.BenchControl.Output.FileWriters.IperlLogger
return pars; return pars;
} }
public void UpdateEmbeddedDbEntity() public bool UpdateEmbeddedDbEntity()
{ {
/// Do nothing return true; /// =OK, do nothing
} }
} }
} }
+10 -3
View File
@@ -72,9 +72,15 @@ namespace TBF.BenchControl
} }
} }
public void UpdateEmbeddedDbEntity() /// <summary>
/// Updates DB entities for procedure parameters
/// </summary>
/// <returns>true when successful</returns>
public bool UpdateEmbeddedDbEntity()
{ {
using (var writer = new StringWriter()) if (procedureParamsEntity == null) return false;
using (var writer = new StringWriter())
{ {
/// Serialize this class and update the entity /// Serialize this class and update the entity
GetSerializer().Serialize(writer, this); GetSerializer().Serialize(writer, this);
@@ -82,7 +88,8 @@ namespace TBF.BenchControl
procedureParamsEntity.CmpntName = componentName; procedureParamsEntity.CmpntName = componentName;
procedureParamsEntity.Procedure = procedure; procedureParamsEntity.Procedure = procedure;
} }
} return true;
}
public virtual string ParamName(int i) { return string.Empty; } public virtual string ParamName(int i) { return string.Empty; }
+8 -1
View File
@@ -73,8 +73,14 @@ namespace TBF.BenchControl
} }
} }
public void UpdateEmbeddedDbEntity() /// <summary>
/// Updates DB entities for test parameters
/// </summary>
/// <returns>true when successful</returns>
public bool UpdateEmbeddedDbEntity()
{ {
if (testParamsEntity == null) return false;
using (var writer = new StringWriter()) using (var writer = new StringWriter())
{ {
/// Serialize this class and update the entity /// Serialize this class and update the entity
@@ -83,6 +89,7 @@ namespace TBF.BenchControl
testParamsEntity.CmpntName = componentName; testParamsEntity.CmpntName = componentName;
testParamsEntity.Test = test; testParamsEntity.Test = test;
} }
return true;
} }
public virtual string ParamName(int i) { return string.Empty; } public virtual string ParamName(int i) { return string.Empty; }
+2 -2
View File
@@ -1759,8 +1759,8 @@ namespace TBF
case ProcedureTabs.Parameters: UpdateFromParametersTab(); break; case ProcedureTabs.Parameters: UpdateFromParametersTab(); break;
} }
foreach (var ctrl in testParamsCtrls) ctrl.UpdateAll(); foreach (var ctrl in testParamsCtrls) if (!ctrl.UpdateAll()) MessageBox.Show(string.Format(Strings.Error_saving_parameters_of_0, ctrl.Name));
foreach (var ctrl in procedureParamsCtrls) ctrl.UpdateAll(); foreach (var ctrl in procedureParamsCtrls) if (!ctrl.UpdateAll()) MessageBox.Show(string.Format(Strings.Error_saving_parameters_of_0, ctrl.Name));
if (usedNames != null && usedNames.Contains(LoadedProcedure.Name)) if (usedNames != null && usedNames.Contains(LoadedProcedure.Name))
{ {
+2 -2
View File
@@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
// Build Number // Build Number
// Revision // Revision
// //
[assembly: AssemblyVersion("2.18.1094.0")] [assembly: AssemblyVersion("2.18.1096.0")]
[assembly: AssemblyFileVersion("2.18.1094.0")] [assembly: AssemblyFileVersion("2.18.1096.0")]
+9
View File
@@ -1518,6 +1518,15 @@ namespace TBF.Resources {
} }
} }
/// <summary>
/// Looks up a localized string similar to Error saving parameters of {0}.
/// </summary>
internal static string Error_saving_parameters_of_0 {
get {
return ResourceManager.GetString("Error_saving_parameters_of_0", resourceCulture);
}
}
/// <summary> /// <summary>
/// Looks up a localized string similar to Error while creating the database. Reason: . /// Looks up a localized string similar to Error while creating the database. Reason: .
/// </summary> /// </summary>
+6 -3
View File
@@ -898,13 +898,13 @@
<value>Zastavení průtoku před zkouškou s pevným startem</value> <value>Zastavení průtoku před zkouškou s pevným startem</value>
</data> </data>
<data name="SupressWMTrills" xml:space="preserve"> <data name="SupressWMTrills" xml:space="preserve">
<value>Potlačit WM vibrace</value> <value>Potlačit vibrace vodoměru</value>
</data> </data>
<data name="Switching_flow_detection" xml:space="preserve"> <data name="Switching_flow_detection" xml:space="preserve">
<value>Přepínání detekce průtoku</value> <value>Detekce přepínacího průtoku</value>
</data> </data>
<data name="Switching_Points" xml:space="preserve"> <data name="Switching_Points" xml:space="preserve">
<value>Spínací body</value> <value>Přepínací body</value>
</data> </data>
<data name="T_div" xml:space="preserve"> <data name="T_div" xml:space="preserve">
<value>T div</value> <value>T div</value>
@@ -1353,4 +1353,7 @@
<data name="Side" xml:space="preserve"> <data name="Side" xml:space="preserve">
<value>Strana</value> <value>Strana</value>
</data> </data>
<data name="Error_saving_parameters_of_0" xml:space="preserve">
<value>Chyba při ukládání parametrů {0}</value>
</data>
</root> </root>
+3
View File
@@ -1906,4 +1906,7 @@
<data name="Side" xml:space="preserve"> <data name="Side" xml:space="preserve">
<value>Side</value> <value>Side</value>
</data> </data>
<data name="Error_saving_parameters_of_0" xml:space="preserve">
<value>Error saving parameters of {0}</value>
</data>
</root> </root>
+8 -3
View File
@@ -201,14 +201,19 @@ namespace TBF.UiControls
listViewEx.Items.Add(lvi); listViewEx.Items.Add(lvi);
} }
public void UpdateAll() public bool UpdateAll()
{ {
if (!unlocked) return; if (!unlocked) return false;
foreach (ListViewItem lvi in listViewEx.Items) foreach (ListViewItem lvi in listViewEx.Items)
{ {
if (lvi.Tag is IParamsProvider) (lvi.Tag as IParamsProvider).UpdateEmbeddedDbEntity(); if (lvi.Tag is IParamsProvider)
{
if (!(lvi.Tag as IParamsProvider).UpdateEmbeddedDbEntity()) return false;
}
} }
return true;
} }
} }
} }
+8 -3
View File
@@ -239,14 +239,19 @@ namespace TBF.UiControls
} }
} }
public void UpdateAll() public bool UpdateAll()
{ {
if (!unlocked) return; if (!unlocked) return false;
foreach (ListViewItem lvi in listViewEx.Items) foreach (ListViewItem lvi in listViewEx.Items)
{ {
if (lvi.Tag is IParamsProvider) (lvi.Tag as IParamsProvider).UpdateEmbeddedDbEntity(); if (lvi.Tag is IParamsProvider)
{
if (!(lvi.Tag as IParamsProvider).UpdateEmbeddedDbEntity()) return false;
}
} }
return true;
} }
} }
} }