Output.DB.SensusOracle.Database : TestMode (no writes to DB).

This commit is contained in:
Milan Hanajik 2019-03-20 10:58:09 +01:00
parent a2bb50117e
commit d40f6a6c15
4 changed files with 271 additions and 203 deletions

View File

@ -648,37 +648,34 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
{
/// Create a list of all prufindexes for a given PCB Number (the list is initially empty)
IList<int> pruefindexes = new List<int>();
string purchaseOrder;
string assignedSerialNr;
string radioAddress;
{
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;
parm.Value = wm.SerialNr;
cmd.Parameters.Add(parm);
OracleCommand cmd1 = new OracleCommand("SELECT Pruefindex FROM VT_ZAEHLER_PINDEX_PD WHERE VT_Fernum = :1 AND ANBID = 4", conn);
cmd1.Parameters.Add(parm);
OracleDataReader dr = cmd1.ExecuteReader();
while (dr.Read()) { pruefindexes.Add(dr.GetInt32(0)); }
dr.Close();
using (OracleDataReader dr = cmd.ExecuteReader())
{
while (dr.Read()) pruefindexes.Add(dr.GetInt32(0));
dr.Close();
}
}
{
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
OracleParameter parm = new OracleParameter();
parm.OracleDbType = OracleDbType.Varchar2;
parm.Value = wm.SerialNr;
cmd.Parameters.Add(parm);
OracleCommand cmd1 = 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
cmd1.Parameters.Add(parm);
OracleDataReader dr = cmd1.ExecuteReader();
while (dr.Read())
using (OracleDataReader dr = cmd.ExecuteReader())
{
pruefindexes.Add(dr.GetInt32(0));
while (dr.Read()) pruefindexes.Add(dr.GetInt32(0));
dr.Close();
}
dr.Close();
}
/// Determine MAX_Pruefindex
@ -721,30 +718,39 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
throw new Exception("No matching test infos found");
}
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);
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)" +
" 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 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 18000 + b.TestBenchId });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = b.BatchNr });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = b.WaterMeters[0].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.TimeStamp, Value = b.StartTime });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.TimeStamp, Value = b.EndTime });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = string.Empty });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 }); /// TODO: DruckBeiAbpressen
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 }); /// TODO: SpuelDurchflussIst
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = string.Format("TBF v.{0}", b.ProgramVersion) });
cmd.ExecuteNonQuery(); /// Returns nr. of updated rows
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 18000 + b.TestBenchId });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = b.BatchNr });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = b.WaterMeters[0].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.TimeStamp, Value = b.StartTime });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.TimeStamp, Value = b.EndTime });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = string.Empty });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 }); /// TODO: DruckBeiAbpressen
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = 0 }); /// TODO: SpuelDurchflussIst
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = string.Format("TBF v.{0}", b.ProgramVersion) });
cmd.ExecuteNonQuery(); /// Returns nr. of updated rows
log.InfoFormat("VT_PRUEFREIHE_PD inserted, BatchNr={0}, TypeId={1}, TypeRev={2}, Start={3}", b.BatchNr, b.WaterMeters[0].WaterMeterData.WMTypeId, wmTypeRevision, b.StartTime);
}
else
{
log.WarnFormat("SIM: VT_PRUEFREIHE_PD inserted, BatchNr={0}, TypeId={1}, TypeRev={2}, Start={3}", b.BatchNr, b.WaterMeters[0].WaterMeterData.WMTypeId, wmTypeRevision, b.StartTime);
}
foreach (var testInfo in completeTestInfos)
{
@ -755,77 +761,87 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
if (tr == null) tr = b.GetTestRslt(testInfo.TestName, 1); /// TODO: Remove this workaround for large watermeters with multiple parts at Q3
if (tr == null) continue;
double Q_ist = (tr.VolumeMaster != 0) ? (tr.FlowVolume * tr.VolumeCTV / tr.VolumeMaster) : (double)tr.FlowVolume;
///
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) " +
"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);
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 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 18000 + b.TestBenchId });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = b.BatchNr });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = testInfo.PruefungsNr });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.l, tr.VolumeCTV) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.kg, tr.MassEnd - tr.MassStart) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.lph, tr.FlowMin) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.lph, tr.FlowMax) });
double Q_ist = (tr.VolumeMaster != 0) ? (tr.FlowVolume * tr.VolumeCTV / tr.VolumeMaster) : (double)tr.FlowVolume;
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.lph, Q_ist) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = tr.ConstMaster });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.lph, tr.FlowVolume) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = tr.ErrorMaster });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = (double)tr.FlowSetTime });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// TODO
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.bar, tr.PressUpStart) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.bar, tr.PressDownStart) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.bar, tr.PressUpEnd) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.bar, tr.PressDownEnd) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = tr.TestTime });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = tr.PulsesMaster });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// TODO
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.kg, tr.MassStart) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.kg, tr.MassEnd) });
cmd2.ExecuteNonQuery(); /// Returns nr. of updated rows
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 18000 + b.TestBenchId });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = b.BatchNr });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = testInfo.PruefungsNr });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.l, tr.VolumeCTV) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.kg, tr.MassEnd - tr.MassStart) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.lph, tr.FlowMin) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.lph, tr.FlowMax) });
double Q_ist = (tr.VolumeMaster != 0) ? (tr.FlowVolume * tr.VolumeCTV / tr.VolumeMaster) : (double)tr.FlowVolume;
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.lph, Q_ist) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = tr.ConstMaster });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.lph, tr.FlowVolume) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = tr.ErrorMaster });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = (double)tr.FlowSetTime });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// TODO
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.bar, tr.PressUpStart) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.bar, tr.PressDownStart) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.bar, tr.PressUpEnd) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.bar, tr.PressDownEnd) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = tr.TestTime });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = tr.PulsesMaster });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// TODO
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Units.ConvertTo(Unit.kg, tr.MassStart) });
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);
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
parm = new OracleParameter("ID_WzPruefreihe", OracleDbType.Int32); parm.Value = b.BatchNr; cmd2.Parameters.Add(parm); ///:3
parm = new OracleParameter("PruefungsNr", OracleDbType.Int32); parm.Value = testInfo.PruefungsNr; cmd2.Parameters.Add(parm); ///:4
///
parm = new OracleParameter("PVOL", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.l, tr.VolumeCTV); cmd2.Parameters.Add(parm); ///:5
parm = new OracleParameter("PMasse", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.kg, tr.MassEnd-tr.MassStart); cmd2.Parameters.Add(parm); ///:6
parm = new OracleParameter("MinDurchfluss", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.lph, tr.FlowMin); cmd2.Parameters.Add(parm); ///:7
parm = new OracleParameter("MaxDurchfluss", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.lph, tr.FlowMax); cmd2.Parameters.Add(parm); ///:8
double Q_ist = (tr.VolumeMaster != 0) ? (tr.FlowVolume * tr.VolumeCTV / tr.VolumeMaster) : (double)tr.FlowVolume;
parm = new OracleParameter("Q_ist", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.lph, Q_ist); cmd2.Parameters.Add(parm); ///:9
parm = new OracleParameter("KFaktor", OracleDbType.Double); parm.Value = tr.ConstMaster; cmd2.Parameters.Add(parm); ///:10
parm = new OracleParameter("Q_VZ", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.lph, tr.FlowVolume); cmd2.Parameters.Add(parm); ///:11
parm = new OracleParameter("F_VZ", OracleDbType.Double); parm.Value = tr.ErrorMaster; cmd2.Parameters.Add(parm); ///:12
parm = new OracleParameter("RegelEinstellZeit", OracleDbType.Double); parm.Value = (double)tr.FlowSetTime; cmd2.Parameters.Add(parm); ///:13
parm = new OracleParameter("Drehzahl", OracleDbType.Int32); parm.Value = 0; /* TODO */ cmd2.Parameters.Add(parm); ///:14
///
parm = new OracleParameter("BeginnDruck_Vorne", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.bar, tr.PressUpStart); cmd2.Parameters.Add(parm); ///:15
parm = new OracleParameter("BeginnDruck_Hinten", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.bar, tr.PressDownStart); cmd2.Parameters.Add(parm); ///:16
parm = new OracleParameter("EndDruck_Vorne", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.bar, tr.PressUpEnd); cmd2.Parameters.Add(parm); ///:17
parm = new OracleParameter("EndDruck_Hinten", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.bar, tr.PressDownEnd); cmd2.Parameters.Add(parm); ///:18
///
parm = new OracleParameter("TVWZ", OracleDbType.Double); parm.Value = tr.TestTime; cmd2.Parameters.Add(parm); ///:19
parm = new OracleParameter("IVWZ", OracleDbType.Int32); parm.Value = tr.PulsesMaster; cmd2.Parameters.Add(parm); ///:20
parm = new OracleParameter("Verwendeter_VZ", OracleDbType.Int32); parm.Value = 0; /* TODO */ cmd2.Parameters.Add(parm); ///:21
parm = new OracleParameter("BeginnGewicht", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.kg, tr.MassStart); cmd2.Parameters.Add(parm); ///:22
parm = new OracleParameter("EndGewicht", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.kg, tr.MassEnd); cmd2.Parameters.Add(parm); ///:23
cmd2.ExecuteNonQuery(); /// Returns nr. of updated rows
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);
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
parm = new OracleParameter("ID_WzPruefreihe", OracleDbType.Int32); parm.Value = b.BatchNr; cmd2.Parameters.Add(parm); ///:3
parm = new OracleParameter("PruefungsNr", OracleDbType.Int32); parm.Value = testInfo.PruefungsNr; cmd2.Parameters.Add(parm); ///:4
///
parm = new OracleParameter("PVOL", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.l, tr.VolumeCTV); cmd2.Parameters.Add(parm); ///:5
parm = new OracleParameter("PMasse", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.kg, tr.MassEnd - tr.MassStart); cmd2.Parameters.Add(parm); ///:6
parm = new OracleParameter("MinDurchfluss", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.lph, tr.FlowMin); cmd2.Parameters.Add(parm); ///:7
parm = new OracleParameter("MaxDurchfluss", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.lph, tr.FlowMax); cmd2.Parameters.Add(parm); ///:8
parm = new OracleParameter("Q_ist", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.lph, Q_ist); cmd2.Parameters.Add(parm); ///:9
parm = new OracleParameter("KFaktor", OracleDbType.Double); parm.Value = tr.ConstMaster; cmd2.Parameters.Add(parm); ///:10
parm = new OracleParameter("Q_VZ", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.lph, tr.FlowVolume); cmd2.Parameters.Add(parm); ///:11
parm = new OracleParameter("F_VZ", OracleDbType.Double); parm.Value = tr.ErrorMaster; cmd2.Parameters.Add(parm); ///:12
parm = new OracleParameter("RegelEinstellZeit", OracleDbType.Double); parm.Value = (double)tr.FlowSetTime; cmd2.Parameters.Add(parm); ///:13
parm = new OracleParameter("Drehzahl", OracleDbType.Int32); parm.Value = 0; /* TODO */ cmd2.Parameters.Add(parm); ///:14
///
parm = new OracleParameter("BeginnDruck_Vorne", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.bar, tr.PressUpStart); cmd2.Parameters.Add(parm); ///:15
parm = new OracleParameter("BeginnDruck_Hinten", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.bar, tr.PressDownStart); cmd2.Parameters.Add(parm); ///:16
parm = new OracleParameter("EndDruck_Vorne", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.bar, tr.PressUpEnd); cmd2.Parameters.Add(parm); ///:17
parm = new OracleParameter("EndDruck_Hinten", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.bar, tr.PressDownEnd); cmd2.Parameters.Add(parm); ///:18
///
parm = new OracleParameter("TVWZ", OracleDbType.Double); parm.Value = tr.TestTime; cmd2.Parameters.Add(parm); ///:19
parm = new OracleParameter("IVWZ", OracleDbType.Int32); parm.Value = tr.PulsesMaster; cmd2.Parameters.Add(parm); ///:20
parm = new OracleParameter("Verwendeter_VZ", OracleDbType.Int32); parm.Value = 0; /* TODO */ cmd2.Parameters.Add(parm); ///:21
parm = new OracleParameter("BeginnGewicht", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.kg, tr.MassStart); cmd2.Parameters.Add(parm); ///:22
parm = new OracleParameter("EndGewicht", OracleDbType.Double); parm.Value = Units.ConvertTo(Unit.kg, tr.MassEnd); cmd2.Parameters.Add(parm); ///:23
///
cmd2.ExecuteNonQuery(); /// Returns nr. of updated rows
log.InfoFormat("VT_PRUEFDURCHFLUSS_PD inserted ({0}, {1}, {2}, {3}, {4} ...)", Anbid_StaraTura, 18000 + b.TestBenchId, b.BatchNr, testInfo.PruefungsNr, Q_ist);
#endif
}
else
{
log.WarnFormat("SIM: VT_PRUEFDURCHFLUSS_PD inserted ({0}, {1}, {2}, {3}, {4} ...)", Anbid_StaraTura, 18000 + b.TestBenchId, b.BatchNr, testInfo.PruefungsNr, Q_ist);
}
}
}
@ -840,64 +856,83 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
if (max_Pruefindex % 100 == 1)
{
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);
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);
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 = dbCfg.Baujahr });
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 = dbCfg.Baujahr });
cmd.ExecuteNonQuery();
log.InfoFormat("VT_ZAEHLER_PD inserted, PcbNr={0}, pos={1}, maxPruefix={2}", wm.SerialNr, wm.WMPosition, max_Pruefindex);
cmd.ExecuteNonQuery();
log.InfoFormat("VT_ZAEHLER_PD inserted, PcbNr={0}, pos={1}, maxPruefix={2}", wm.SerialNr, wm.WMPosition, max_Pruefindex);
}
else
{
log.WarnFormat("SIM: VT_ZAEHLER_PD inserted, PcbNr={0}, pos={1}, maxPruefix={2}", wm.SerialNr, wm.WMPosition, max_Pruefindex);
}
}
else
{
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);
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);
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 = dbCfg.Baujahr });
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 });
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 = dbCfg.Baujahr });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Varchar2, Value = wm.SerialNr });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura });
cmd.ExecuteNonQuery();
log.InfoFormat("VT_ZAEHLER_PD updated, PcbNr={0}, pos={1}, maxPruefix={2}", wm.SerialNr, wm.WMPosition, max_Pruefindex);
cmd.ExecuteNonQuery();
log.InfoFormat("VT_ZAEHLER_PD updated, PcbNr={0}, pos={1}, maxPruefix={2}", wm.SerialNr, wm.WMPosition, max_Pruefindex);
}
else
{
log.WarnFormat("SIM: VT_ZAEHLER_PD updated, PcbNr={0}, pos={1}, maxPruefix={2}", wm.SerialNr, wm.WMPosition, max_Pruefindex);
}
}
{
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)" +
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)" +
" 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 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = max_Pruefindex });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 18000 + wm.Batch.TestBenchId });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Batch.BatchNr });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = hydr_Pruefung });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = max_Pruefindex });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 18000 + wm.Batch.TestBenchId });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Batch.BatchNr });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = hydr_Pruefung });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = wm.OrigCalibFactor });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// TODO
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.WMPosition });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Passed ? 1 : 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = idBenutzer });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 3 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 0 }); /// TODO
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.WMPosition });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Passed ? 1 : 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = idBenutzer });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = 3 });
cmd.ExecuteNonQuery();
cmd.ExecuteNonQuery();
log.InfoFormat("VT_ZAEHLER_PINDEX_PD inserted, PcbNr={0}, pos={1}, pruefix={2}", wm.SerialNr, wm.WMPosition, max_Pruefindex % 100);
}
else
{
log.WarnFormat("SIM: VT_ZAEHLER_PINDEX_PD inserted, PcbNr={0}, pos={1}, pruefix={2}", wm.SerialNr, wm.WMPosition, max_Pruefindex % 100);
}
foreach (var testInfo in completeTestInfos)
@ -943,28 +978,33 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
}
{
if (!dbCfg.TestMode)
{
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, " +
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);
" VALUES (:1, :2, :3, :4, :5, :6, :7, :8, :9, :10, :11)", conn);
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 = Anbid_StaraTura });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Hz2CorrectionDone ? 1 : 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = max_Pruefindex });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_StaraTura });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Hz2CorrectionDone ? 1 : 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = wm.Hz2Correction });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Min(99.0, Math.Max(-99.0, wm.Diff2Hz8Hz)) });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Q2CorrectionDone ? 1 : 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Q2CorrLR });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Q2CorrectionDone ? 1 : 0 });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Q2CorrLR });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = q2ErrWOCorrection });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Q2CorrFlowRight }); /// 1 = R->L
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Q2CorrRL });
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Q2CorrFlowRight }); /// 1 = R->L
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wm.Q2CorrRL });
int rowsUpdated = cmd.ExecuteNonQuery();
int rowsUpdated = cmd.ExecuteNonQuery();
log.InfoFormat("VT_IP_ZAEHLER_PINDEX_PD inserted, PcbNr={0}, pruefix={1}", wm.SerialNr, max_Pruefindex);
}
else
{
log.WarnFormat("SIM: VT_IP_ZAEHLER_PINDEX_PD inserted, PcbNr={0}, pruefix={1}", wm.SerialNr, max_Pruefindex);
}
}
@ -978,32 +1018,40 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
{
double Q_wm = 3600.0 * mtr.VolumeMeter / mtr.TestTime; /// in [l/hour]
double Q_wm_with_upper_bound = Math.Min(2 * 1000 * mtr.TestRslt.FlowVolume, Math.Max(0.0, Q_wm));
int retv = 0;
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);
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)" +
" 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) });
int retv = cmd.ExecuteNonQuery();
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) });
retv = cmd.ExecuteNonQuery();
log.DebugFormat("VT_PRUEFREIHE_IST_PD inserted, PcbNr={0}, pruefungsNr={1}, error={2}", mtr.WaterMeter.SerialNr, pruefungsNr, mtr.Error);
}
else
{
log.WarnFormat("SIM: VT_PRUEFREIHE_IST_PD inserted, PcbNr={0}, pruefungsNr={1}, error={2}", mtr.WaterMeter.SerialNr, pruefungsNr, mtr.Error);
}
log.DebugFormat("VT_PRUEFREIHE_IST_PD inserted, PcbNr={0}, pruefungsNr={1}, error={2}", mtr.WaterMeter.SerialNr, pruefungsNr, mtr.Error);
return retv;
}
#endif

