RegisterRerstorer: - initial register read BUGFIX

This commit is contained in:
Thomas Wiedebusch 2025-12-12 12:18:21 +01:00
parent f39db81014
commit 6b0b91980c

View File

@ -1102,6 +1102,9 @@ namespace Xylem.Common.Hardware.WaterMeter.Genesis.GenesisCore
/// <remarks date="2025-Nov-17" author="Thomas Wiedebusch">
/// - Login/Logout moved here.
/// </remarks>
/// <remarks date="2025-Dec-12" author="Thomas Wiedebusch">
/// - Redundant OOR message removed.
/// </remarks>
private StatusReturn WriteRegisterParameterSet(List<RecoveryRegisterItem> recoveryRegistersDb,
Int32 recRegistersCount, MeterRegisters meterRegisters, CancellationToken cancellationToken, Boolean fieldUpdate)
{
@ -1153,7 +1156,7 @@ namespace Xylem.Common.Hardware.WaterMeter.Genesis.GenesisCore
_currentGenesis.WriteLog(errorMessage);
OnProcessUpdate?.Invoke(this, new ProcessExecEventArgs(
$@"{Resources.StrWriteRegister} {_actualRegisterCtr} / {recRegistersCount}",
overallProcessCtrPercent, Resources.StrRegisterValueOutOfRange + " " + errorMessage));
overallProcessCtrPercent, errorMessage));
_currentGenesis?.Logout();
return StatusReturn.Failed;
}
@ -1630,6 +1633,12 @@ namespace Xylem.Common.Hardware.WaterMeter.Genesis.GenesisCore
/// <remarks date="2025-Apr-07" author="Thomas Wiedebusch">
/// - CancellationToken.
/// </remarks>
/// <remarks date="2025-Apr-07" author="Thomas Wiedebusch">
/// - CancellationToken.
/// </remarks>
/// <remarks date="2025-Dec-13" author="Thomas Wiedebusch">
/// - Repaired building of initial register list.
/// </remarks>
public Boolean InitialReadRegisters(CancellationToken cancellationToken)
{
if (_currentGenesis == null)
@ -1644,7 +1653,7 @@ namespace Xylem.Common.Hardware.WaterMeter.Genesis.GenesisCore
_pcbIdInitialRegisterRead = _currentGenesis.PcbId;
// create a dictionary for final read being able to compare those with the initial read and restored
if (!BuildReadableRegisterDictionary(ref _finalRegisters))
if (!BuildReadableRegisterDictionary(ref _initialRegisters))
return false;
// log to report file the initial register read string