Events, EventViewer, Common prjs, UI.EventLogs, UI.Calendar, EventTriggers, GetCalendarEvents() in WT/I.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
///
|
||||
/// Copyright (c) 2013-2019 Sensus Slovensko a.s.
|
||||
/// Copyright (c) 2013-2020 Sensus Slovensko a.s.
|
||||
///
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
@@ -1463,56 +1463,46 @@ namespace TBF.BenchControl.Sequences
|
||||
|
||||
//------------------------------------------------------
|
||||
Bridge.OnActivity(this, Strings.Saving_and_printing_results);
|
||||
State savingAndPrintingRslts = State.Create("MainSeq : Saving and printing results");
|
||||
//------------------------------------------------------
|
||||
|
||||
string[] writers = StateMachine.Procedure.ResultsWriter.Split(new char[] { '~' });
|
||||
foreach (var writerName in writers)
|
||||
string[] writers = (StateMachine.Procedure.ResultsWriter != null) ? StateMachine.Procedure.ResultsWriter.Split(new char[] { '~' }) : new string[0];
|
||||
string[] printers = (StateMachine.Procedure.ResultsPrinter != null) ? StateMachine.Procedure.ResultsPrinter.Split(new char[] { '~' }) : new string[0];
|
||||
string[] eventTriggers = (StateMachine.Procedure.EventTriggers != null) ? StateMachine.Procedure.EventTriggers.Split(new char[] { '~' }) : new string[0];
|
||||
string[] rsltProcessors = new string[writers.Length + printers.Length + eventTriggers.Length];
|
||||
writers.CopyTo(rsltProcessors, 0);
|
||||
printers.CopyTo(rsltProcessors, writers.Length);
|
||||
eventTriggers.CopyTo(rsltProcessors, writers.Length + printers.Length);
|
||||
///
|
||||
State savingAndPrintingRslts = State.Create("MainSeq : Saving and printing results");
|
||||
foreach (var rpName in rsltProcessors)
|
||||
{
|
||||
IResultsWriter writer = TbfComponents.FindComponent(writerName) as IResultsWriter;
|
||||
if (writer != null)
|
||||
IResultsProcessor rsltProcessor = TbfComponents.FindComponent(rpName) as IResultsProcessor;
|
||||
if (rsltProcessor != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
savingAndPrintingRslts.AddOperation(writer.WriteResultsOp(ProcessData.BatchRslts.Batch));
|
||||
savingAndPrintingRslts.AddOperation(rsltProcessor.ProcessResultsOp(ProcessData.BatchRslts.Batch));
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
Bridge.OnError(this, string.Format(Strings.Component_0_crashed_Results_not_saved, writerName));
|
||||
log.FatalFormat("FileWriter {0} crashed: {1}", writerName, exc.Message);
|
||||
Bridge.OnError(this, string.Format(Strings.Component_0_crashed_Results_not_saved, rpName));
|
||||
log.FatalFormat("FileWriter {0} crashed: {1}", rpName, exc.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
string[] printers = StateMachine.Procedure.ResultsPrinter.Split(new char[] { '~' });
|
||||
foreach (var printerName in printers)
|
||||
{
|
||||
IResultsPrinter printer = TbfComponents.FindComponent(printerName) as IResultsPrinter;
|
||||
if (printer != null && !printer.SupressPrinting)
|
||||
{
|
||||
try
|
||||
{
|
||||
savingAndPrintingRslts.AddOperation(printer.PrintResultsOp(ProcessData.BatchRslts.Batch));
|
||||
}
|
||||
catch (Exception exc)
|
||||
{
|
||||
Bridge.OnError(this, string.Format(Strings.Component_0_crashed_Results_not_printed, printerName));
|
||||
log.FatalFormat("Printer {0} crashed: {1}", printerName, exc.Message);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
savingAndPrintingRslts.AddOperation(checkUiOp).EnterState();
|
||||
do
|
||||
{
|
||||
savingAndPrintingRslts.AddOperation(checkUiOp)
|
||||
.EnterState();
|
||||
do {
|
||||
e = StateMachine.WaitRunDevsRunOps();
|
||||
if (e.Contains(Event.Error)) goto error;
|
||||
if (e.Contains(Event.UiCmdStop)) goto stop;
|
||||
}
|
||||
while (e.Contains(Event.Busy));
|
||||
|
||||
bool resultsSent = !e.Contains(Event.ResultsNotWritten);
|
||||
///
|
||||
bool resultsSent = !e.Contains(Event.ErrorProcessingResults);
|
||||
ProcessData.BatchRslts.Batch.RsltsSent = resultsSent;
|
||||
|
||||
|
||||
///
|
||||
/// Save results to 'Results' MySQL database
|
||||
///
|
||||
|
||||
Reference in New Issue
Block a user