processUpdate method
Implementation
@override
Future<RemoteDto?> processUpdate() async {
FieldData? originalDto = null;
RemoteDto? remoteDto;
bool entryFound = true;
try {
originalDto = await tableTransactions.find();
String crc=DataTools.getCrcFromTable(tableTransactions.table_id, originalDto, smdSys);
tableTransactions.setCrc(crc);
} on SqlException catch (e) {
if (e.sqlExceptionEnum == SqlExceptionEnum.ENTRY_NOT_FOUND) {
entryFound = false;
waterLine.setWaterError(WaterError.ID_NOT_FOUND);
remoteDto = await commitChanges(null);
} else if (e.sqlExceptionEnum == SqlExceptionEnum.FAILED_SELECT) {
waterLine.setWaterError(WaterError.INVALID_ENTRY);
remoteDto = await commitChanges(null);
} else rethrow;
}
if (entryFound) {
remoteDto = await super.writeUpdate(originalDto);
}
return remoteDto;
}