View File

@ -38,8 +38,9 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
public DBUsed DBUsed;
public int Baujahr; /// Written to the database
public bool ReadStartInfo;
public bool SaveResults;
public bool StartInfoIsRequired;
public bool SaveResults;
public bool TestMode;
/// Private parameterless constructor invoked by all other (public) constructors
@ -53,6 +54,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
ReadStartInfo = true;
SaveResults = true;
StartInfoIsRequired = false;
TestMode = false;
}
public DatabaseCfg(IComponentFactory factory)
@ -63,14 +65,15 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
public string ToString(int i)
{
return string.Format("Name={0}, BenchId={1}, DB={2}, Bjahr={3}, RdStartInfo={4}, SaveRslts={5}, StartInfoRqrd={6}",
return string.Format("Name={0}, BenchId={1}, DB={2}, Bjahr={3}, RdStartInfo={4}, SaveRslts={5}, StartInfoRqrd={6}, TestMode={7}",
Name,
TestBenchId,
DBUsed,
Baujahr,
ReadStartInfo,
SaveResults,
StartInfoIsRequired);
StartInfoIsRequired,
TestMode);
}
}
}

View File

@ -51,8 +51,9 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
dbUsedComboBox.Text = config.DBUsed.ToString();
baujahrTextBox.Text = config.Baujahr.ToString();
readStartInfoCheckBox.Checked = config.ReadStartInfo;
saveResultsCheckBox.Checked = config.SaveResults;
startInfoIsRequiredCheckBox.Checked = config.StartInfoIsRequired;
saveResultsCheckBox.Checked = config.SaveResults;
testModeCheckBox.Checked = config.TestMode;
}
public void Unlock()
@ -62,8 +63,9 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
dbUsedComboBox.Enabled = true;
baujahrTextBox.Enabled = true;
readStartInfoCheckBox.Enabled = true;
saveResultsCheckBox.Enabled = true;
startInfoIsRequiredCheckBox.Enabled = true;
saveResultsCheckBox.Enabled = true;
testModeCheckBox.Enabled = true;
}
public CfgUpdateFlags VerifyCfg(ref string message)
@ -128,8 +130,9 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
}
flags |= UpdateDifferent(ref config.ReadStartInfo, readStartInfoCheckBox.Checked, CfgUpdateFlags.AnyChange | CfgUpdateFlags.RestartRqrd);
flags |= UpdateDifferent(ref config.SaveResults, saveResultsCheckBox.Checked, CfgUpdateFlags.AnyChange | CfgUpdateFlags.RestartRqrd);
flags |= UpdateDifferent(ref config.StartInfoIsRequired, startInfoIsRequiredCheckBox.Checked, CfgUpdateFlags.AnyChange | CfgUpdateFlags.RestartRqrd);
flags |= UpdateDifferent(ref config.SaveResults, saveResultsCheckBox.Checked, CfgUpdateFlags.AnyChange | CfgUpdateFlags.RestartRqrd);
flags |= UpdateDifferent(ref config.TestMode, testModeCheckBox.Checked, CfgUpdateFlags.AnyChange | CfgUpdateFlags.RestartRqrd);
return flags;
}

