<Fix>: Incorrect cycle resume behavior after Stop and Start, increase revision to 3.9.3134.114

Cause:
1. When the Cycle was stopped during the second or a later test and then resumed using the Start Test button, the resume confirmation was handled incorrectly. After selecting to continue, the sequence restarted from the first test instead of continuing from the interrupted test.
2. Increase revision to 3.9.3134.114

Solution:
1. Corrected the Cycle resume logic so that, after confirming continuation, the sequence resumes from the interrupted test instead of restarting from the first test.
2. Increased revision to 3.9.3134.114
This commit is contained in:
Marek Frniak 2026-08-24 14:25:19 +02:00
parent 267159e0a9
commit f051d51ae0
3 changed files with 38 additions and 17 deletions

View File

@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
// Build Number // Build Number
// Revision // Revision
// //
[assembly: AssemblyVersion("3.9.3134.113")] [assembly: AssemblyVersion("3.9.3134.114")]
[assembly: AssemblyFileVersion("3.9.3134.113")] [assembly: AssemblyFileVersion("3.9.3134.114")]

View File

@ -863,6 +863,10 @@ namespace TBF.Rig.Sequences
/// ///
if (selection == Selection.RestOfCycle) /// ... otherwise if (selection == Selection.RestOfCycle) /// ... otherwise
{ {
log.InfoFormat(
"RestOfCycle requested from selectedTestName={0}",
selectedTestName);
for (int i = 0; i < StateMachine.TestInstances.Length; i++) for (int i = 0; i < StateMachine.TestInstances.Length; i++)
{ {
if (selectedTestName == StateMachine.TestInstances[i].Name) if (selectedTestName == StateMachine.TestInstances[i].Name)
@ -974,21 +978,38 @@ namespace TBF.Rig.Sequences
nextTransitionBefore = null; nextTransitionBefore = null;
} }
/// Fetch paths and transitions of this test /// Fetch paths and transitions of this test
TestInstance testInst = StateMachine.TestInstances[currentTestIx]; TestInstance testInst = StateMachine.TestInstances[currentTestIx];
TBF.Rig.Generic.IComponent testMethodComp = TbfComponents.FindComponent(testInst.Test.Method);
/// Remember the current test so that "Continue in the cycle"
/// can restart from the interrupted test.
selectedTestName = testInst.Name;
log.InfoFormat(
"Cycle current test: index={0}, name={1}, selectedTestName updated",
currentTestIx,
selectedTestName);
TBF.Rig.Generic.IComponent testMethodComp =
TbfComponents.FindComponent(testInst.Test.Method);
string errorMsg; string errorMsg;
if (!StateMachine.GetPaths(testInst.Test, (StateMachine.Procedure.MetersKind == MetersKind.HeatMeter), if (!StateMachine.GetPaths(testInst.Test,
out inPath, out benchPath, out outPath, out sensPath, (StateMachine.Procedure.MetersKind == MetersKind.HeatMeter),
out inPath,
out benchPath,
out outPath,
out sensPath,
out heatMetersPath, out heatMetersPath,
out transitionBefore, out transitionBetween, out transitionAfter, out transitionBefore,
out transitionBetween,
out transitionAfter,
out errorMsg)) out errorMsg))
{ {
Bridge.OnError(this, errorMsg); Bridge.OnError(this, errorMsg);
goto select_cycle_or_test; goto select_cycle_or_test;
} }
/// Update format for the water mass /// Update format for the water mass
if (outPath != null && outPath.Scale != null && !string.IsNullOrEmpty(outPath.Scale.Format)) if (outPath != null && outPath.Scale != null && !string.IsNullOrEmpty(outPath.Scale.Format))
{ {
StartMass.Format = outPath.Scale.Format; StartMass.Format = outPath.Scale.Format;

View File

@ -739,7 +739,7 @@
<value>processTabPageCtrl</value> <value>processTabPageCtrl</value>
</data> </data>
<data name="&gt;&gt;processTabPageCtrl.Type" xml:space="preserve"> <data name="&gt;&gt;processTabPageCtrl.Type" xml:space="preserve">
<value>TBF.UI.Process.ProcessTabPageCtrl, TBF, Version=3.9.3001.1, Culture=neutral, PublicKeyToken=null</value> <value>TBF.UI.Process.ProcessTabPageCtrl, TBF, Version=3.9.3134.114, Culture=neutral, PublicKeyToken=null</value>
</data> </data>
<data name="&gt;&gt;processTabPageCtrl.Parent" xml:space="preserve"> <data name="&gt;&gt;processTabPageCtrl.Parent" xml:space="preserve">
<value>processTabPage</value> <value>processTabPage</value>
@ -817,7 +817,7 @@
<value>resultsTabPageCtrl</value> <value>resultsTabPageCtrl</value>
</data> </data>
<data name="&gt;&gt;resultsTabPageCtrl.Type" xml:space="preserve"> <data name="&gt;&gt;resultsTabPageCtrl.Type" xml:space="preserve">
<value>TBF.UI.ResultsMI.ResultsTabPageCtrl, TBF, Version=3.9.3001.1, Culture=neutral, PublicKeyToken=null</value> <value>TBF.UI.ResultsMI.ResultsTabPageCtrl, TBF, Version=3.9.3134.112, Culture=neutral, PublicKeyToken=null</value>
</data> </data>
<data name="&gt;&gt;resultsTabPageCtrl.Parent" xml:space="preserve"> <data name="&gt;&gt;resultsTabPageCtrl.Parent" xml:space="preserve">
<value>resultsTabPage</value> <value>resultsTabPage</value>
@ -871,7 +871,7 @@
<value>graphsTabPageCtrl</value> <value>graphsTabPageCtrl</value>
</data> </data>
<data name="&gt;&gt;graphsTabPageCtrl.Type" xml:space="preserve"> <data name="&gt;&gt;graphsTabPageCtrl.Type" xml:space="preserve">
<value>TBF.UI.Graphs.GraphsTabPageCtrl, TBF, Version=3.9.3001.1, Culture=neutral, PublicKeyToken=null</value> <value>TBF.UI.Graphs.GraphsTabPageCtrl, TBF, Version=3.9.3134.112, Culture=neutral, PublicKeyToken=null</value>
</data> </data>
<data name="&gt;&gt;graphsTabPageCtrl.Parent" xml:space="preserve"> <data name="&gt;&gt;graphsTabPageCtrl.Parent" xml:space="preserve">
<value>graphsTabPage</value> <value>graphsTabPage</value>
@ -925,7 +925,7 @@
<value>eventLogsTabPageCtrl</value> <value>eventLogsTabPageCtrl</value>
</data> </data>
<data name="&gt;&gt;eventLogsTabPageCtrl.Type" xml:space="preserve"> <data name="&gt;&gt;eventLogsTabPageCtrl.Type" xml:space="preserve">
<value>TBF.UI.EventLogs.EventLogsTabPageCtrl, TBF, Version=3.9.3001.1, Culture=neutral, PublicKeyToken=null</value> <value>TBF.UI.EventLogs.EventLogsTabPageCtrl, TBF, Version=3.9.3134.112, Culture=neutral, PublicKeyToken=null</value>
</data> </data>
<data name="&gt;&gt;eventLogsTabPageCtrl.Parent" xml:space="preserve"> <data name="&gt;&gt;eventLogsTabPageCtrl.Parent" xml:space="preserve">
<value>eventLogsTabPage</value> <value>eventLogsTabPage</value>
@ -979,7 +979,7 @@
<value>calendarTabPageCtrl</value> <value>calendarTabPageCtrl</value>
</data> </data>
<data name="&gt;&gt;calendarTabPageCtrl.Type" xml:space="preserve"> <data name="&gt;&gt;calendarTabPageCtrl.Type" xml:space="preserve">
<value>TBF.UI.Calendar.CalendarTabPageCtrl, TBF, Version=3.9.3001.1, Culture=neutral, PublicKeyToken=null</value> <value>TBF.UI.Calendar.CalendarTabPageCtrl, TBF, Version=3.9.3134.112, Culture=neutral, PublicKeyToken=null</value>
</data> </data>
<data name="&gt;&gt;calendarTabPageCtrl.Parent" xml:space="preserve"> <data name="&gt;&gt;calendarTabPageCtrl.Parent" xml:space="preserve">
<value>calendarTabPage</value> <value>calendarTabPage</value>
@ -1033,7 +1033,7 @@
<value>picturesTabPageCtrl</value> <value>picturesTabPageCtrl</value>
</data> </data>
<data name="&gt;&gt;picturesTabPageCtrl.Type" xml:space="preserve"> <data name="&gt;&gt;picturesTabPageCtrl.Type" xml:space="preserve">
<value>TBF.UI.Camera.PicturesTabPageCtrl, TBF, Version=3.9.3001.1, Culture=neutral, PublicKeyToken=null</value> <value>TBF.UI.Camera.PicturesTabPageCtrl, TBF, Version=3.9.3134.112, Culture=neutral, PublicKeyToken=null</value>
</data> </data>
<data name="&gt;&gt;picturesTabPageCtrl.Parent" xml:space="preserve"> <data name="&gt;&gt;picturesTabPageCtrl.Parent" xml:space="preserve">
<value>picturesTabPage</value> <value>picturesTabPage</value>