SensusOracle.Database : (1) ProcedureParams modified, (2) SQL style changes
This commit is contained in:
@@ -31,8 +31,19 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
|
||||
public enum WMKind
|
||||
{
|
||||
Iperl,
|
||||
S620,
|
||||
iPERL,
|
||||
Mechanical,
|
||||
Count
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Test/Q designation mode for IperlLogger and IperlHead opto data files
|
||||
/// </summary>
|
||||
public enum DesigMode
|
||||
{
|
||||
Auto,
|
||||
Based_on_procedure,
|
||||
As_specified,
|
||||
Count
|
||||
}
|
||||
|
||||
@@ -42,18 +53,19 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
private static readonly ILog log = LogManager.GetLogger(typeof(Database));
|
||||
public override string ToString() { return string.Format("{0}({1})", GetType().Namespace.Substring(17), Cfg.ToString(1)); }
|
||||
|
||||
const int Anbid_StaraTura = 4;
|
||||
public const int Anbid_StaraTura = 4;
|
||||
|
||||
DatabaseCfg dbCfg;
|
||||
|
||||
public DBUsed DBUsed { get { return (dbCfg == null || dbCfg.ProcParams == null) ? DBUsed.None : dbCfg.ProcParams.DBUsed; } }
|
||||
public WMKind WMKind { get { return (dbCfg == null || dbCfg.ProcParams == null) ? WMKind.Iperl : dbCfg.ProcParams.WMKind; } }
|
||||
public WMKind WMKind { get { return (dbCfg == null || dbCfg.ProcParams == null) ? WMKind.iPERL : dbCfg.ProcParams.WMKind; } }
|
||||
public int WMTypeId { get { return (dbCfg == null || dbCfg.ProcParams == null) ? 0 : dbCfg.ProcParams.WMTypeId; } }
|
||||
public int YearOfManufacture { get { return (dbCfg == null || dbCfg.ProcParams == null) ? DateTime.Now.Year : dbCfg.ProcParams.YearOfManufacture; } }
|
||||
public bool SaveResults { get { return (dbCfg == null || dbCfg.ProcParams == null) ? false : dbCfg.ProcParams.SaveResults; } }
|
||||
public bool ReadStartInfo { get { return (dbCfg == null || dbCfg.ProcParams == null) ? true : dbCfg.ProcParams.ReadStartInfo; } }
|
||||
public bool StartInfoIsRequired { get { return (dbCfg == null || dbCfg.ProcParams == null) ? false : dbCfg.ProcParams.StartInfoIsRequired; } }
|
||||
|
||||
public DesigMode DesigMode { get { return (dbCfg == null || dbCfg.ProcParams == null) ? DesigMode.Auto : dbCfg.ProcParams.DesigMode; } }
|
||||
public LogType DesigType { get { return (dbCfg == null || dbCfg.ProcParams == null) ? LogType.Just_Q3Q2Q1 : dbCfg.ProcParams.DesigType; } }
|
||||
|
||||
enum OpState
|
||||
{
|
||||
@@ -83,13 +95,11 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
OracleConnection qualityDB; /// Quality Oracle DB connection
|
||||
OracleConnection testDB; /// Test Oracle DB connection
|
||||
|
||||
OracleConnection selectedDB
|
||||
public OracleConnection SelectedDB
|
||||
{
|
||||
get
|
||||
{
|
||||
if (dbCfg == null || dbCfg.ProcParams == null) return null;
|
||||
|
||||
switch (dbCfg.ProcParams.DBUsed)
|
||||
switch (DBUsed)
|
||||
{
|
||||
case DBUsed.Production: return productionDB;
|
||||
case DBUsed.Quality: return qualityDB;
|
||||
@@ -120,7 +130,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
{
|
||||
dbCfg = cfg as DatabaseCfg;
|
||||
currentOpState = OpState.None;
|
||||
log.Debug(this.ToString());
|
||||
log.Warn(this.ToString());
|
||||
}
|
||||
|
||||
///
|
||||
@@ -128,26 +138,26 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
///
|
||||
public void Initialize()
|
||||
{
|
||||
if (dbCfg.DebugLevel == DebugMode.Simulate) return;
|
||||
|
||||
productionDB = new OracleConnection("Data Source=STARA01.WORLD;User Id=deltachef;Password=deltachef;");
|
||||
qualityDB = new OracleConnection("Data Source=STARA01.WORLD;User Id=deltaqual;Password=test;");
|
||||
testDB = new OracleConnection("Data Source=STARA_TEST.WORLD;User Id=deltachef;Password=deltachef;");
|
||||
|
||||
if (dbCfg.DebugLevel == DebugMode.Simulate) return;
|
||||
|
||||
///
|
||||
/// Do something with the database to see if the connection works well
|
||||
///
|
||||
if (productionDB != null)
|
||||
if (DBUsed == DBUsed.Production)
|
||||
{
|
||||
productionDB.Open();
|
||||
SelectedDB.Open();
|
||||
|
||||
string rslt = "none";
|
||||
OracleCommand cmd = new OracleCommand("select Standort from ANBIETER_SD where ANBID = 4", productionDB);
|
||||
OracleCommand cmd = new OracleCommand("SELECT standort FROM anbieter_sd WHERE anbid = 4", SelectedDB);
|
||||
OracleDataReader dr = cmd.ExecuteReader();
|
||||
if (dr.Read()) rslt = dr.GetString(0);
|
||||
dr.Close();
|
||||
|
||||
productionDB.Close();
|
||||
SelectedDB.Close();
|
||||
}
|
||||
}
|
||||
///
|
||||
@@ -189,7 +199,9 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
timeStamp = DateTime.MinValue;
|
||||
remark = string.Empty;
|
||||
|
||||
OracleCommand cmd = new OracleCommand("select REV_WZTYP, WZTYP, METROLKLASSE, ZULASSZEICHEN, MATERIALNR, QMAX, AENDERUNGSDATUM, BEMERKUNG from VT_WZTYP_SD where ANBID=4 and ID_WZTyp=:1 and AKTIV=:2", conn);
|
||||
OracleCommand cmd = new OracleCommand("SELECT rev_wztyp, wztyp, metrolklasse, zulasszeichen, materialnr, qmax, aenderungsdatum, bemerkung " +
|
||||
"FROM vt_wztyp_sd " +
|
||||
"WHERE anbid=4 AND id_wztyp=:1 AND aktiv=:2", conn);
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wmTypeId }); ///:1
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 1 }); ///:2
|
||||
///
|
||||
@@ -209,7 +221,9 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
|
||||
if (wmTypeRevision == -1) return null; /// No 'wmTypeRevision' found
|
||||
|
||||
cmd = new OracleCommand("select PRUEFUNGSNR, Q_SOLL, PRUEFZEIT, POSFEHLERKALT, NEGFEHLERKALT, PRUEFBEREICHMIN, PRUEFBEREICHMAX, QBEZEICHNUNG from VT_PRUEFPUNKT_SOLL_SD where ANBID=4 and ID_WZTyp=:1 and Rev_WZTyp=:2", conn);
|
||||
cmd = new OracleCommand("SELECT pruefungsnr, q_soll, pruefzeit, posfehlerkalt, negfehlerkalt, pruefbereichmin, pruefbereichmax, qbezeichnung " +
|
||||
"FROM vt_pruefpunkt_soll_sd " +
|
||||
"WHERE anbid=4 AND id_wztyp=:1 AND rev_wztyp=:2", conn);
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wmTypeId }); ///:1
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wmTypeRevision }); ///:2
|
||||
///
|
||||
@@ -253,11 +267,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
/// <returns>Reference to the operation</returns>
|
||||
public IOperation ReadStartInfoOp(IList<Results.Entities.WaterMeter> waterMeters)
|
||||
{
|
||||
if (!ReadStartInfo)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
else if ((currentOpState == OpState.ReadStartInfoRunning) || (currentOpState == OpState.WriteResultsRunning))
|
||||
if ((currentOpState == OpState.ReadStartInfoRunning) || (currentOpState == OpState.WriteResultsRunning))
|
||||
{
|
||||
throw new Exception("Sequence error");
|
||||
}
|
||||
@@ -316,16 +326,26 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
if (currentOpState == OpState.ReadStartInfoRunning)
|
||||
{
|
||||
if (!opCompleted)
|
||||
{
|
||||
if (waterMeters.Count == 0) return Event.ResultsWritten;
|
||||
|
||||
if ((dbCfg.DebugLevel == DebugMode.Normal) && (selectedDB != null))
|
||||
{
|
||||
log.WarnFormat("{0} : Run() : currentOp = {1}", Name, currentOpState);
|
||||
|
||||
if (dbCfg.DebugLevel == DebugMode.Normal && SelectedDB != null && ReadStartInfo && waterMeters.Count != 0)
|
||||
{
|
||||
#if ORACLE_DB
|
||||
if (ReadStartInfoFromDB(selectedDB) == Retv.Error) anyError = true;
|
||||
log.WarnFormat("{0} : Run() : reading from database", Name);
|
||||
if (ReadStartInfoFromDB(SelectedDB) == Retv.Error) anyError = true;
|
||||
#endif
|
||||
}
|
||||
|
||||
if (DesigMode == DesigMode.Based_on_procedure && StateMachine.Procedure != null)
|
||||
{
|
||||
Sequences.ProcessData.CompleteTestInfos = Results.Output.SensusTestInfo.CreateFromProcedure(StateMachine.Procedure);
|
||||
}
|
||||
else if (DesigMode == DesigMode.As_specified && DesigType >= 0 && DesigType < LogType.Count)
|
||||
{
|
||||
Sequences.ProcessData.CompleteTestInfos = SensusTestInfo.GetTestInfos(DesigType);
|
||||
}
|
||||
|
||||
opCompleted = true;
|
||||
}
|
||||
|
||||
@@ -337,11 +357,11 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
{
|
||||
if (batch.WaterMeters.Count == 0) return Event.ResultsWritten;
|
||||
|
||||
if ((dbCfg.DebugLevel == DebugMode.Normal) && (selectedDB != null))
|
||||
if ((dbCfg.DebugLevel == DebugMode.Normal) && (SelectedDB != null))
|
||||
{
|
||||
log.WarnFormat("{0} : Run() : currentOp = {1}", Name, currentOpState);
|
||||
#if ORACLE_DB
|
||||
if (WriteResultsToDB(selectedDB, batch, false) == Retv.Error) anyError = true;
|
||||
if (WriteResultsToDB(SelectedDB, batch, false) == Retv.Error) anyError = true;
|
||||
#endif
|
||||
}
|
||||
opCompleted = true;
|
||||
@@ -478,7 +498,6 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
OracleCommand cmd;
|
||||
OracleDataReader dr;
|
||||
|
||||
// SELECT * FROM VT_ZAEHLER_PD WHERE VT_Fernum = :1 AND ANBID = 4
|
||||
int maxPruefindex = 0;
|
||||
string purchaseOrder = string.Empty;
|
||||
int assignedSerialNr = 0;
|
||||
@@ -499,8 +518,10 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
///
|
||||
/// Read data from VT_ZAEHLER_PD
|
||||
///
|
||||
cmd = new OracleCommand("select MAX_PRUEFINDEX, AUFTRAGSNUMMER, ZAEHLERNUMMER, PALETTE_NR, UMKARTON_NR, Z_NR_KOMPLETT, VT_MODUL_SNR from VT_ZAEHLER_PD where VT_FERNUM = :1 AND ANBID = 4", conn);
|
||||
/// 100*benchId+MPix, purchase_order, assigned_s/n, palette_nr, box_nr., complete_s/n, radio_address
|
||||
cmd = new OracleCommand("SELECT max_pruefindex, auftragsnummer, zaehlernummer, palette_nr, umkarton_nr, z_nr_komplett, vt_modul_snr " +
|
||||
"FROM vt_zaehler_pd " +
|
||||
"WHERE vt_fernum = :1 AND anbid = 4", conn);
|
||||
cmd.Parameters.Add(new OracleParameter { ParameterName = "1", OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr });
|
||||
dr = cmd.ExecuteReader();
|
||||
if (dr.Read())
|
||||
@@ -530,8 +551,10 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
///
|
||||
/// Read data from VT_ZAEHLER_PINDEX_PD
|
||||
///
|
||||
cmd = new OracleCommand("select PRUEFINDEX, ID_WZPRUEFREIHE, WT_PLATZ_NR, WZGUT, ID_BENUTZER from VT_ZAEHLER_PINDEX_PD where VT_FERNUM = :1 AND ANBID = 4", conn);
|
||||
/// test_bench_ID, line_ID, WM_position, result, user_ID
|
||||
cmd = new OracleCommand("SELECT pruefindex, id_wzpruefreihe, wt_platz_nr, wzgut, id_benutzer " +
|
||||
"FROM vt_zaehler_pindex_pd " +
|
||||
"WHERE vt_fernum = :1 AND anbid = 4", conn);
|
||||
cmd.Parameters.Add(new OracleParameter { ParameterName = "1", OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr });
|
||||
dr = cmd.ExecuteReader();
|
||||
while (dr.Read())
|
||||
@@ -551,8 +574,10 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
///
|
||||
/// Read data from VT_IP_ZAEHLER_PINDEX_PD
|
||||
///
|
||||
cmd = new OracleCommand("select PRUEFINDEX, Q2CORRECTIONLEFT, Q2CORRECTIONRIGHT, ERRQ2 from VT_IP_ZAEHLER_PINDEX_PD where VT_FERNUM = :1 AND ANBID = 4", conn);
|
||||
/// pruefindex, Q2_correction_RL, Q2_correction_LR, Q2_error_before_correction
|
||||
cmd = new OracleCommand("SELECT pruefindex, q2correctionleft, q2correctionright, errq2 " +
|
||||
"FROM vt_ip_zaehler_pindex_pd " +
|
||||
"WHERE vt_fernum = :1 AND anbid = 4", conn);
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr });
|
||||
dr = cmd.ExecuteReader();
|
||||
while (dr.Read())
|
||||
@@ -572,7 +597,9 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
/// Read data from VT_PRUEFREIHE_IST_PD
|
||||
///
|
||||
/// testID, flow, rel.err., passed
|
||||
cmd = new OracleCommand("select PRUEFUNGSNR, Q_WZ, Q_FEHLER, Q_BEST from VT_PRUEFREIHE_IST_PD where VT_FERNUM = :1 AND PRUEFINDEX = :2 AND ANBID = 4", conn);
|
||||
cmd = new OracleCommand("SELECT pruefungsnr, q_wz, q_fehler, q_best " +
|
||||
"FROM vt_pruefreihe_ist_pd " +
|
||||
"WHERE vt_fernum = :1 AND pruefindex = :2 AND anbid = 4", conn);
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 100 * testBenchID + maxPruefindex });
|
||||
|
||||
@@ -679,17 +706,17 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
SaveBatchData(conn, batch);
|
||||
foreach (var wMtr in batch.WaterMeters)
|
||||
{
|
||||
if (WMKind == WMKind.Iperl)
|
||||
if (WMKind == WMKind.iPERL)
|
||||
{
|
||||
if ((wMtr.ErrorFlags & ((int)ErrorFlagMask.E26 | (int)ErrorFlagMask.E27 | (int)ErrorFlagMask.E28)) == 0)
|
||||
{
|
||||
/// No production error => write the result of testing to Oracle DB
|
||||
SaveOneIperlToDB(conn, wMtr, safeMode);
|
||||
SaveIperlToDB(conn, wMtr, safeMode);
|
||||
}
|
||||
}
|
||||
else if (WMKind == WMKind.S620)
|
||||
else if (WMKind == WMKind.Mechanical)
|
||||
{
|
||||
SaveOneS620ToDB(conn, wMtr, safeMode);
|
||||
SaveMechanicalMeterToDB(conn, wMtr, safeMode);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -719,7 +746,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
IList<int> pruefindexes = new List<int>();
|
||||
|
||||
{
|
||||
OracleCommand cmd = new OracleCommand("SELECT Pruefindex FROM VT_ZAEHLER_PINDEX_PD WHERE VT_Fernum = :1 AND ANBID = 4", conn);
|
||||
OracleCommand cmd = new OracleCommand("SELECT pruefindex FROM vt_zaehler_pindex_pd WHERE vt_fernum = :1 AND anbid = 4", conn);
|
||||
|
||||
OracleParameter parm = new OracleParameter();
|
||||
parm.OracleDbType = OracleDbType.Varchar2;
|
||||
@@ -733,8 +760,11 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
}
|
||||
}
|
||||
{
|
||||
OracleCommand cmd = new OracleCommand("SELECT Max_Pruefindex, Auftragsnummer, Z_Nr_Komplett, VT_Modul_Snr FROM VT_ZAEHLER_PD WHERE VT_Fernum = :1 AND ANBID = 4", conn);
|
||||
/// purchase order assigned s/n radio address PCB number Producer ID
|
||||
/// purchase order assigned s/n radio address
|
||||
OracleCommand cmd = new OracleCommand("SELECT max_pruefindex, auftragsnummer, z_nr_komplett, vt_modul_snr " +
|
||||
"FROM vt_zaehler_pd " +
|
||||
"WHERE vt_fernum = :1 AND anbid = 4", conn);
|
||||
/// PCB number Producer ID
|
||||
OracleParameter parm = new OracleParameter();
|
||||
parm.OracleDbType = OracleDbType.Varchar2;
|
||||
parm.Value = wm.SerialNr;
|
||||
@@ -814,10 +844,10 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
|
||||
if (!dbCfg.TestMode)
|
||||
{
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO VT_PRUEFREIHE_PD(ANBID, ID_Pruefstand, ID_WzPruefreihe, ID_WZTyp, " +
|
||||
"Rev_WZTyp, Rev_Pruefstand_WZTyp, StartDatumZeit, EndDatumZeit, Betriebsart, " +
|
||||
"QVzKontakt, FuellenBegDruck, DruckEvakVorne, DruckEvakHinten, DruckBeiAbpressen, " +
|
||||
"Druckentwaessern, SpuelDurchflussIst, ProgrammVersion)" +
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO vt_pruefreihe_pd(anbid, id_pruefstand, id_wzpruefreihe, id_wztyp," +
|
||||
" rev_wztyp, rev_pruefstand_wztyp, startdatumzeit, enddatumzeit, betriebsart," +
|
||||
" qvzkontakt, fuellenbegdruck, druckevakvorne, druckevakhinten, druckbeiabpressen," +
|
||||
" druckentwaessern, spueldurchflussist, programmversion) " +
|
||||
"VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11, :12, :13, :14, :15, :16, :17)", conn);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura });
|
||||
@@ -860,9 +890,9 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
if (!dbCfg.TestMode)
|
||||
{
|
||||
#if false
|
||||
OracleCommand cmd2 = new OracleCommand("INSERT INTO VT_PRUEFDURCHFLUSS_PD(ANBID, ID_Pruefstand, ID_WzPruefreihe, PruefungsNr, PVOL, PMasse, " +
|
||||
"MinDurchfluss, MaxDurchfluss, Q_ist, KFaktor, Q_VZ, F_VZ, RegelEinstellZeit, Drehzahl, BeginnDruck_Vorne, " +
|
||||
"BeginnDruck_Hinten, EndDruck_Vorne, EndDruck_Hinten, TVWZ, IVWZ, Verwendeter_VZ, BeginnGewicht, EndGewicht) " +
|
||||
OracleCommand cmd2 = new OracleCommand("INSERT INTO vt_pruefdurchfluss_pd(anbid, id_pruefstand, id_wzpruefreihe, pruefungsnr, pvol, pmasse," +
|
||||
" mindurchfluss, maxdurchfluss, q_ist, kfaktor, q_vz, f_vz, regeleinstellzeit, drehzahl, beginndruck_vorne," +
|
||||
" beginndruck_hinten, enddruck_vorne, enddruck_hinten, tvwz, ivwz, verwendeter_vz, beginngewicht, endgewicht) " +
|
||||
"VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11, :12, :13, :14, :15, :16, :17, :18, :19, :20, :21, :22, :23)", conn);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura });
|
||||
@@ -891,14 +921,11 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.kg, tr.MassEnd) });
|
||||
cmd2.ExecuteNonQuery(); /// Returns nr. of updated rows
|
||||
#else
|
||||
OracleCommand cmd2 = new OracleCommand("INSERT INTO VT_PRUEFDURCHFLUSS_PD(" +
|
||||
"ANBID, ID_Pruefstand, ID_WzPruefreihe, PruefungsNr, " +
|
||||
"PVOL, PMasse, MinDurchfluss, MaxDurchfluss, " +
|
||||
"Q_ist, KFaktor, Q_VZ, F_VZ, RegelEinstellZeit, Drehzahl, " +
|
||||
"BeginnDruck_Vorne, BeginnDruck_Hinten, EndDruck_Vorne, EndDruck_Hinten, " +
|
||||
"TVWZ, IVWZ, Verwendeter_VZ, BeginnGewicht, EndGewicht)" +
|
||||
" VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11, :12, :13, :14, :15, " +
|
||||
":16, :17, :18, :19, :20, :21, :22, :23)", conn);
|
||||
var cmd2 = new OracleCommand("INSERT INTO vt_pruefdurchfluss_pd(anbid, id_pruefstand, id_wzpruefreihe, pruefungsnr," +
|
||||
" pvol, pmasse, mindurchfluss, maxdurchfluss, q_ist, kfaktor, q_vz, f_vz, regeleinstellzeit," +
|
||||
" drehzahl, beginndruck_vorne, beginndruck_hinten, enddruck_vorne, enddruck_hinten," +
|
||||
" tvwz, ivwz, verwendeter_vz, beginngewicht, endgewicht) " +
|
||||
"VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11, :12, :13, :14, :15, :16, :17, :18, :19, :20, :21, :22, :23)", conn);
|
||||
OracleParameter parm;
|
||||
parm = new OracleParameter("ANBID", OracleDbType.Int32); parm.Value = Anbid_StaraTura; cmd2.Parameters.Add(parm); ///:1
|
||||
parm = new OracleParameter("ID_Pruefstand", OracleDbType.Int32); parm.Value = 18000 + b.TestBenchId; cmd2.Parameters.Add(parm); ///:2
|
||||
@@ -948,7 +975,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
/// </summary>
|
||||
/// <param name="wmNr">0-based water meter number</param>
|
||||
/// <param name="results">Sorted list of results to save</param>
|
||||
void SaveOneIperlToDB(OracleConnection conn, Results.Entities.WaterMeter wm, bool safeMode)
|
||||
void SaveIperlToDB(OracleConnection conn, Results.Entities.WaterMeter wm, bool safeMode)
|
||||
{
|
||||
if (safeMode && !wm.Passed) return;
|
||||
|
||||
@@ -989,8 +1016,8 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
{
|
||||
if (!dbCfg.TestMode)
|
||||
{
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO VT_ZAEHLER_PD(Auftragsnummer, VT_Identnummer, VT_Fernum, Max_Pruefindex," +
|
||||
" Zaehlernummer, Sekundaere_Adr, Hydr_Pruefung, ID_Benutzer, ANBID, Baujahr)" +
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO vt_zaehler_pd(auftragsnummer, vt_identnummer, vt_fernum, max_pruefindex," +
|
||||
" zaehlernummer, sekundaere_adr, hydr_pruefung, id_benutzer, anbid, baujahr) " +
|
||||
"VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10)", conn);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.PurchaseOrder });
|
||||
@@ -1016,7 +1043,9 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
{
|
||||
if (!dbCfg.TestMode)
|
||||
{
|
||||
OracleCommand cmd = new OracleCommand("UPDATE VT_ZAEHLER_PD SET Auftragsnummer = :1, VT_Identnummer = :2, Max_Pruefindex = :3, Hydr_Pruefung= :4, ID_Benutzer= :5, Baujahr= :6 WHERE VT_Fernum = :7 and ANBID = :8", conn);
|
||||
OracleCommand cmd = new OracleCommand("UPDATE vt_zaehler_pd " +
|
||||
"SET auftragsnummer=:1, vt_identnummer=:2, max_pruefindex=:3, hydr_pruefung=:4, id_benutzer=:5, baujahr=:6 " +
|
||||
"WHERE vt_fernum = :7 AND anbid = :8", conn);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.PurchaseOrder });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = "IPBATMXX" });
|
||||
@@ -1038,10 +1067,10 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
|
||||
if (!dbCfg.TestMode)
|
||||
{
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO VT_ZAEHLER_PINDEX_PD(" +
|
||||
"VT_Fernum, Pruefindex, ANBID, ID_Pruefstand, ID_WzPruefreihe, Hydr_Pruefung, " +
|
||||
"ReedKontakt, ReedKontaktOK, ReedKontaktZeit, KorrImprate, FestWertWZ, PtestOK, " +
|
||||
"Zaehlerstand, WT_Platz_NR, WZgut, ID_Benutzer, AnzahlPruefungen)" +
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO vt_zaehler_pindex_pd(vt_fernum, pruefindex, anbid," +
|
||||
" id_pruefstand, id_wzpruefreihe, hydr_pruefung, reedkontakt," +
|
||||
" reedkontaktok, reedkontaktzeit, korrimprate, festwertwz, ptestok," +
|
||||
" zaehlerstand, wt_platz_nr, wzgut, id_benutzer, anzahlpruefungen) " +
|
||||
"VALUES (:1, :2, :3, :4, :5, :6, 0, 0, 0, :7, 0, :8, 0, :9, :10, :11, :12)", conn); /// ReedKontakt = ReedKontaktOK = ReedKontaktZeit = FestWertWZ = Zaehlerstand = 0
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr });
|
||||
@@ -1113,9 +1142,9 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
{
|
||||
double q2ErrWOCorrection = Math.Min(100.0, Math.Max(-100.0, wm.Q2ErrWOCorrection));
|
||||
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO VT_IP_ZAEHLER_PINDEX_PD(" +
|
||||
"VT_Fernum, Pruefindex, ANBID, WITHCORRECTION2HZ, CORRECTION2HZ, DIFF2HZ8HZ, " +
|
||||
"WITHQ2CORRECTION, Q2CORRECTIONRIGHT, ERRQ2, Q2CORRECTIONFLOWRIGHT, Q2CORRECTIONLEFT)" +
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO vt_ip_zaehler_pindex_pd(vt_fernum, pruefindex, anbid," +
|
||||
" withcorrection2hz, correction2hz, diff2hz8hz, withq2correction," +
|
||||
" q2correctionright, errq2, q2correctionflowright, q2correctionleft) " +
|
||||
"VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11)", conn);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr });
|
||||
@@ -1141,11 +1170,11 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Write one meter results into the database
|
||||
/// Write results of one mechanical meter into the database
|
||||
/// </summary>
|
||||
/// <param name="wmNr">0-based water meter number</param>
|
||||
/// <param name="results">Sorted list of results to save</param>
|
||||
void SaveOneS620ToDB(OracleConnection conn, Results.Entities.WaterMeter wm, bool safeMode)
|
||||
void SaveMechanicalMeterToDB(OracleConnection conn, Results.Entities.WaterMeter wm, bool safeMode)
|
||||
{
|
||||
if (safeMode && !wm.Passed) return;
|
||||
|
||||
@@ -1174,32 +1203,41 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
|
||||
wm.Pruefindex = MAX_Pruefindex;
|
||||
wm.HydrPruefung = Hydr_Pruefung;
|
||||
SaveOrUpdateS620(conn, wm, MAX_Pruefindex, Hydr_Pruefung);
|
||||
SaveOrUpdateMechanicalMeter(conn, wm, MAX_Pruefindex, Hydr_Pruefung);
|
||||
}
|
||||
|
||||
void SaveOrUpdateS620(OracleConnection conn, Results.Entities.WaterMeter wm, int max_Pruefindex, int hydr_Pruefung)
|
||||
void SaveOrUpdateMechanicalMeter(OracleConnection conn, Results.Entities.WaterMeter wm, int max_Pruefindex, int hydr_Pruefung)
|
||||
{
|
||||
int sekundaere_Adr = wm.Passed ? 1 : 0;
|
||||
int idBenutzer = 6; // = wm.Batch.UserNumber;
|
||||
|
||||
if (max_Pruefindex % 100 == 1)
|
||||
{
|
||||
if (!dbCfg.TestMode)
|
||||
{
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO VT_ZAEHLER_PD(Auftragsnummer, VT_Identnummer, VT_Fernum, Max_Pruefindex," +
|
||||
" Zaehlernummer, Sekundaere_Adr, Hydr_Pruefung, ID_Benutzer, ANBID, Baujahr)" +
|
||||
" VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10)", conn);
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO vt_zaehler_pd(auftragsnummer, vt_identnummer, vt_fernum, max_pruefindex," +
|
||||
" 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);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.PurchaseOrder });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = "IPBATMXX" });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = max_Pruefindex });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = -1 });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = sekundaere_Adr });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = hydr_Pruefung });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = idBenutzer });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = YearOfManufacture });
|
||||
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_StaraTura }); /// :18
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = idBenutzer }); /// :19
|
||||
|
||||
cmd.ExecuteNonQuery();
|
||||
log.InfoFormat("VT_ZAEHLER_PD inserted, PcbNr={0}, pos={1}, maxPruefix={2}", wm.SerialNr, wm.WMPosition, max_Pruefindex);
|
||||
@@ -1213,16 +1251,31 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
{
|
||||
if (!dbCfg.TestMode)
|
||||
{
|
||||
OracleCommand cmd = new OracleCommand("UPDATE VT_ZAEHLER_PD SET Auftragsnummer = :1, VT_Identnummer = :2, Max_Pruefindex = :3, Hydr_Pruefung= :4, ID_Benutzer= :5, Baujahr= :6 WHERE VT_Fernum = :7 and ANBID = :8", conn);
|
||||
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);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.PurchaseOrder });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = "IPBATMXX" });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = max_Pruefindex });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = hydr_Pruefung });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = idBenutzer });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = YearOfManufacture });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura });
|
||||
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_StaraTura }); /// :19
|
||||
|
||||
cmd.ExecuteNonQuery();
|
||||
log.InfoFormat("VT_ZAEHLER_PD updated, PcbNr={0}, pos={1}, maxPruefix={2}", wm.SerialNr, wm.WMPosition, max_Pruefindex);
|
||||
@@ -1235,10 +1288,9 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
|
||||
if (!dbCfg.TestMode)
|
||||
{
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO VT_ZAEHLER_PINDEX_PD(" +
|
||||
"VT_Fernum, Pruefindex, ANBID, ID_Pruefstand, ID_WzPruefreihe, Hydr_Pruefung, " +
|
||||
"ReedKontakt, ReedKontaktOK, ReedKontaktZeit, KorrImprate, FestWertWZ, PtestOK, " +
|
||||
"Zaehlerstand, WT_Platz_NR, WZgut, ID_Benutzer, AnzahlPruefungen)" +
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO vt_zaehler_pindex_pd(vt_fernum, pruefindex, anbid, id_pruefstand, id_wzpruefreihe," +
|
||||
" hydr_pruefung, reedkontakt, reedkontaktok, reedkontaktzeit, korrimprate, festwertwz, ptestok," +
|
||||
" zaehlerstand, wt_platz_nr, wzgut, id_benutzer, anzahlpruefungen) " +
|
||||
"VALUES (:1, :2, :3, :4, :5, :6, 0, 0, 0, :7, 0, :8, 0, :9, :10, :11, :12)", conn); /// ReedKontakt = ReedKontaktOK = ReedKontaktZeit = FestWertWZ = Zaehlerstand = 0
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr });
|
||||
@@ -1320,27 +1372,26 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
|
||||
if (!dbCfg.TestMode)
|
||||
{
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO VT_PRUEFREIHE_IST_PD(" +
|
||||
"VT_Fernum, Pruefindex, PruefungsNr, ANBID, ID_WZTyp, Rev_WZTyp, Rev_WZPruefpunkt, " +
|
||||
"Q_WZ, Q_Fehler, Q_Best, NIZ, AnfangZStand, EndZStand, " +
|
||||
"KorrErrQok, KorrErrQ, KorrQWz, TIZ, Vol_WZ_US, TempMittel_US)" +
|
||||
OracleCommand cmd = new OracleCommand("INSERT INTO vt_pruefreihe_ist_pd( vt_fernum, pruefindex, pruefungsnr, anbid," +
|
||||
" id_wztyp, rev_wztyp, rev_wzpruefpunkt, q_wz, q_fehler, q_best, niz," +
|
||||
" anfangzstand, endzstand, korrerrqok, korrerrq, korrqwz, tiz, vol_wz_us, tempmittel_us) " +
|
||||
"VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11, :12, :13, 0, :14, 0, :15, 0, 0)", conn);
|
||||
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = mtr.WaterMeter.SerialNr });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = max_Pruefindex });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = pruefungsNr });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = mtr.WaterMeter.WaterMeterData.WMTypeId });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wmTypeRevision });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 1 });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Q_wm_with_upper_bound });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Min(100.0, Math.Max(-100.0, mtr.Error)) });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = mtr.Passed ? 1 : 0 });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Max(-99999.999, Math.Min(mtr.VolumeStart, 99999.999)) });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Max(-99999.999, Math.Min(mtr.VolumeEnd, 99999.999)) });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Min(100.0, Math.Max(-100.0, mtr.KorrErrQ)) });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Min(100000, mtr.TestTime) });
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = mtr.WaterMeter.SerialNr }); /// :1 vt_fernum
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = max_Pruefindex }); /// :2 pruefindex
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = pruefungsNr }); /// :3 pruefungsnr
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura }); /// :4 anbid
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = mtr.WaterMeter.WaterMeterData.WMTypeId }); /// :5 id_wztyp
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wmTypeRevision }); /// :6 rev_wztyp
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 1 }); /// :7 rev_wzpruefpunkt
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Q_wm_with_upper_bound }); /// :8 q_wz
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Min(100.0, Math.Max(-100.0, mtr.Error)) }); /// :9 q_fehler
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = mtr.Passed ? 1 : 0 }); /// :10 q_best
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// :11 niz
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Max(-99999.999, Math.Min(mtr.VolumeStart, 99999.999)) }); /// :12 anfangzstand
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Max(-99999.999, Math.Min(mtr.VolumeEnd, 99999.999)) }); /// :13 endzstand
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Min(100.0, Math.Max(-100.0, mtr.KorrErrQ)) }); /// :14 korrerrq
|
||||
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Min(100000, mtr.TestTime) }); /// :15 tiz
|
||||
|
||||
retv = cmd.ExecuteNonQuery();
|
||||
log.DebugFormat("VT_PRUEFREIHE_IST_PD inserted, PcbNr={0}, pruefungsNr={1}, error={2}", mtr.WaterMeter.SerialNr, pruefungsNr, mtr.Error);
|
||||
|
||||
@@ -2,13 +2,14 @@
|
||||
/// Copyright (c) 2020 Sensus Slovensko a.s.
|
||||
///
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Text;
|
||||
using System.Xml.Serialization;
|
||||
using Config.Entities;
|
||||
using Results.Output;
|
||||
using TBF.BenchControl.Generic;
|
||||
using TBF.Resources;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
{
|
||||
@@ -24,11 +25,13 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
public bool SaveResults; /// 4
|
||||
public bool ReadStartInfo; /// 5
|
||||
public bool StartInfoIsRequired; /// 6
|
||||
public DesigMode DesigMode; /// 7
|
||||
public Results.Output.LogType DesigType; /// 8
|
||||
|
||||
public override void InitializeAll()
|
||||
{
|
||||
DBUsed = DBUsed.Production; /// 0
|
||||
WMKind = WMKind.Iperl; /// 1
|
||||
WMKind = WMKind.iPERL; /// 1
|
||||
WMTypeId = 2; /// 2
|
||||
YearOfManufacture = DateTime.Now.Year; /// 3
|
||||
#if TURA_SPECIAL
|
||||
@@ -38,6 +41,8 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
#endif
|
||||
ReadStartInfo = true; /// 5
|
||||
StartInfoIsRequired = false; /// 6
|
||||
DesigMode = DesigMode.Auto; /// 7
|
||||
DesigType = Results.Output.LogType.Just_Q3Q2Q1; /// 8
|
||||
}
|
||||
|
||||
string[] paramNames = new string[]
|
||||
@@ -49,44 +54,51 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
"Save results", /// 4
|
||||
"Read start info", /// 5
|
||||
"Start info is required", /// 6
|
||||
"Designation Mode", /// 7
|
||||
"Designation when mode is 'As_specified'", /// 8
|
||||
};
|
||||
public override string ParamName(int i) { return paramNames[i]; }
|
||||
public override int ParamsCount() { return paramNames.Length; }
|
||||
|
||||
public override IList<string> ParamValues(int i)
|
||||
{
|
||||
if (i == 0)
|
||||
{
|
||||
IList<string> retVal = new List<string>();
|
||||
|
||||
switch (i)
|
||||
{
|
||||
case 0:
|
||||
for (DBUsed db = 0; db < DBUsed.Count; db++) retVal.Add(db.ToString());
|
||||
return retVal;
|
||||
}
|
||||
|
||||
if (i == 1)
|
||||
{
|
||||
IList<string> retVal = new List<string>();
|
||||
case 1:
|
||||
for (WMKind wm = 0; wm < WMKind.Count; wm++) retVal.Add(wm.ToString());
|
||||
return retVal;
|
||||
}
|
||||
|
||||
if (i == 3)
|
||||
{
|
||||
IList<string> retVal = new List<string>();
|
||||
case 2:
|
||||
default:
|
||||
return null;
|
||||
|
||||
case 3:
|
||||
int year = DateTime.Now.Year;
|
||||
retVal.Add(year.ToString());
|
||||
retVal.Add((year + 1).ToString());
|
||||
return retVal;
|
||||
}
|
||||
|
||||
if (i == 4 || i == 5 || i == 6)
|
||||
{
|
||||
IList<string> retVal = new List<string>();
|
||||
case 4:
|
||||
case 5:
|
||||
case 6:
|
||||
retVal.Add(Strings.yes);
|
||||
retVal.Add(Strings.no);
|
||||
return retVal;
|
||||
}
|
||||
|
||||
return null;
|
||||
case 7:
|
||||
for (DesigMode md = 0; md < DesigMode.Count; md++) retVal.Add(md.ToString());
|
||||
return retVal;
|
||||
|
||||
case 8:
|
||||
for (Results.Output.LogType wm = 0; wm < Results.Output.LogType.Count; wm++) retVal.Add(wm.ToString());
|
||||
return retVal;
|
||||
}
|
||||
}
|
||||
|
||||
public override string ToString(int i)
|
||||
@@ -100,6 +112,8 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
case 4: return SaveResults ? Strings.yes : Strings.no;
|
||||
case 5: return ReadStartInfo ? Strings.yes : Strings.no;
|
||||
case 6: return StartInfoIsRequired ? Strings.yes : Strings.no;
|
||||
case 7: return DesigMode.ToString();
|
||||
case 8: return DesigType.ToString();
|
||||
default: return string.Empty;
|
||||
}
|
||||
}
|
||||
@@ -136,6 +150,28 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
case 4: SaveResults = (strValue == Strings.yes); break;
|
||||
case 5: ReadStartInfo = (strValue == Strings.yes); break;
|
||||
case 6: StartInfoIsRequired = (strValue == Strings.yes); break;
|
||||
|
||||
case 7:
|
||||
for (DesigMode db = 0; db < DesigMode.Count; db++)
|
||||
{
|
||||
if (db.ToString() == strValue)
|
||||
{
|
||||
DesigMode = db;
|
||||
return CfgUpdateFlags.None;
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case 8:
|
||||
for (Results.Output.LogType wm = 0; wm < Results.Output.LogType.Count; wm++)
|
||||
{
|
||||
if (wm.ToString() == strValue)
|
||||
{
|
||||
DesigType = wm;
|
||||
return CfgUpdateFlags.None;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
return CfgUpdateFlags.None;
|
||||
@@ -180,6 +216,20 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
return true;
|
||||
break;
|
||||
|
||||
case 7:
|
||||
for (DesigMode db = 0; db < DesigMode.Count; db++)
|
||||
{
|
||||
if (db.ToString() == strValue) return true;
|
||||
}
|
||||
break;
|
||||
|
||||
case 8:
|
||||
for (Results.Output.LogType wm = 0; wm < Results.Output.LogType.Count; wm++)
|
||||
{
|
||||
if (wm.ToString() == strValue) return true;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
message = "Invalid index";
|
||||
return false;
|
||||
@@ -198,6 +248,8 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
|
||||
prms.SaveResults = this.SaveResults;
|
||||
prms.ReadStartInfo = this.ReadStartInfo;
|
||||
prms.StartInfoIsRequired = this.StartInfoIsRequired;
|
||||
prms.DesigMode = this.DesigMode;
|
||||
prms.DesigType = this.DesigType;
|
||||
}
|
||||
|
||||
public IParamsProvider Clone()
|
||||
|
||||
Reference in New Issue
Block a user