NEWS
Summenberechnung
-
ok dann kann ich diese Datenpunkte nicht zur Berechnung nehmen.
-
@ostseereiter Doch... das sind Zahlen. Zeig mal dein Blockly als Grafik, vielleicht sehe ich dann was faul ist.
-
@AlCalzone sagte in Summenberechnung:
@ostseereiter Deine Daten sind vermutlich Zeichenketten (strings) statt Zahlen. Da sorgt ein + für eine einfache Verkettung.
noe, sourceanalyitx speichert diese als number ich rechne intern im adapter ja auch damit.
"common": { "name": "current Day ", "type": "number", "role": "value.week", "unit": "€", "def": 0, "read": true
-
Hier mal die Fotos
-
@ostseereiter Sieht erst mal gut aus - Kannst du noch den daraus generierten JS-Code zeigen?
-
@AlCalzone sagte in Summenberechnung:
Sieht erst mal gut aus - Kannst du noch den daraus generierten JS-Code zeigen?
Ist das nicht den ich oben gepostet habe?
-
schedule("*/20 */4 * * *", function () { setStateDelayed(".Meine_Geräte.BKosten"/*BKosten*/, (Math.round(getState("sourceanalytix.0.sonoff__0__Sonoff-Furanlage__ENERGY_Total.cost.05_current_year").val) + getState("sourceanalytix.0.sonoff__0__Sonoff-Kühlschrank__ENERGY_Total.cost.05_current_year").val + getState("sourceanalytix.0.sonoff__0__Sonoff-Spuelmaschine1__ENERGY_Total.cost.05_current_year").val + getState("sourceanalytix.0.sonoff__0__Sonoff-Trockner__ENERGY_Total.cost.05_current_year").val + getState("sourceanalytix.0.sonoff__0__Sonoff-Waschmaschiene__ENERGY_Total.cost.05_current_year").val), 1000, false); }); //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnNjaGVkdWxlJTIyJTIwaWQlM0QlMjI1JTNGdnElNjB1JTNGX21KLXJKJTJGNS5rRlhDJTIyJTIweCUzRCUyMi0zMzglMjIlMjB5JTNEJTIyLTM3JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU0NIRURVTEUlMjIlM0UqJTJGMjAlMjAqJTJGNCUyMColMjAqJTIwKiUzQyUyRmZpZWxkJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2wlMjIlMjBpZCUzRCUyMiU3Q0tHJTNGfm9vSlVnKkwlMjMtSCU1RS5jJTNELiUyMiUzRSUzQ211dGF0aW9uJTIwZGVsYXlfaW5wdXQlM0QlMjJ0cnVlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UuTWVpbmVfR2VyJUMzJUE0dGUuQktvc3RlbiUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyV0lUSF9ERUxBWSUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkRFTEFZX01TJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVU5JVCUyMiUzRXNlYyUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ0xFQVJfUlVOTklORyUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfYXJpdGhtZXRpYyUyMiUyMGlkJTNEJTIyJTNEJTdEWHRhOUMwNk5VX0UlM0FUfiFhJTNCJTQwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VBREQlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkElMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMmYzYyUzRil0dEt6X1k3NSU0MFpVS1FFbiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfcm91bmQlMjIlMjBpZCUzRCUyMjElMkZteVBQS1NSUTRJSUdtelUlM0ZnNSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFUk9VTkQlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk5VTSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyJTNEOFJUR3NFVC4qcU16dVlwJTJGS18oJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMy4xJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWUlMjIlMjBpZCUzRCUyMiU0MF8lM0RCR2FyJTVEOHklNUV3OW0lNUV2V2p6JTdEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXZhbCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFc291cmNlYW5hbHl0aXguMC5zb25vZmZfXzBfX1Nvbm9mZi1GdXJhbmxhZ2VfX0VORVJHWV9Ub3RhbC5jb3N0LjA1X2N1cnJlbnRfeWVhciUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjI2V2U0JTNCS18lMjN2TiUyNWdhblV5JTIzJTNCcG0lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX2FyaXRobWV0aWMlMjIlMjBpZCUzRCUyMnpSJTJCJTJDQXVvcUFmKCUzRnR1ISUzRkRoeUslMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUFERCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyc1VIJTdDMCgzJTNGJTJCU1FqZl9ncSUyNXQ2biUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyQWVKZU5MS3FXYUx5LiUyM1ElN0J0X0tyJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXZhbCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFc291cmNlYW5hbHl0aXguMC5zb25vZmZfXzBfX1Nvbm9mZi1LJUMzJUJDaGxzY2hyYW5rX19FTkVSR1lfVG90YWwuY29zdC4wNV9jdXJyZW50X3llYXIlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJ0aDZPJTdCS0o0TlVwbWI1azclN0IlNURqWCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfYXJpdGhtZXRpYyUyMiUyMGlkJTNEJTIyVG0wRiFaODhvNyFqJTIzWE4hJTdDIUJMJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VBREQlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkElMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMiU3RDd0ZWQlMjUyWCU1RCU3QyUyM0slM0JHOCUyQ2MlN0MlMkYlNjAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWUlMjIlMjBpZCUzRCUyMkhKbyUzQWolMkJsfmUlM0FPJTYwJTVEJTYwWSFxeihPJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXZhbCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFc291cmNlYW5hbHl0aXguMC5zb25vZmZfXzBfX1Nvbm9mZi1TcHVlbG1hc2NoaW5lMV9fRU5FUkdZX1RvdGFsLmNvc3QuMDVfY3VycmVudF95ZWFyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyWm8qNSl5WCUyQ1IzJTYwMGlKKiU2MHhrZ34lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX2FyaXRobWV0aWMlMjIlMjBpZCUzRCUyMiUzRFVTejlhNSF0ZmIyKk5GaDlVUSklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUFERCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyNEdtWGdkZjBEVCU3Q001QjNRfi1faCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZSUyMiUyMGlkJTNEJTIyZ0slNUUlN0RpKiUzQnV+JTJCfkFIVnpPTV8yJTJCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXZhbCUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFc291cmNlYW5hbHl0aXguMC5zb25vZmZfXzBfX1Nvbm9mZi1Ucm9ja25lcl9fRU5FUkdZX1RvdGFsLmNvc3QuMDVfY3VycmVudF95ZWFyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyNGQlNDAlM0RrNmgpTyU0MCUyQm8lNURpY21rZXl5JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFMSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZ2V0X3ZhbHVlJTIyJTIwaWQlM0QlMjI2TSUyM3JoYiU2MHB6TCU0MG9ERWglNjAlN0JTaHYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0Vzb3VyY2VhbmFseXRpeC4wLnNvbm9mZl9fMF9fU29ub2ZmLVdhc2NobWFzY2hpZW5lX19FTkVSR1lfVG90YWwuY29zdC4wNV9jdXJyZW50X3llYXIlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnhtbCUzRQ==
-
@ostseereiter Auch das erklärt nicht, warum da Zeichenketten verknüpft werden
Wie ist dein Ergebnis-State definiert? -
-
@ostseereiter Dann verstehe ich es nicht - sieht alles sinnvoll aus...
-
Hallo,
Zum rechnen verpacke ich die Werte immer in Floats. Wie das bei blockly geht weiß ich nicht.var summe=parseFloat(zahl1) +parseFloat(zahl2) ;
-
@ostseereiter
Das einzig Auffällige ist, dass die Datenpunkt-ID mit einem Punkt beginnt.setStateDelayed(".Meine_Geräte.BKosten"/*BKosten*/,
-
@peterfido Die Werte sind aber schon Zahlen, da ist parseFloat unnötig. Zumindest wenn man nach der Datenpunktdefinition geht.
-
Dann weiß ich nicht. Danke euch.
@peterfido von Floats habe ich noch weniger Ahnung. trotzdem danke. -
Hallo,
meiner Erfahrung nach wandelt der gern mal Typen ungefragt um. Mit parseFloat vor jedem Wert läuft es für mich zuverlässiger. -
Vielleicht verhält sich die Liste anders?
-
@iomountain sagte in Summenberechnung:
<block xmlns="http://www.w3.org/1999/xhtml" type="schedule" id="5?vq
u?_mJ-rJ/5.kFXC" x="-287" y="-12"> <field name="SCHEDULE">*/20 */4 * * *</field> <statement name="STATEMENT"> <block type="control" id="|KG?~ooJUg*L#-H^.c=."> <mutation delay_input="false"></mutation> <field name="OID">.Meine_Geräte.BKosten</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_on_list" id="(:;g^.KsDJLYhyZrP
Y=">
<mutation op="SUM"></mutation>
<field name="OP">SUM</field>
<value name="LIST">
<block type="lists_create_with" id="3|{F6[Szkq;Dn,vsssa"> <mutation items="5"></mutation> <value name="ADD0"> <shadow type="math_number" id="=8RTGsET.*qMzuYp/K_("> <field name="NUM">3.1</field> </shadow> <block type="math_rndfixed" id="xJ
^7Md:9Dm2*,-Qk[j"> <field name="n">2</field> <value name="x"> <shadow type="math_number" id="]ICY1Ngu|;}c5,8
)V3z">
<field name="NUM">3.1234</field>
</shadow>
<block type="get_value" id="@_=BGar]8y^w9m^vWjz}">
<field name="ATTR">val</field>
<field name="OID">sourceanalytix.0.sonoff__0__Sonoff-Furanlage__ENERGY_Total.cost.05_current_year</field>
</block>
</value>
</block>
</value>
<value name="ADD1">
<block type="math_rndfixed" id="?Pf-!z-MUB#z~vO)hoD/">
<field name="n">2</field>
<value name="x">
<shadow type="math_number" id="]ICY1Ngu|;}c5,8)V3z"> <field name="NUM">3.1234</field> </shadow> <block type="get_value" id="AeJeNLKqWaLy.#Q{t_Kr"> <field name="ATTR">val</field> <field name="OID">sourceanalytix.0.sonoff__0__Sonoff-Kühlschrank__ENERGY_Total.cost.05_current_year</field> </block> </value> </block> </value> <value name="ADD2"> <block type="math_rndfixed" id="Pf~k0
%duv?MM=NeA{{q">
<field name="n">2</field>
<value name="x">
<shadow type="math_number" id="DNB|.f5e~ysOUVEoHZ}"> <field name="NUM">3.1234</field> </shadow> <block type="get_value" id="HJo:j+l~e:O
]Y!qz(O"> <field name="ATTR">val</field> <field name="OID">sourceanalytix.0.sonoff__0__Sonoff-Spuelmaschine1__ENERGY_Total.cost.05_current_year</field> </block> </value> </block> </value> <value name="ADD3"> <block type="math_rndfixed" id="Qoa:-~5}n1HWG,v+p=a-"> <field name="n">2</field> <value name="x"> <shadow type="math_number" id="nBG,p20D:TDm[4)I2fij"> <field name="NUM">3.1234</field> </shadow> <block type="get_value" id="gK^}i*;u~+~AHVzOM_2+"> <field name="ATTR">val</field> <field name="OID">sourceanalytix.0.sonoff__0__Sonoff-Trockner__ENERGY_Total.cost.05_current_year</field> </block> </value> </block> </value> <value name="ADD4"> <block type="math_rndfixed" id="dtK8(V,W!@a^J)!O9ye:"> <field name="n">2</field> <value name="x"> <shadow type="math_number" id="sG,v~RS[Y9~VEw*lHw4_"> <field name="NUM">3.1234</field> </shadow> <block type="get_value" id="6M#rhb
pzL@oDEh`{Shv">
<field name="ATTR">val</field>
<field name="OID">sourceanalytix.0.sonoff__0__Sonoff-Waschmaschiene__ENERGY_Total.cost.05_current_year</field>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</value>
</block>
</statement>
</block>Danke das versuche ich mal
-
@iomountain
war fast gut es kommt aber ne komplett falsche Summe raus.
-
wenn du noch Lust hast, viele Debugbausteine, vielleicht zeigt das den Fehler:
wenn wir den Fehler so nicht finden musst du wohl auf Javascript umsteigen
-
@iomountain habe das blocklyscript eingerichtet mal sehen was jetzt dabei raus kommt.