Bug fix : Purging sequence is executed after cycle selection after a STOP in the previous evacuation sequence, ver. 2.18.1207
This commit is contained in:
@@ -1243,7 +1243,7 @@ namespace TBF.BenchControl.Sequences
|
||||
ProcessData.BatchRslts.Batch.RsltsSent = resultsSent;
|
||||
|
||||
///
|
||||
/// Save results to the built in 'Results' database
|
||||
/// Save results to 'Results' MySQL database
|
||||
///
|
||||
Results.DB.SaveNewBatch(ProcessData.BatchRslts.Batch);
|
||||
|
||||
@@ -1268,18 +1268,16 @@ namespace TBF.BenchControl.Sequences
|
||||
/// Evacuation is similar to 'Abort session' (no results are saved), but the evacuation is done as well.
|
||||
|
||||
StateMachine.ControlBoard.ManualUIAllowed = true;
|
||||
Event evacRetv = DoEvacuation(purgeEnd);
|
||||
Bridge.OnProcedureCompleted(this, new ProcedureCompletedEventArgs(StateMachine.Procedure));
|
||||
|
||||
switch (DoEvacuation(purgeEnd))
|
||||
switch (evacRetv)
|
||||
{
|
||||
case Event.Error: goto error;
|
||||
case Event.UiCmdStop: goto stop;
|
||||
default: break;
|
||||
default: goto select_procedure;
|
||||
}
|
||||
|
||||
Bridge.OnProcedureCompleted(this, new ProcedureCompletedEventArgs(StateMachine.Procedure));
|
||||
|
||||
goto select_procedure;
|
||||
|
||||
|
||||
stop_within_cycle:
|
||||
//--------------------------------
|
||||
@@ -1891,14 +1889,18 @@ namespace TBF.BenchControl.Sequences
|
||||
}
|
||||
|
||||
//--------------------------------------------------------
|
||||
benchFilled = false; /// because evacuation sequence started
|
||||
///
|
||||
switch (Transition(purgeEnd, TransitionContext.PurgeEnd))
|
||||
{
|
||||
case Event.Error:
|
||||
if (simultWithEvacuationCount > 0) CloseIPerlCommForm();
|
||||
return Event.Error;
|
||||
|
||||
case Event.UiCmdStop:
|
||||
if (simultWithEvacuationCount > 0) CloseIPerlCommForm();
|
||||
return Event.UiCmdStop;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
@@ -1932,7 +1934,6 @@ namespace TBF.BenchControl.Sequences
|
||||
modelessDlg = null;
|
||||
}
|
||||
|
||||
benchFilled = false;
|
||||
Bridge.Bench2UI(ButtonsEtc.ShowBenchEmpty);
|
||||
|
||||
return Event.Done;
|
||||
|
||||
@@ -380,11 +380,10 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication.iPerlHead
|
||||
public void Initialize()
|
||||
{
|
||||
ClearData();
|
||||
optoSerialPortParsingEnabled = false;
|
||||
|
||||
if (DebugLevel == DebugMode.Normal)
|
||||
{
|
||||
optoSerialPortParsingEnabled = false;
|
||||
|
||||
/// Allocate memory for opto-data from iPerl
|
||||
optoData = new OptoTelegramRaw[MaxOptoDataCount];
|
||||
for (int i = 0; i < MaxOptoDataCount; i++) optoData[i] = new OptoTelegramRaw();
|
||||
@@ -471,10 +470,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication.iPerlHead
|
||||
{
|
||||
try
|
||||
{
|
||||
if (optoSerialPortParsingEnabled)
|
||||
ReadOptoData(OptoState.Read);
|
||||
else
|
||||
ReadOptoData(OptoState.Flush);
|
||||
ReadOptoData(optoSerialPortParsingEnabled ? OptoState.Read : OptoState.Flush);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
@@ -556,7 +552,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication.iPerlHead
|
||||
TestEndTelegramIx = 0;
|
||||
|
||||
/// File name is: PCB_AA_BB_HH_MI_SS..txt
|
||||
string wmPosition = Name.Substring(5);
|
||||
string wmPosition = Name.Substring(5); /// WMPosition is extracted from a component name in form 'iPerl#'
|
||||
if (wmPosition.Length == 1) wmPosition = "0" + wmPosition;
|
||||
|
||||
SensusTestInfo[] testInfos = Sequences.ProcessData.CompleteTestInfos;
|
||||
|
||||
@@ -29,5 +29,5 @@ using System.Runtime.InteropServices;
|
||||
// Build Number
|
||||
// Revision
|
||||
//
|
||||
[assembly: AssemblyVersion("2.18.1206.0")]
|
||||
[assembly: AssemblyFileVersion("2.18.1206.0")]
|
||||
[assembly: AssemblyVersion("2.18.1207.0")]
|
||||
[assembly: AssemblyFileVersion("2.18.1207.0")]
|
||||
|
||||
Reference in New Issue
Block a user