diff --git a/Results/Entities/MeterTestRslt.cs b/Results/Entities/MeterTestRslt.cs index c6a7f650d..03ebb92fb 100644 --- a/Results/Entities/MeterTestRslt.cs +++ b/Results/Entities/MeterTestRslt.cs @@ -27,8 +27,7 @@ namespace Results.Entities public virtual double Error { get; set; } /// [%] public virtual long ErrorIndicators { get; set; } /// Not mapped to DB !!!, bit24=E25, bit25=E26, bit26=E27, bit27=E28 (error flags) public virtual long InfoIndicators { get; set; } /// Not mapped to DB !!!, bit24=E25, bit25=E26, bit26=E27, bit27=E28 (info flags) - public virtual double KorrErrQ { get; set; } /// [%] not mapped to results DB, saved to Oracle DB - public virtual bool TestDone { get; set; } /// true = test was completed + public virtual bool TestDone { get; set; } /// true = test was completed public virtual bool Passed { get; set; } /// true = test passed, water meter is OK #if IPERL public virtual string ExtraDataPath { get; set; } /// Relative path to a file with opto-data/raw-data @@ -43,6 +42,7 @@ namespace Results.Entities public virtual float X9 { get; set; } #endif #if ORACLE_DB + public virtual double ErrorBC { get; set; } /// [%] error before correction, saved to Oracle to table VT_PRUEFREIHE_IST_PD as KorrErrQ public virtual double LastError { get; set; } /// [%] Previous test error at this Q in case Pruefindex > 1 #endif @@ -149,7 +149,6 @@ namespace Results.Entities Error = oriMTR.Error; ErrorIndicators = oriMTR.ErrorIndicators; InfoIndicators = oriMTR.InfoIndicators; - KorrErrQ = oriMTR.KorrErrQ; TestDone = oriMTR.TestDone; Passed = oriMTR.Passed; #if IPERL @@ -165,6 +164,7 @@ namespace Results.Entities X9 = oriMTR.X9; #endif #if ORACLE_DB + ErrorBC = oriMTR.ErrorBC; LastError = oriMTR.LastError; #endif } @@ -188,7 +188,6 @@ namespace Results.Entities Error = src.Error; ErrorIndicators = src.ErrorIndicators; InfoIndicators = src.InfoIndicators; - KorrErrQ = src.KorrErrQ; TestDone = src.TestDone; Passed = src.Passed; #if IPERL @@ -204,6 +203,7 @@ namespace Results.Entities X9 = src.X9; #endif #if ORACLE_DB + ErrorBC = src.ErrorBC; LastError = src.LastError; #endif } @@ -231,7 +231,6 @@ namespace Results.Entities writer.Write(Error); writer.Write(ErrorIndicators); writer.Write(InfoIndicators); - writer.Write(KorrErrQ); writer.Write(TestDone); writer.Write(Passed); #if IPERL @@ -247,6 +246,7 @@ namespace Results.Entities writer.Write(X9); #endif #if ORACLE_DB + writer.Write(ErrorBC); writer.Write(LastError); #endif writer.Write((TestRslt != null && TestRslt.Name() != null) ? TestRslt.Name() : string.Empty); @@ -271,7 +271,6 @@ namespace Results.Entities Error = reader.ReadDouble(); ErrorIndicators = reader.ReadInt64(); InfoIndicators = reader.ReadInt64(); - KorrErrQ = reader.ReadDouble(); TestDone = reader.ReadBoolean(); Passed = reader.ReadBoolean(); #if IPERL @@ -287,6 +286,7 @@ namespace Results.Entities X9 = reader.ReadSingle(); #endif #if ORACLE_DB + ErrorBC = reader.ReadDouble(); LastError = reader.ReadDouble(); #endif TestRslt = null; diff --git a/Results/Mappings/MeterTestRsltMap.cs b/Results/Mappings/MeterTestRsltMap.cs index 4225181d7..1bb53fb5d 100644 --- a/Results/Mappings/MeterTestRsltMap.cs +++ b/Results/Mappings/MeterTestRsltMap.cs @@ -24,7 +24,7 @@ namespace Results.Mappings Map(x => x.TimestampEnd); Map(x => x.TestTime); Map(x => x.Error); - Map(x => x.TestDone); + Map(x => x.TestDone); Map(x => x.Passed); #if IPERL Map(x => x.ExtraDataPath); @@ -39,7 +39,7 @@ namespace Results.Mappings Map(x => x.X9); #endif #if ORACLE_DB - Map(x => x.LastError); + Map(x => x.ErrorBC).Column("LastError"); #endif References(x => x.WaterMeter); References(x => x.TestRslt); diff --git a/TBF/BenchControl/Output/DB/SensusOracle/Database.cs b/TBF/BenchControl/Output/DB/SensusOracle/Database.cs index 207dcef64..37d84279f 100644 --- a/TBF/BenchControl/Output/DB/SensusOracle/Database.cs +++ b/TBF/BenchControl/Output/DB/SensusOracle/Database.cs @@ -1395,7 +1395,7 @@ namespace TBF.BenchControl.Output.DB.SensusOracle 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(100.0, Math.Max(-100.0, mtr.ErrorBC)) }); /// :14 korrerrq cmd.Parameters.Add(new OracleParameter { OracleDbType = OracleDbType.Double, Value = Math.Min(100000, mtr.TestTime) }); /// :15 tiz int retv = cmd.ExecuteNonQuery(); diff --git a/TBF/BenchControl/Output/FileWriters/IperlLogger/Writer.cs b/TBF/BenchControl/Output/FileWriters/IperlLogger/Writer.cs index 0f3e85ddd..f9df82384 100644 --- a/TBF/BenchControl/Output/FileWriters/IperlLogger/Writer.cs +++ b/TBF/BenchControl/Output/FileWriters/IperlLogger/Writer.cs @@ -392,13 +392,15 @@ namespace TBF.BenchControl.Output.FileWriters.IperlLogger logger.WriteLine(string.Format("ZeitImpulse{0}={1}", flID, mtr.TestTime.ToString(Program.AltCulture))); logger.WriteLine(string.Format("Impulse{0}={1}", flID, 0)); logger.WriteLine(string.Format("Volumen{0}={1}", flID, mtr.VolumeMeter.ToString(Program.AltCulture))); - logger.WriteLine(string.Format("KorrFehler{0}={1}", flID, (mtr.TestData().Method != null) && mtr.TestData().Method.Contains("iPerlCommunication") && ((mtr.WaterMeter.Q2CorrRL != 0) || (mtr.WaterMeter.Q2CorrLR != 0)) - ? mtr.WaterMeter.Q2ErrWOCorrection.ToString(Program.AltCulture) - : mtr.Error.ToString(Program.AltCulture))); +#if ORACLE_DB + logger.WriteLine(string.Format("KorrFehler{0}={1}", flID, mtr.ErrorBC.ToString(Program.AltCulture))); +#else + logger.WriteLine(string.Format("KorrFehler{0}={1}", flID, mtr.Error.ToString(Program.AltCulture))); +#endif logger.WriteLine(string.Format("KorrDurchfluss{0}={1}", flID, 0)); - logger.WriteLine(string.Format("Q{0}KorrBestanden={1}", flID, 0)); - logger.WriteLine(string.Format("Anfangsstand{0}={1}", flID, 0)); /// TODO - logger.WriteLine(string.Format("Endstand{0}={1}", flID, 0)); /// TODO + logger.WriteLine(string.Format("Q{0}KorrBestanden={1}", flID, mtr.Passed ? 1 : 0)); + logger.WriteLine(string.Format("Anfangsstand{0}={1}", flID, mtr.VolumeStart).ToString(Program.AltCulture)); + logger.WriteLine(string.Format("Endstand{0}={1}", flID, mtr.VolumeEnd).ToString(Program.AltCulture)); logger.WriteLine(string.Format("QMittelwert{0}={1}", flID, Utils.DoubleToStr(Units.ConvertTo(Unit.lph, mtr.FlowVolume()), 5, true))); logger.WriteLine(string.Format("QStandardAbweichung{0}={1}", flID, 0)); logger.WriteLine(string.Format("ImpedanzMittelwert{0}={1}", flID, "0,00000")); @@ -410,9 +412,14 @@ namespace TBF.BenchControl.Output.FileWriters.IperlLogger logger.WriteLine(string.Format("AusfallGrundGesamt={0}", 0)); logger.WriteLine(string.Format("AuftragNum={0}", wMtr.PurchaseOrder)); logger.WriteLine(string.Format("MaterialNum={0}", 38140500)); - logger.WriteLine(string.Format("Prefix={0}", "8SEN01")); - logger.WriteLine(string.Format("Suffix=")); - logger.WriteLine(string.Format("Palette={0}", 0)); +#if ORACLE_DB + logger.WriteLine(string.Format("Prefix={0}", wMtr.Prefix)); + logger.WriteLine(string.Format("Suffix={0}", wMtr.Suffix)); +#else + logger.WriteLine(string.Format("Prefix={0}", "8SEN")); + logger.WriteLine(string.Format("Suffix=")); +#endif + logger.WriteLine(string.Format("Palette={0}", 0)); logger.WriteLine(string.Format("Umkarton={0}", 0)); logger.WriteLine(string.Format("ZNr_komplett=")); logger.WriteLine(string.Format("OptikBewertung=0,00000")); diff --git a/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs b/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs index b5c6c073d..feb22365d 100644 --- a/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStart/FlyingStartSeq.cs @@ -685,6 +685,9 @@ namespace TBF.BenchControl.TestMethods.FlyingStart && (tstRslt.ErrorFlags == 0); meterRslt.TestDone = true; tstRslt.TestDone = true; +#if ORACLE_DB + meterRslt.ErrorBC = meterRslt.Error; +#endif } } } diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs index 7407cac94..ad9fbc6eb 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollProlonged/FlyingStartMassCollProlongedSeq.cs @@ -1100,7 +1100,10 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollProlonged && (tstRslt.ErrorFlags == 0); meterRslt.TestDone = true; tstRslt.TestDone = true; - } +#if ORACLE_DB + meterRslt.ErrorBC = meterRslt.Error; +#endif + } } } diff --git a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs index 490654c66..3420f078a 100644 --- a/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs +++ b/TBF/BenchControl/TestMethods/FlyingStartMassCollection/FlyingStartMassCollectionSeq.cs @@ -1047,7 +1047,10 @@ namespace TBF.BenchControl.TestMethods.FlyingStartMassCollection && (tstRslt.ErrorFlags == 0); meterRslt.TestDone = true; tstRslt.TestDone = true; - } +#if ORACLE_DB + meterRslt.ErrorBC = meterRslt.Error; +#endif + } } } diff --git a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationSeq.cs b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationSeq.cs index d19115065..784cee308 100644 --- a/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationSeq.cs +++ b/TBF/BenchControl/TestMethods/iPerlCommunication/iPerlCommunicationSeq.cs @@ -560,6 +560,9 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication if (meterRslt != null && oriMeterRslt != null) { +#if ORACLE_DB + meterRslt.ErrorBC = oriMeterRslt.Error; +#endif meterRslt.PulsesMeter = oriMeterRslt.PulsesMeter; meterRslt.PulsesMaster = oriMeterRslt.PulsesMaster; meterRslt.PulsesPerLiter = oriMeterRslt.PulsesPerLiter; @@ -584,7 +587,7 @@ namespace TBF.BenchControl.TestMethods.iPerlCommunication meterRslt.VolumeStart = 0; meterRslt.VolumeEnd = 0; meterRslt.Error = targetError - 0.1 * (oriMeterRslt.Error - targetError); - meterRslt.VolumeMeter = (100.0 + meterRslt.Error / 100.0) * oriMeterRslt.VolumeRef; + meterRslt.VolumeMeter = oriMeterRslt.VolumeRef * (100.0 + meterRslt.Error) / 100.0; meterRslt.Passed = true; meterRslt.TestDone = true; tstRslt.TestDone = true; diff --git a/TBF/Properties/AssemblyInfo.cs b/TBF/Properties/AssemblyInfo.cs index 9f062bfe7..45256812c 100644 --- a/TBF/Properties/AssemblyInfo.cs +++ b/TBF/Properties/AssemblyInfo.cs @@ -29,5 +29,5 @@ using System.Runtime.InteropServices; // Build Number // Revision // -[assembly: AssemblyVersion("2.26.1694.0")] -[assembly: AssemblyFileVersion("2.26.1694.0")] +[assembly: AssemblyVersion("2.26.1697.0")] +[assembly: AssemblyFileVersion("2.26.1697.0")]