FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: blofield am 15 April 2021, 17:43:51

Titel: [gelöst] setreading mit Value 0 im Dummy geht nicht
Beitrag von: blofield am 15 April 2021, 17:43:51
Moin,

ich habe ein kleines Problem.
Ich möchte in einem Dummy ein reading mit setreading setzen. Das Value für das reading wird mit dbrep aus einer Datenbank geholt und zyklisch mit einem at geschrieben.
Das funktioniert auch prima, allerdings kann das Value auch mal "0" [null] sein. Immer wenn es "0" ist, bekomme ich allerdings den folgenden Fehler im Log:

Usage: setreading <name> [YYYY-MM-DD HH:MM:SS] <reading> <value>
where <name> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.

Warum kann denn das Value in einem Dummy reading nicht 0 sein? Das halte ich für ziemlich legitim.
Was mache ich falsch?

Mein at:

+*01:00 {
{ fhem "setreading Tarif tarif ".DbReadingsVal("dbrep","Tarif:tarif",FmtDateTime(time),"") }}
}


Danke,
blofield
Titel: Antw:setreading mit Value 0 im Dummy geht nicht
Beitrag von: KernSani am 15 April 2021, 18:07:13
Generell ist es kein Problem ein Reading mit mit setreading auf 0 zu setzen. Bist du denn sicher, dass eine "0" kommt und nicht einfach nichts (das würde auch die Fehlermeldung erklären) Dein Default-Wert ist zumindest "" (blank)
Titel: Antw:setreading mit Value 0 im Dummy geht nicht
Beitrag von: jhohmann am 15 April 2021, 18:21:26
Du kannst ja mal in dem Aufruf hinten den Default ändern, z.B. Blubb (oder auch 0  ;)):
DbReadingsVal("dbrep","Tarif:tarif",FmtDateTime(time),"Blubb")
Titel: Antw:setreading mit Value 0 im Dummy geht nicht
Beitrag von: blofield am 15 April 2021, 18:35:02
Interessant,
ich bin davon ausgegangen, dass die 0 auch geliefert wird, weil die ja so in der Datenbank steht. Das hatte ich direkt in der Datenbank geprüft und alle anderen Werte kommen auch.
Wenn ich allerdings dbreadingsval direkt in FHEM aufrufe, dann kommt tatsächlich nichts! und solange kein Defaultwert definiert ist, gibt es einen Fehler.
Ich setze jetzt eine "0" als default und schaue mal ob das bei dbrep ein Feature oder Fehler ist ;)

Danke!