S640Communication : Results.entities.WaterMeter.RadioAddress string -> long, optional scanning of serial numbers
This commit is contained in:
parent
5797e97e0f
commit
9aa41338ed
@ -44,7 +44,7 @@ namespace Results.Entities
|
||||
public virtual int Id { get; protected set; }
|
||||
public virtual string SerialNr { get; set; } /// S/N _or_ S/N of the main meter of a compound meter _or_ PCB Number of an iPerl water meter
|
||||
public virtual string SerialNrAux { get; set; } /// S/N of the aux. meter of a compound meter _or_ a complete assigned S/N of an iPerl water meter
|
||||
public virtual string RadioAddress { get; set; }
|
||||
public virtual long RadioAddress { get; set; }
|
||||
public virtual string PurchaseOrder { get; set; }
|
||||
public virtual int YearOfProduction { get; set; }
|
||||
public virtual int WMPosition { get; set; } /// 1-based water meter position
|
||||
|
||||
@ -368,7 +368,7 @@ namespace Results
|
||||
|
||||
/// Water meters results
|
||||
AllItems.Add(new WMeterRsltItemSpec(ItemID.Serial_Nr, Strings.sn, Strings.Tooltip_sn, Quantity.String, ItemCategory.MeterResult, (w, t, u, f, p) => FormatStr(f, w.SerialNr)));
|
||||
AllItems.Add(new WMeterRsltItemSpec(ItemID.RadioAddress, Strings.Radio_address, Strings.Tooltip_RA, Quantity.String, ItemCategory.MeterResult, (w, t, u, f, p) => FormatStr(f, w.RadioAddress)));
|
||||
AllItems.Add(new WMeterRsltItemSpec(ItemID.RadioAddress, Strings.Radio_address, Strings.Tooltip_RA, Quantity.String, ItemCategory.MeterResult, (w, t, u, f, p) => FormatStr(f, w.RadioAddress.ToString())));
|
||||
AllItems.Add(new WMeterRsltItemSpec(ItemID.Purchase_order, Strings.PO, Quantity.String, ItemCategory.Other, (w, t, u, f, p) => FormatStr(f, w.PurchaseOrder)));
|
||||
AllItems.Add(new WMeterRsltItemSpec(ItemID.Year_of_production, Strings.Year, Quantity.Number, ItemCategory.Other, (w, t, u, f, p) => FormatInt(f, w.YearOfProduction)));
|
||||
AllItems.Add(new WMeterRsltItemSpec(ItemID.WM_Position, Strings.Pos, Quantity.Number, ItemCategory.Other, (w, t, u, f, p) => FormatInt(f, w.WMPosition)));
|
||||
|
||||
@ -1225,64 +1225,67 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
void SaveOrUpdateMechanicalMeter(OracleConnection conn, Results.Entities.WaterMeter wm, int max_Pruefindex, int hydr_Pruefung)
|
||||
{
|
||||
int idBenutzer = 6; // = wm.Batch.UserNumber;
|
||||
string vt_identnummer = wm.SerialNr.Length > 8 ? wm.SerialNr.Substring(0, 8) : wm.SerialNr;
|
||||
|
||||
if (dbCfg.DebugLevel == DebugMode.Normal)
|
||||
{
|
||||
OracleCommand cmd = new OracleCommand("UPDATE vt_zaehler_pd " +
|
||||
"SET auftragsnummer=:1, vt_identnummer=:2, max_pruefindex=:3, mbus_adr=:4, liegenschafts_nr=:5," +
|
||||
" sekundaere_adr=:6, hydr_pruefung=:7, mark_date=:8, baujahr=:9, eich_jahr=:10, umkarton_nr=:11," +
|
||||
" palette_nr=:12, zaehlernummer=:13, prefix=:14, suffix=:15, z_nr_komplett=:16, id_benutzer=:17 " +
|
||||
"WHERE vt_fernum = :18 AND anbid = :19", conn);
|
||||
"SET max_pruefindex=:1, vt_identnummer=:2, auftragsnummer=:3, vt_baugruppen_nr=:4, mbus_adr=:5, liegenschafts_nr=:6," +
|
||||
" sekundaere_adr=:7, hydr_pruefung=:8, mark_date=:9, baujahr=:10, eich_jahr=:11, umkarton_nr=:12," +
|
||||
" palette_nr=:13, zaehlernummer=:14, prefix=:15, suffix=:16, z_nr_komplett=:17, id_benutzer=:18 " +
|
||||
"WHERE vt_fernum = :19 AND anbid = :20", conn);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.PurchaseOrder }); /// :1
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = "88888888" }); /// :2
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = max_Pruefindex }); /// :3
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// :4 MBUS_ADR
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// :5 LIEGENSCHAFTS_NR
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// :6 Sekundaere_Adr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = hydr_Pruefung }); /// :7
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.TimeStamp, Value = wm.Batch.EndTime }); /// :8
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = YearOfManufacture }); /// :9
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = YearOfManufacture }); /// :10
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// :11 UMKARTON_NR
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// :12 PALETTE_NR
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.AssignedSerialNr }); /// :13
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.Prefix }); /// :14
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.Suffix }); /// :15
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.CompleteSerialNr }); /// :16
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = idBenutzer }); /// :17
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr }); /// :18
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_Producer }); /// :19
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = max_Pruefindex }); /// 1 max_pruefindex
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = vt_identnummer }); /// 2 vt_identnummer
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.PurchaseOrder }); /// 3 auftragsnummer
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNrAux }); /// 4 vt_baugruppen_nr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// 5 mbus_adr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// 6 liegenschafts_nr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Convert.ToInt32(wm.RadioAddress) }); /// 7 sekundaere_adr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = hydr_Pruefung }); /// 8
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.TimeStamp, Value = wm.Batch.EndTime }); /// 9
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = YearOfManufacture }); /// 10
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = YearOfManufacture }); /// 11
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// 12 umkarton_nr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// 13 palette_nr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.AssignedSerialNr }); /// 14
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.Prefix }); /// 15
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.Suffix }); /// 16
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.CompleteSerialNr }); /// 17
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = idBenutzer }); /// 18
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr }); /// 19
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_Producer }); /// 20
|
||||
|
||||
int updatedRows = cmd.ExecuteNonQuery();
|
||||
int insertedRows = 0;
|
||||
|
||||
if (updatedRows == 0)
|
||||
{
|
||||
cmd = new OracleCommand("INSERT INTO vt_zaehler_pd(auftragsnummer, vt_identnummer, vt_fernum, max_pruefindex," +
|
||||
cmd = new OracleCommand("INSERT INTO vt_zaehler_pd(vt_fernum, max_pruefindex, vt_identnummer, auftragsnummer, vt_baugruppen_nr," +
|
||||
" mbus_adr, liegenschafts_nr, sekundaere_adr, hydr_pruefung, mark_date, baujahr, eich_jahr," +
|
||||
" umkarton_nr, palette_nr, zaehlernummer, prefix, suffix, z_nr_komplett, anbid, id_benutzer) " +
|
||||
"VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11, :12, :13, :14, :15, :16, :17, :18, :19)", conn);
|
||||
"VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11, :12, :13, :14, :15, :16, :17, :18, :19, :20)", conn);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.PurchaseOrder }); /// :1
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = "88888888" }); /// :2
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr }); /// :3
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = max_Pruefindex }); /// :4
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// :5 MBUS_ADR
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// :6 LIEGENSCHAFTS_NR
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// :7 Sekundaere_Adr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = hydr_Pruefung }); /// :8
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.TimeStamp, Value = wm.Batch.EndTime }); /// :9
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = YearOfManufacture }); /// :10
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = YearOfManufacture }); /// :11
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// :12 UMKARTON_NR
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// :13 PALETTE_NR
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.AssignedSerialNr }); /// :14
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.Prefix }); /// :15
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.Suffix }); /// :16
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.CompleteSerialNr }); /// :17
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_Producer }); /// :18
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = idBenutzer }); /// :19
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr }); /// 1 vt_fernum
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = max_Pruefindex }); /// 2 max_pruefindex
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = vt_identnummer }); /// 3 vt_identnummer
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.PurchaseOrder }); /// 4 auftragsnummer
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNrAux }); /// 5 vt_baugruppen_nr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// 6 mbus_adr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// 7 liegenschafts_nr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Convert.ToInt32(wm.RadioAddress) }); /// 8 sekundaere_adr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = hydr_Pruefung }); /// 9
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.TimeStamp, Value = wm.Batch.EndTime }); /// 10
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = YearOfManufacture }); /// 11
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = YearOfManufacture }); /// 12
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// 13 umkarton_nr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// 14 palette_nr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.AssignedSerialNr }); /// 15
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.Prefix }); /// 16
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.Suffix }); /// 17
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.CompleteSerialNr }); /// 18
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_Producer }); /// 19
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = idBenutzer }); /// 20
|
||||
|
||||
insertedRows = cmd.ExecuteNonQuery();
|
||||
|
||||
@ -1447,6 +1450,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
"prefix, suffix, zaehlwerk, erfasst_am, sollende, zusatztext " +
|
||||
"FROM vt_auftrag_pd " +
|
||||
"WHERE produktion_anbid=:1 AND status='NEU' AND produktion_usestate=0", connection);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_Producer });
|
||||
OracleDataReader dr = cmd.ExecuteReader();
|
||||
|
||||
@ -1493,6 +1497,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
"prefix, suffix, zaehlwerk, erfasst_am, sollende, zusatztext " +
|
||||
"FROM vt_auftrag_pd " +
|
||||
"WHERE produktion_anbid=:1 AND status='AKTIV' AND produktion_usestate=0", connection);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_Producer });
|
||||
dr = cmd.ExecuteReader();
|
||||
|
||||
|
||||
@ -1,4 +1,7 @@
|
||||
using System;
|
||||
///
|
||||
/// Copyright (c) 2021 Sensus Slovensko a.s.
|
||||
///
|
||||
using System;
|
||||
|
||||
namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
{
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
///
|
||||
/// Copyright (c) 2021 Sensus Slovensko a.s.
|
||||
///
|
||||
using System;
|
||||
|
||||
namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
{
|
||||
@ -9,5 +10,6 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
int OptoDataTimeout { get; }
|
||||
string FileExchangePath { get; }
|
||||
int FileExchangeTimeout { get; }
|
||||
bool EnterSerialNumbers { get; }
|
||||
}
|
||||
}
|
||||
|
||||
@ -45,9 +45,11 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
/// Start
|
||||
WatchOptoHeads,
|
||||
SaveStartPro,
|
||||
EnterSNsAndAwaitResponseToStartPro,
|
||||
AwaitResponseToStartPro,
|
||||
|
||||
/// End
|
||||
EnterSNs,
|
||||
SaveEndePro,
|
||||
AwaitResponseToEndePro,
|
||||
ConfirmError,
|
||||
@ -71,9 +73,11 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
|
||||
int textBoxesCount;
|
||||
///
|
||||
bool[] enabledInConfiguration;
|
||||
Label[] labels;
|
||||
PictureBox[] pictures;
|
||||
TextBox[] messages;
|
||||
TextBox[] serialNumbers;
|
||||
CheckBoxImage[] checkBoxes;
|
||||
|
||||
int[] ckbIndex; /// Initialized by ShuffleTextBoxes() ... to be used in the future in case of test benches with two lines
|
||||
@ -89,6 +93,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
int optoDataTimeout;
|
||||
string fileExchangePath;
|
||||
int fileExchangeTimeout;
|
||||
bool enterSerialNumbers;
|
||||
ProcParams pPars;
|
||||
///
|
||||
IList<S640Activity> activities;
|
||||
@ -117,32 +122,41 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
|
||||
labels = new Label[UIBoxesCount]
|
||||
{
|
||||
wmLabel1, wmLabel2, wmLabel3, wmLabel4, wmLabel5, wmLabel6, wmLabel7,
|
||||
wmLabel8, wmLabel9, wmLabel10, wmLabel11, wmLabel12, wmLabel13, wmLabel14,
|
||||
wmLabel15, wmLabel16, wmLabel17, wmLabel18, wmLabel19, wmLabel20, wmLabel21,
|
||||
wmLabel22, wmLabel23, wmLabel24, wmLabel25, wmLabel26, wmLabel27, wmLabel28,
|
||||
wmLabel29, wmLabel30, wmLabel31, wmLabel32, wmLabel33, wmLabel34, wmLabel35,
|
||||
wmLabel36, wmLabel37, wmLabel38, wmLabel39, wmLabel40,
|
||||
wmLabel1, wmLabel2, wmLabel3, wmLabel4, wmLabel5, wmLabel6, wmLabel7, wmLabel8,
|
||||
wmLabel9, wmLabel10, wmLabel11, wmLabel12, wmLabel13, wmLabel14, wmLabel15, wmLabel16,
|
||||
wmLabel17, wmLabel18, wmLabel19, wmLabel20, wmLabel21, wmLabel22, wmLabel23, wmLabel24,
|
||||
wmLabel25, wmLabel26, wmLabel27, wmLabel28, wmLabel29, wmLabel30, wmLabel31, wmLabel32,
|
||||
wmLabel33, wmLabel34, wmLabel35, wmLabel36, wmLabel37, wmLabel38, wmLabel39, wmLabel40,
|
||||
};
|
||||
pictures = new PictureBox[UIBoxesCount]
|
||||
{
|
||||
pictureBox1, pictureBox2, pictureBox3, pictureBox4, pictureBox5, pictureBox6,
|
||||
pictureBox7, pictureBox8, pictureBox9, pictureBox10, pictureBox11, pictureBox12,
|
||||
pictureBox13, pictureBox14, pictureBox15, pictureBox16, pictureBox17, pictureBox18,
|
||||
pictureBox19, pictureBox20, pictureBox21, pictureBox22, pictureBox23, pictureBox24,
|
||||
pictureBox25, pictureBox26, pictureBox27, pictureBox28, pictureBox29, pictureBox30,
|
||||
pictureBox31, pictureBox32, pictureBox33, pictureBox34, pictureBox35, pictureBox36,
|
||||
pictureBox37, pictureBox38, pictureBox39, pictureBox40,
|
||||
pictureBox1, pictureBox2, pictureBox3, pictureBox4, pictureBox5,
|
||||
pictureBox6, pictureBox7, pictureBox8, pictureBox9, pictureBox10,
|
||||
pictureBox11, pictureBox12, pictureBox13, pictureBox14, pictureBox15,
|
||||
pictureBox16, pictureBox17, pictureBox18, pictureBox19, pictureBox20,
|
||||
pictureBox21, pictureBox22, pictureBox23, pictureBox24, pictureBox25,
|
||||
pictureBox26, pictureBox27, pictureBox28, pictureBox29, pictureBox30,
|
||||
pictureBox31, pictureBox32, pictureBox33, pictureBox34, pictureBox35,
|
||||
pictureBox36, pictureBox37, pictureBox38, pictureBox39, pictureBox40,
|
||||
};
|
||||
messages = new TextBox[UIBoxesCount]
|
||||
{
|
||||
wmTextBox1, wmTextBox2, wmTextBox3, wmTextBox4, wmTextBox5, wmTextBox6,
|
||||
wmTextBox7, wmTextBox8, wmTextBox9, wmTextBox10, wmTextBox11, wmTextBox12,
|
||||
wmTextBox13, wmTextBox14, wmTextBox15, wmTextBox16, wmTextBox17, wmTextBox18,
|
||||
wmTextBox19, wmTextBox20, wmTextBox21, wmTextBox22, wmTextBox23, wmTextBox24,
|
||||
wmTextBox25, wmTextBox26, wmTextBox27, wmTextBox28, wmTextBox29, wmTextBox30,
|
||||
wmTextBox31, wmTextBox32, wmTextBox33, wmTextBox34, wmTextBox35, wmTextBox36,
|
||||
wmTextBox37, wmTextBox38, wmTextBox39, wmTextBox40,
|
||||
fromOptoTextBox1, fromOptoTextBox2, fromOptoTextBox3, fromOptoTextBox4, fromOptoTextBox5,
|
||||
fromOptoTextBox6, fromOptoTextBox7, fromOptoTextBox8, fromOptoTextBox9, fromOptoTextBox10,
|
||||
fromOptoTextBox11, fromOptoTextBox12, fromOptoTextBox13, fromOptoTextBox14, fromOptoTextBox15,
|
||||
fromOptoTextBox16, fromOptoTextBox17, fromOptoTextBox18, fromOptoTextBox19, fromOptoTextBox20,
|
||||
fromOptoTextBox21, fromOptoTextBox22, fromOptoTextBox23, fromOptoTextBox24, fromOptoTextBox25,
|
||||
fromOptoTextBox26, fromOptoTextBox27, fromOptoTextBox28, fromOptoTextBox29, fromOptoTextBox30,
|
||||
fromOptoTextBox31, fromOptoTextBox32, fromOptoTextBox33, fromOptoTextBox34, fromOptoTextBox35,
|
||||
fromOptoTextBox36, fromOptoTextBox37, fromOptoTextBox38, fromOptoTextBox39, fromOptoTextBox40,
|
||||
};
|
||||
serialNumbers = new TextBox[UIBoxesCount]
|
||||
{
|
||||
textBox1, textBox2, textBox3, textBox4, textBox5, textBox6, textBox7, textBox8,
|
||||
textBox9, textBox10, textBox11, textBox12, textBox13, textBox14, textBox15, textBox16,
|
||||
textBox17, textBox18, textBox19, textBox20, textBox21, textBox22, textBox23, textBox24,
|
||||
textBox25, textBox26, textBox27, textBox28, textBox29, textBox30, textBox31, textBox32,
|
||||
textBox33, textBox34, textBox35, textBox36, textBox37, textBox38, textBox39, textBox40,
|
||||
};
|
||||
checkBoxes = new CheckBoxImage[UIBoxesCount]
|
||||
{
|
||||
@ -180,6 +194,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
optoDataTimeout = config.OptoDataTimeout;
|
||||
fileExchangePath = string.IsNullOrEmpty(config.FileExchangePath) ? string.Empty : config.FileExchangePath;
|
||||
fileExchangeTimeout = config.FileExchangeTimeout;
|
||||
enterSerialNumbers = config.EnterSerialNumbers;
|
||||
this.tests = tests;
|
||||
this.pPars = procParams as ProcParams;
|
||||
|
||||
@ -208,6 +223,12 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
WaterMetersCount = ProcessData.RegisterReaders.Length;
|
||||
ShuffleTextBoxes(WaterMetersCount, ProcessData.LineSize);
|
||||
|
||||
enabledInConfiguration = new bool[textBoxesCount];
|
||||
for (int i = 0; i < textBoxesCount; i++)
|
||||
{
|
||||
enabledInConfiguration[i] = (optoHeads[i] != null) && ((Program.LocalSettings.OptoHeadsEnabled & (1L << i)) != 0L);
|
||||
}
|
||||
|
||||
formCompleted = false;
|
||||
StartForceCloseHandler();
|
||||
}
|
||||
@ -236,6 +257,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
labels[dest] = labels[l * lineSize + l * gap + i];
|
||||
pictures[dest] = pictures[l * lineSize + l * gap + i];
|
||||
messages[dest] = messages[l * lineSize + l * gap + i];
|
||||
serialNumbers[dest] = serialNumbers[l * lineSize + l * gap + i];
|
||||
checkBoxes[dest] = checkBoxes[l * lineSize + l * gap + i];
|
||||
ckbIndex[l * lineSize + l * gap + i] = dest;
|
||||
dest++;
|
||||
@ -255,15 +277,15 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
///
|
||||
/// Resize this form to fit enabled controls
|
||||
///
|
||||
int xMax = 0;
|
||||
int yMax = 0;
|
||||
for (int i = 0; i < textBoxesCount; i++)
|
||||
{
|
||||
if (messages[i].Left + messages[i].Width > xMax) xMax = messages[i].Left + messages[i].Width;
|
||||
if (messages[i].Top + messages[i].Height > yMax) yMax = messages[i].Top + messages[i].Height;
|
||||
}
|
||||
///Width = xMax + 30;
|
||||
Height = yMax + 50;
|
||||
//int xMax = 0;
|
||||
//int yMax = 0;
|
||||
//for (int i = 0; i < textBoxesCount; i++)
|
||||
//{
|
||||
// if (messages[i].Left + messages[i].Width > xMax) xMax = messages[i].Left + messages[i].Width;
|
||||
// if (messages[i].Top + messages[i].Height > yMax) yMax = messages[i].Top + messages[i].Height;
|
||||
//}
|
||||
/////Width = xMax + 30;
|
||||
//Height = yMax + 50;
|
||||
}
|
||||
|
||||
|
||||
@ -278,14 +300,12 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
Left = (ls.S640CommFormLeft != 0) ? ls.S640CommFormLeft : 150;
|
||||
Top = (ls.S640CommFormTop != 0) ? ls.S640CommFormTop : 150;
|
||||
|
||||
|
||||
///
|
||||
/// Set checkbox states accroding to optoHeads[i].Disabled states
|
||||
///
|
||||
long optoHeadsConfig = Program.LocalSettings.OptoHeadsEnabled;
|
||||
for (int i = 0; i < textBoxesCount; i++)
|
||||
{
|
||||
if ((optoHeadsConfig & (1L << i)) == 0 || optoHeads[i] == null)
|
||||
if (!enabledInConfiguration[i])
|
||||
{
|
||||
/// Opto head is disabled in configuration
|
||||
checkBoxes[i].Checked = false;
|
||||
@ -313,6 +333,14 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
|
||||
/// Reset opto-data indication
|
||||
pictures[i].BackColor = OptoNokColor;
|
||||
|
||||
messages[i].Enabled = true;
|
||||
|
||||
if (enterSerialNumbers)
|
||||
{
|
||||
serialNumbers[i].Visible = enabledInConfiguration[i];
|
||||
serialNumbers[i].Enabled = (activities[currentActivityIx] == S640Activity.End);
|
||||
}
|
||||
}
|
||||
|
||||
startTimeSec = StateMachine.Time;
|
||||
@ -328,8 +356,8 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
|
||||
void Localize()
|
||||
{
|
||||
/// Close/Continue button is localized in other code
|
||||
Text = Strings.Water_Meter_States;
|
||||
closeButton.Text = Strings.CloseBtnText;
|
||||
retryButton.Text = Strings.RetryBtnText;
|
||||
sampleLabel1.Text = Strings.Optical_head_is_placed_correctly;
|
||||
sampleLabel2.Text = Strings.Missing_opto_pulses;
|
||||
@ -338,12 +366,12 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
}
|
||||
|
||||
|
||||
void StartActivity(int activityIx)
|
||||
void StartActivity(int acIx)
|
||||
{
|
||||
startTime = DateTime.Now;
|
||||
activityLabel.Text = activities[activityIx].ToString();
|
||||
currentActivityIx = activityIx;
|
||||
step = (activities[activityIx] == S640Activity.Start) ? Step.WatchOptoHeads : Step.SaveEndePro;
|
||||
activityLabel.Text = activities[acIx].ToString();
|
||||
currentActivityIx = acIx;
|
||||
step = (activities[acIx] == S640Activity.Start) ? Step.WatchOptoHeads : enterSerialNumbers ? Step.EnterSNs : Step.SaveEndePro;
|
||||
|
||||
closeButton.Visible = false;
|
||||
retryButton.Visible = false;
|
||||
@ -365,10 +393,10 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
}
|
||||
|
||||
TBF.UiBridge.TestProgressEventArgs.SetEstimatedTimes(new int[] { 0, 0, 10, 0, 140, 0, 0, 0 });
|
||||
TBF.UiBridge.Bridge.OnTestProgress(null, new TBF.UiBridge.TestProgressEventArgs(tests[activityIx], Progress.JustStarted));
|
||||
TBF.UiBridge.Bridge.OnTestProgress(null, new TBF.UiBridge.TestProgressEventArgs(tests[acIx], Progress.JustStarted));
|
||||
|
||||
sirtDataLogger.InfoFormat(""); /// Makes the log more readable when there is a lot of data
|
||||
sirtDataLogger.WarnFormat("Activity = {0}", activities[activityIx]);
|
||||
sirtDataLogger.WarnFormat("Activity = {0}", activities[acIx]);
|
||||
sirtDataLogger.InfoFormat(""); /// Makes the log more readable when there is a lot of data
|
||||
}
|
||||
|
||||
@ -441,8 +469,8 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
if ((optoHeadsConfig & (1L << i)) != 0 && checkBoxes[i].Checked && optoHeads[i] != null)
|
||||
{
|
||||
/// Save PCB Number of the water meter
|
||||
ProcessData.BatchRslts.Batch.WaterMeters[i].SerialNr = optoHeads[i].PcbNumber.ToString(); /// PCB number (640) or body number (620)
|
||||
ProcessData.BatchRslts.Batch.WaterMeters[i].RadioAddress = optoHeads[i].RadioAddress.ToString(); /// Radio address (640)
|
||||
ProcessData.BatchRslts.Batch.WaterMeters[i].SerialNrAux = optoHeads[i].PcbNumber.ToString(); /// PCB number (640)
|
||||
ProcessData.BatchRslts.Batch.WaterMeters[i].RadioAddress = optoHeads[i].RadioAddress; /// Radio address (640)
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -492,7 +520,26 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
progressBar1.Maximum = Math.Max(fileExchangeTimeout, 1);
|
||||
progressBar1.Value = 0;
|
||||
|
||||
step = Step.AwaitResponseToStartPro;
|
||||
for (int i = 0; i < textBoxesCount; i++) { messages[i].Enabled = false; }
|
||||
|
||||
if (enterSerialNumbers)
|
||||
{
|
||||
for (int i = 0; i < textBoxesCount; i++) { serialNumbers[i].Enabled = true; }
|
||||
serialNumbers[0].Focus();
|
||||
closeButton.Visible = true;
|
||||
closeButton.Enabled = true;
|
||||
closeButton.Text = Strings.Continue;
|
||||
step = Step.EnterSNsAndAwaitResponseToStartPro;
|
||||
}
|
||||
else
|
||||
{
|
||||
step = Step.AwaitResponseToStartPro;
|
||||
}
|
||||
}
|
||||
///--------------------------------------------------------------------------
|
||||
else if (step == Step.EnterSNsAndAwaitResponseToStartPro)
|
||||
{
|
||||
/// Don't do anything, move to the next step in closeButton_Click(...)
|
||||
}
|
||||
///--------------------------------------------------------------------------
|
||||
else if (step == Step.AwaitResponseToStartPro)
|
||||
@ -534,6 +581,11 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
}
|
||||
}
|
||||
///--------------------------------------------------------------------------
|
||||
else if (step == Step.EnterSNs)
|
||||
{
|
||||
/// Don't do anything, move to the next step in closeButton_Click(...)
|
||||
}
|
||||
///--------------------------------------------------------------------------
|
||||
else if (step == Step.SaveEndePro)
|
||||
{
|
||||
activityLabel.Text = string.Format("End: SIRT Communication");
|
||||
@ -597,8 +649,10 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
else if (step == Step.ConfirmError)
|
||||
{
|
||||
progressBar1.Visible = false;
|
||||
closeButton.Visible = true;
|
||||
retryButton.Visible = true;
|
||||
closeButton.Visible = true;
|
||||
closeButton.Enabled = true;
|
||||
closeButton.Text = Strings.CloseBtnText;
|
||||
}
|
||||
///--------------------------------------------------------------------------
|
||||
else if (step == Step.Idle)
|
||||
@ -767,13 +821,45 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void closeButton_Click(object sender, EventArgs e)
|
||||
{
|
||||
log.Error("User is closing this form, communication failed");
|
||||
UpdateFirstTestResult(tests, true);
|
||||
UiBridge.Bridge.OnTestProgress(null, new TBF.UiBridge.TestProgressEventArgs(tests[currentActivityIx], Progress.Aborted));
|
||||
NormalClose();
|
||||
if (step == Step.EnterSNsAndAwaitResponseToStartPro)
|
||||
{
|
||||
UpdateSerialNumbers();
|
||||
step = Step.AwaitResponseToEndePro;
|
||||
closeButton.Visible = false;
|
||||
}
|
||||
else if (step == Step.EnterSNs)
|
||||
{
|
||||
UpdateSerialNumbers();
|
||||
step = Step.SaveEndePro;
|
||||
closeButton.Visible = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
log.Error("User is closing this form, communication failed");
|
||||
UpdateFirstTestResult(tests, true);
|
||||
UiBridge.Bridge.OnTestProgress(null, new TBF.UiBridge.TestProgressEventArgs(tests[currentActivityIx], Progress.Aborted));
|
||||
NormalClose();
|
||||
}
|
||||
}
|
||||
|
||||
private void UpdateSerialNumbers()
|
||||
{
|
||||
/// Update water meter properties
|
||||
for (int i = 0; i < textBoxesCount; i++)
|
||||
{
|
||||
serialNumbers[i].Enabled = false;
|
||||
|
||||
if (i < ProcessData.BatchRslts.Batch.WaterMeters.Count &&
|
||||
ProcessData.BatchRslts.Batch.WaterMeters[i] != null &&
|
||||
!ProcessData.BatchRslts.Batch.WaterMeters[i].Disabled &&
|
||||
enabledInConfiguration[i])
|
||||
{
|
||||
/// Save brass water meter body serial number
|
||||
ProcessData.BatchRslts.Batch.WaterMeters[i].SerialNr = serialNumbers[i].Text;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void NormalClose()
|
||||
@ -828,5 +914,78 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
StartActivity(0);
|
||||
}
|
||||
}
|
||||
|
||||
private void textBox1_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox1); }
|
||||
private void textBox2_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox2); }
|
||||
private void textBox3_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox3); }
|
||||
private void textBox4_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox4); }
|
||||
private void textBox5_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox5); }
|
||||
private void textBox6_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox6); }
|
||||
private void textBox7_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox7); }
|
||||
private void textBox8_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox8); }
|
||||
private void textBox9_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox9); }
|
||||
private void textBox10_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox10); }
|
||||
private void textBox11_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox11); }
|
||||
private void textBox12_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox12); }
|
||||
private void textBox13_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox13); }
|
||||
private void textBox14_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox14); }
|
||||
private void textBox15_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox15); }
|
||||
private void textBox16_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox16); }
|
||||
private void textBox17_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox17); }
|
||||
private void textBox18_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox18); }
|
||||
private void textBox19_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox19); }
|
||||
private void textBox20_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox20); }
|
||||
private void textBox21_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox21); }
|
||||
private void textBox22_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox22); }
|
||||
private void textBox23_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox23); }
|
||||
private void textBox24_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox24); }
|
||||
private void textBox25_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox25); }
|
||||
private void textBox26_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox26); }
|
||||
private void textBox27_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox27); }
|
||||
private void textBox28_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox28); }
|
||||
private void textBox29_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox29); }
|
||||
private void textBox30_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox30); }
|
||||
private void textBox31_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox31); }
|
||||
private void textBox32_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox32); }
|
||||
private void textBox33_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox33); }
|
||||
private void textBox34_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox34); }
|
||||
private void textBox35_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox35); }
|
||||
private void textBox36_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox36); }
|
||||
private void textBox37_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox37); }
|
||||
private void textBox38_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox38); }
|
||||
private void textBox39_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox39); }
|
||||
private void textBox40_KeyPress(object sndr, KeyPressEventArgs e) { ProcKeyPress(sndr, e, textBox40); }
|
||||
|
||||
/// <summary>
|
||||
/// Process a key press within any enabled text boxe
|
||||
/// </summary>
|
||||
/// <param name="sender"></param>
|
||||
/// <param name="e"></param>
|
||||
/// <param name="currentFocusOwner">TextBox control which received the event</param>
|
||||
private void ProcKeyPress(object sender, KeyPressEventArgs e, TextBox currentFocusOwner)
|
||||
{
|
||||
if (e.KeyChar == '\r')
|
||||
{
|
||||
/// Process <enter> key ..... Next text field
|
||||
if (textBoxesCount < 2) return; /// There is just one enabled textBox
|
||||
|
||||
for (int i = 0; i < textBoxesCount; i++)
|
||||
{
|
||||
if (serialNumbers[i] == currentFocusOwner)
|
||||
{
|
||||
int nextIx = i;
|
||||
do
|
||||
{
|
||||
nextIx = (++nextIx) % textBoxesCount;
|
||||
}
|
||||
while (!enabledInConfiguration[nextIx]);
|
||||
|
||||
/// Change focus to the next enabled text box
|
||||
serialNumbers[nextIx].Focus();
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -27,6 +27,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
public int OptoDataTimeout { get; set; }
|
||||
public string FileExchangePath { get; set; }
|
||||
public int FileExchangeTimeout { get; set; }
|
||||
public bool EnterSerialNumbers { get; set; }
|
||||
public bool SimultWithEvacuation { get; set; }
|
||||
|
||||
/// <summary> Procedure parameters </summary>
|
||||
@ -57,6 +58,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
OptoDataTimeout = 180;
|
||||
FileExchangePath = "1";
|
||||
FileExchangeTimeout = 60;
|
||||
EnterSerialNumbers = false;
|
||||
SimultWithEvacuation = true;
|
||||
}
|
||||
|
||||
@ -65,6 +67,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
"Awaiting optical data timeout [s] (0 = off)",
|
||||
"File exchange path",
|
||||
"File exchange timeout [s] (0 = off)",
|
||||
"Enter serial numbers",
|
||||
"Simultaneous with evacuation",
|
||||
};
|
||||
public string ParamName(int i) { return paramNames[i]; }
|
||||
@ -75,6 +78,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
switch (i)
|
||||
{
|
||||
case 3:
|
||||
case 4:
|
||||
return new List<string> { Strings.yes, Strings.no };
|
||||
default:
|
||||
return null;
|
||||
@ -88,7 +92,8 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
case 0: return OptoDataTimeout.ToString();
|
||||
case 1: return FileExchangePath;
|
||||
case 2: return FileExchangeTimeout.ToString();
|
||||
case 3: return SimultWithEvacuation ? Strings.yes : Strings.no;
|
||||
case 3: return EnterSerialNumbers ? Strings.yes : Strings.no;
|
||||
case 4: return SimultWithEvacuation ? Strings.yes : Strings.no;
|
||||
default:
|
||||
return string.Format("{0}: FileExchangePath = '{1}' FileExchangeTimeout = {2}s", Name, FileExchangePath, FileExchangeTimeout);
|
||||
}
|
||||
@ -101,7 +106,8 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
case 0: OptoDataTimeout = int.Parse(strValue); return CfgUpdateFlags.RestartRqrd;
|
||||
case 1: FileExchangePath = strValue; return CfgUpdateFlags.RestartRqrd;
|
||||
case 2: FileExchangeTimeout = int.Parse(strValue); return CfgUpdateFlags.RestartRqrd;
|
||||
case 3: SimultWithEvacuation = (strValue == Strings.yes); return CfgUpdateFlags.RestartRqrd;
|
||||
case 3: EnterSerialNumbers = (strValue == Strings.yes); return CfgUpdateFlags.RestartRqrd;
|
||||
case 4: SimultWithEvacuation = (strValue == Strings.yes); return CfgUpdateFlags.RestartRqrd;
|
||||
default:
|
||||
return CfgUpdateFlags.None;
|
||||
}
|
||||
@ -121,6 +127,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
case 1:
|
||||
return true;
|
||||
case 3:
|
||||
case 4:
|
||||
if (ParamValues(i).Contains(strValue)) return true;
|
||||
break;
|
||||
default:
|
||||
@ -137,6 +144,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
prms.OptoDataTimeout = this.OptoDataTimeout;
|
||||
prms.FileExchangePath = this.FileExchangePath;
|
||||
prms.FileExchangeTimeout = this.FileExchangeTimeout;
|
||||
prms.EnterSerialNumbers = this.EnterSerialNumbers;
|
||||
prms.SimultWithEvacuation = this.SimultWithEvacuation;
|
||||
}
|
||||
|
||||
|
||||
@ -19,7 +19,10 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
public static XmlSerializer Serializer = XmlSerializer.FromTypes(new[] { typeof(S640StartCfg) })[0];
|
||||
public override XmlSerializer GetSerializer() { return Serializer; }
|
||||
|
||||
public IComponentCfgCtrl GetControl(IList<Config.Entities.Component> cmpntEntities) { return new Configs.ParamsProvider.ComponentCfgCtrl(this, null); }
|
||||
public IComponentCfgCtrl GetControl(IList<Config.Entities.Component> cmpntEntities)
|
||||
{
|
||||
return new Configs.ParamsProvider.ComponentCfgCtrl(this, null);
|
||||
}
|
||||
|
||||
///
|
||||
/// Serialized parameters
|
||||
@ -27,6 +30,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
public int OptoDataTimeout { get; set; }
|
||||
public string FileExchangePath { get; set; }
|
||||
public int FileExchangeTimeout { get; set; }
|
||||
public bool EnterSerialNumbers { get; set; }
|
||||
public bool SimultWithPurging { get; set; }
|
||||
|
||||
/// <summary> Procedure parameters </summary>
|
||||
@ -57,6 +61,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
OptoDataTimeout = 180;
|
||||
FileExchangePath = "1";
|
||||
FileExchangeTimeout = 60;
|
||||
EnterSerialNumbers = true;
|
||||
SimultWithPurging = true;
|
||||
}
|
||||
|
||||
@ -65,6 +70,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
"Awaiting optical data timeout [s] (0 = off)",
|
||||
"File exchange path",
|
||||
"File exchange timeout [s] (0 = off)",
|
||||
"Enter serial numbers",
|
||||
"Simultaneous with purging",
|
||||
};
|
||||
public string ParamName(int i) { return paramNames[i]; }
|
||||
@ -75,6 +81,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
switch (i)
|
||||
{
|
||||
case 3:
|
||||
case 4:
|
||||
return new List<string> { Strings.yes, Strings.no };
|
||||
default:
|
||||
return null;
|
||||
@ -88,7 +95,8 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
case 0: return OptoDataTimeout.ToString();
|
||||
case 1: return FileExchangePath;
|
||||
case 2: return FileExchangeTimeout.ToString();
|
||||
case 3: return SimultWithPurging ? Strings.yes : Strings.no;
|
||||
case 3: return EnterSerialNumbers ? Strings.yes : Strings.no;
|
||||
case 4: return SimultWithPurging ? Strings.yes : Strings.no;
|
||||
default:
|
||||
return string.Format("{0}: FileExchangePath = '{1}' FileExchangeTimeout = {2}s", Name, FileExchangePath, FileExchangeTimeout);
|
||||
}
|
||||
@ -101,7 +109,8 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
case 0: OptoDataTimeout = int.Parse(strValue); return CfgUpdateFlags.RestartRqrd;
|
||||
case 1: FileExchangePath = strValue; return CfgUpdateFlags.RestartRqrd;
|
||||
case 2: FileExchangeTimeout = int.Parse(strValue); return CfgUpdateFlags.RestartRqrd;
|
||||
case 3: SimultWithPurging = (strValue == Strings.yes); return CfgUpdateFlags.RestartRqrd;
|
||||
case 3: EnterSerialNumbers = (strValue == Strings.yes); return CfgUpdateFlags.RestartRqrd;
|
||||
case 4: SimultWithPurging = (strValue == Strings.yes); return CfgUpdateFlags.RestartRqrd;
|
||||
default:
|
||||
return CfgUpdateFlags.None;
|
||||
}
|
||||
@ -121,6 +130,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
case 1:
|
||||
return true;
|
||||
case 3:
|
||||
case 4:
|
||||
if (ParamValues(i).Contains(strValue)) return true;
|
||||
break;
|
||||
default:
|
||||
@ -137,6 +147,7 @@ namespace TBF.BenchControl.TestMethods.S640Communication
|
||||
prms.OptoDataTimeout = this.OptoDataTimeout;
|
||||
prms.FileExchangePath = this.FileExchangePath;
|
||||
prms.FileExchangeTimeout = this.FileExchangeTimeout;
|
||||
prms.EnterSerialNumbers = this.EnterSerialNumbers;
|
||||
prms.SimultWithPurging = this.SimultWithPurging;
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user