View File

@ -43,6 +43,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
this.baujahrTextBox = new System.Windows.Forms.TextBox();
this.baujahrLabel = new System.Windows.Forms.Label();
this.startInfoIsRequiredCheckBox = new System.Windows.Forms.CheckBox();
this.testModeCheckBox = new System.Windows.Forms.CheckBox();
this.SuspendLayout();
//
// nameTextBox
@ -75,10 +76,10 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
//
this.readStartInfoCheckBox.AutoSize = true;
this.readStartInfoCheckBox.Enabled = false;
this.readStartInfoCheckBox.Location = new System.Drawing.Point(111, 136);
this.readStartInfoCheckBox.Location = new System.Drawing.Point(111, 145);
this.readStartInfoCheckBox.Name = "readStartInfoCheckBox";
this.readStartInfoCheckBox.Size = new System.Drawing.Size(95, 17);
this.readStartInfoCheckBox.TabIndex = 15;
this.readStartInfoCheckBox.TabIndex = 9;
this.readStartInfoCheckBox.Text = "Read start info";
this.readStartInfoCheckBox.UseVisualStyleBackColor = true;
//
@ -86,17 +87,17 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
//
this.saveResultsCheckBox.AutoSize = true;
this.saveResultsCheckBox.Enabled = false;
this.saveResultsCheckBox.Location = new System.Drawing.Point(111, 159);
this.saveResultsCheckBox.Location = new System.Drawing.Point(111, 200);
this.saveResultsCheckBox.Name = "saveResultsCheckBox";
this.saveResultsCheckBox.Size = new System.Drawing.Size(84, 17);
this.saveResultsCheckBox.TabIndex = 16;
this.saveResultsCheckBox.TabIndex = 11;
this.saveResultsCheckBox.Text = "Save results";
this.saveResultsCheckBox.UseVisualStyleBackColor = true;
//
// benchIdTextBox
//
this.benchIdTextBox.Enabled = false;
this.benchIdTextBox.Location = new System.Drawing.Point(110, 51);
this.benchIdTextBox.Location = new System.Drawing.Point(110, 53);
this.benchIdTextBox.Name = "benchIdTextBox";
this.benchIdTextBox.Size = new System.Drawing.Size(57, 20);
this.benchIdTextBox.TabIndex = 4;
@ -104,7 +105,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
// benchIdLabel
//
this.benchIdLabel.AutoSize = true;
this.benchIdLabel.Location = new System.Drawing.Point(19, 54);
this.benchIdLabel.Location = new System.Drawing.Point(19, 56);
this.benchIdLabel.Name = "benchIdLabel";
this.benchIdLabel.Size = new System.Drawing.Size(76, 13);
this.benchIdLabel.TabIndex = 3;
@ -114,7 +115,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
//
this.dbUsedComboBox.Enabled = false;
this.dbUsedComboBox.FormattingEnabled = true;
this.dbUsedComboBox.Location = new System.Drawing.Point(110, 73);
this.dbUsedComboBox.Location = new System.Drawing.Point(110, 76);
this.dbUsedComboBox.Name = "dbUsedComboBox";
this.dbUsedComboBox.Size = new System.Drawing.Size(145, 21);
this.dbUsedComboBox.TabIndex = 6;
@ -122,7 +123,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
// dbUsedLabel
//
this.dbUsedLabel.AutoSize = true;
this.dbUsedLabel.Location = new System.Drawing.Point(19, 76);
this.dbUsedLabel.Location = new System.Drawing.Point(19, 78);
this.dbUsedLabel.Name = "dbUsedLabel";
this.dbUsedLabel.Size = new System.Drawing.Size(79, 13);
this.dbUsedLabel.TabIndex = 5;
@ -131,7 +132,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
// baujahrTextBox
//
this.baujahrTextBox.Enabled = false;
this.baujahrTextBox.Location = new System.Drawing.Point(110, 95);
this.baujahrTextBox.Location = new System.Drawing.Point(110, 100);
this.baujahrTextBox.Name = "baujahrTextBox";
this.baujahrTextBox.Size = new System.Drawing.Size(57, 20);
this.baujahrTextBox.TabIndex = 8;
@ -139,7 +140,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
// baujahrLabel
//
this.baujahrLabel.AutoSize = true;
this.baujahrLabel.Location = new System.Drawing.Point(19, 98);
this.baujahrLabel.Location = new System.Drawing.Point(19, 103);
this.baujahrLabel.Name = "baujahrLabel";
this.baujahrLabel.Size = new System.Drawing.Size(43, 13);
this.baujahrLabel.TabIndex = 7;
@ -149,17 +150,29 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
//
this.startInfoIsRequiredCheckBox.AutoSize = true;
this.startInfoIsRequiredCheckBox.Enabled = false;
this.startInfoIsRequiredCheckBox.Location = new System.Drawing.Point(110, 182);
this.startInfoIsRequiredCheckBox.Location = new System.Drawing.Point(130, 168);
this.startInfoIsRequiredCheckBox.Name = "startInfoIsRequiredCheckBox";
this.startInfoIsRequiredCheckBox.Size = new System.Drawing.Size(119, 17);
this.startInfoIsRequiredCheckBox.TabIndex = 17;
this.startInfoIsRequiredCheckBox.TabIndex = 10;
this.startInfoIsRequiredCheckBox.Text = "Start info is required";
this.startInfoIsRequiredCheckBox.UseVisualStyleBackColor = true;
//
// testModeCheckBox
//
this.testModeCheckBox.AutoSize = true;
this.testModeCheckBox.Enabled = false;
this.testModeCheckBox.Location = new System.Drawing.Point(130, 223);
this.testModeCheckBox.Name = "testModeCheckBox";
this.testModeCheckBox.Size = new System.Drawing.Size(155, 17);
this.testModeCheckBox.TabIndex = 12;
this.testModeCheckBox.Text = "TestMode (no writes to DB)";
this.testModeCheckBox.UseVisualStyleBackColor = true;
//
// DatabaseCfgCtrl
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.testModeCheckBox);
this.Controls.Add(this.startInfoIsRequiredCheckBox);
this.Controls.Add(this.baujahrTextBox);
this.Controls.Add(this.baujahrLabel);
@ -173,7 +186,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
this.Controls.Add(this.nameLabel);
this.Controls.Add(this.classNameLabel);
this.Name = "DatabaseCfgCtrl";
this.Size = new System.Drawing.Size(300, 230);
this.Size = new System.Drawing.Size(383, 291);
this.Load += new System.EventHandler(this.WriterCfgCtrl_Load);
this.ResumeLayout(false);
this.PerformLayout();
@ -194,5 +207,6 @@ namespace TBF.BenchControl.Output.DB.SensusOracle
private System.Windows.Forms.TextBox baujahrTextBox;
private System.Windows.Forms.Label baujahrLabel;
private System.Windows.Forms.CheckBox startInfoIsRequiredCheckBox;
private System.Windows.Forms.CheckBox testModeCheckBox;
}
}