Hallo,
guten Morgen an Alle.
Ich bemühe mich gerade einbißchen in script einzuarbeiten. Als Anlehnung gibt es ja viele gute Beispiele, danke dafür.
Jetzt komme ich aber mit einem nicht weiter.
schedule ( "12 10 * * *" , async function () {
sendTo('sql.0', 'query', 'select sum(val) from iobroker.ts_number where id=86 ', function (sumsolarfeb22) {
if (sumsolarfeb22.error) {
console.error(sumsolarfeb22.error);
} else {
// show result
log('Rows: ' + JSON.stringify(sumsolarfeb22.result));
var test = JSON.stringify(sumsolarfeb22.result[0]["sumsolarfeb22"]);
log(test);
}
setState("0_userdata.0.SumSoFeb22", parseFloat(sumsolarfeb22.result[0]["sumsolarfeb22"]), true);
} ) } ) ;
13.2.2022, 10:22:00.048 [info ]: javascript.0 (26225) script.js.Skript-SumSolarFeb22: sendTo(adapter=sql.0, cmd=query, msg="select sum(val) from iobroker.ts_number where id=86 ")
13.2.2022, 10:22:00.081 [info ]: javascript.0 (26225) script.js.Skript-SumSolarFeb22: Rows: [{"sum(val)":223.24739}]
13.2.2022, 10:22:00.082 [info ]: javascript.0 (26225) script.js.Skript-SumSolarFeb22: undefined
13.2.2022, 10:22:00.083 [info ]: javascript.0 (26225) script.js.Skript-SumSolarFeb22: setForeignState(id=0_userdata.0.SumSoFeb22, state={"val":null,"ack":true,"c":"script.js.Skript-SumSolarFeb22"})
Der Wert wird durch die sql-Abfrage richtig übergeben, aber nicht im Datenpunkt eingetragen. Ich habe schon mal den Datenpunkt als string bzw. number geändert und neuangelegt, leider keine Änderung.
Solche Scripte mit sql-Abfrage habe ich mehrere im Einsatz, laufen alle bestens.
Habt Ihr einen Hinweis für mich??
Danke im Voraus.
Gruß Reinald