Bug fixes : Oracle in Chennai, ver. 2.27.1783

This commit is contained in:
Milan Hanajik
2021-10-26 19:38:39 +02:00
parent eec84351ac
commit dd52b9d139
3 changed files with 21 additions and 17 deletions
+6 -5
View File
@@ -236,9 +236,10 @@ namespace TBF.Rig.Output.DB.SensusOracle
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
"WHERE anbid=:1 AND id_wztyp=:2 AND rev_wztyp=:3", conn);
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = Anbid_Producer }); ///:1
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wmTypeId }); ///:2
cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Int32, Value = wmTypeRevision }); ///:3
///
dr = cmd.ExecuteReader();
while (dr.Read())
@@ -1022,7 +1023,7 @@ namespace TBF.Rig.Output.DB.SensusOracle
void SaveOrUpdateIperl(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;
int idBenutzer = (Anbid_Producer == 4) ? 6 : (Anbid_Producer == 8) ? 365 : 6; // = wm.Batch.UserNumber;
if (dbCfg.DebugLevel == DebugMode.Normal)
{
@@ -1224,7 +1225,7 @@ namespace TBF.Rig.Output.DB.SensusOracle
void SaveOrUpdateMechanicalMeter(OracleConnection conn, Results.Entities.WaterMeter wm, int max_Pruefindex, int hydr_Pruefung)
{
int idBenutzer = 6; // = wm.Batch.UserNumber;
int idBenutzer = (Anbid_Producer == 4) ? 6 : (Anbid_Producer == 8) ? 365 : 6; // = wm.Batch.UserNumber;
string vt_identnummer = wm.SerialNr.Length > 8 ? wm.SerialNr.Substring(0, 8) : wm.SerialNr;
if (dbCfg.DebugLevel == DebugMode.Normal)
@@ -576,10 +576,10 @@ namespace TBF.Rig.TestMethods.iPerlCommunication
if (iPerl == null || ((iPerl.Q2CorrRL == 0) && (iPerl.Q2CorrLR == 0)))
{
/// Either no iPerl head or no Q2 correction
meterRslt.VolumeStart = oriMeterRslt.VolumeStart;
meterRslt.Error = oriMeterRslt.Error;
meterRslt.VolumeMeter = oriMeterRslt.VolumeMeter;
meterRslt.VolumeStart = oriMeterRslt.VolumeStart;
meterRslt.VolumeEnd = oriMeterRslt.VolumeEnd;
meterRslt.VolumeMeter = oriMeterRslt.VolumeMeter;
meterRslt.Error = oriMeterRslt.Error;
meterRslt.Passed = oriMeterRslt.Passed;
meterRslt.TestDone = true;
tstRslt.TestDone = true;
@@ -588,10 +588,11 @@ namespace TBF.Rig.TestMethods.iPerlCommunication
{
/// iPerl with Q2 correction => generate an artificial error equal to -1/10 of the original one (relative to Q2 target error)
double targetError = iPerl.CalibTargetQ2;
meterRslt.VolumeStart = 0;
meterRslt.VolumeEnd = 0;
meterRslt.Error = targetError - 0.1 * (oriMeterRslt.Error - targetError);
meterRslt.VolumeMeter = oriMeterRslt.VolumeRef * (100.0 + meterRslt.Error) / 100.0;
meterRslt.VolumeStart = oriMeterRslt.VolumeStart;
double signature = (oriMeterRslt.VolumeEnd > oriMeterRslt.VolumeStart) ? (+1) : (-1);
meterRslt.VolumeEnd = meterRslt.VolumeStart + signature * meterRslt.VolumeMeter;
meterRslt.Passed = true;
meterRslt.TestDone = true;
tstRslt.TestDone = true;