NEWS
Tankerkönig widgets zeitweise leer
-
Seit einiger Zeit habe ich immer wieder weiße Flecken in meinem Tankerkönig view

Heute habe ich mir die Objekte angesehen jnd festgestellt, dass bei den betroffenen Preisen der Wert bei 3rd auf 10 steht.

was überhaupt keinen Sinn ergibt die dritte Stelle ct zweistellig anzugeben.
Auf der Website vom Tankerkönig ist alles ok und die dritte Stelle ist eine 9.Ändere ich den Wert auf 9 wird das Widget wieder korrekt angezeigt. Der Wert der dritten Stelle wird für die Sichtbarkeit verwendet (9/4).
beim nächsten Abruf betrifft es dann ggf. andere Preise
Hat noch jemand dieses Problem oder gar eine Lösung?
-
Seit einiger Zeit habe ich immer wieder weiße Flecken in meinem Tankerkönig view

Heute habe ich mir die Objekte angesehen jnd festgestellt, dass bei den betroffenen Preisen der Wert bei 3rd auf 10 steht.

was überhaupt keinen Sinn ergibt die dritte Stelle ct zweistellig anzugeben.
Auf der Website vom Tankerkönig ist alles ok und die dritte Stelle ist eine 9.Ändere ich den Wert auf 9 wird das Widget wieder korrekt angezeigt. Der Wert der dritten Stelle wird für die Sichtbarkeit verwendet (9/4).
beim nächsten Abruf betrifft es dann ggf. andere Preise
Hat noch jemand dieses Problem oder gar eine Lösung?
@homoran sagte in Tankerkönig widgets zeitweise leer:
Hat noch jemand dieses Problem oder gar eine Lösung?
Ja und ja.
Die Anzeige ist mir dabei relativ egal. Steht dann halt mal (ist bei mir selten) 2.031 € da (anstelle von 2.03 9 €)...
Ich nehme für die Sichtbarkeit den DP tankerkoenig.0.stations.x.status als Gruppe:

-
Seit einiger Zeit habe ich immer wieder weiße Flecken in meinem Tankerkönig view

Heute habe ich mir die Objekte angesehen jnd festgestellt, dass bei den betroffenen Preisen der Wert bei 3rd auf 10 steht.

was überhaupt keinen Sinn ergibt die dritte Stelle ct zweistellig anzugeben.
Auf der Website vom Tankerkönig ist alles ok und die dritte Stelle ist eine 9.Ändere ich den Wert auf 9 wird das Widget wieder korrekt angezeigt. Der Wert der dritten Stelle wird für die Sichtbarkeit verwendet (9/4).
beim nächsten Abruf betrifft es dann ggf. andere Preise
Hat noch jemand dieses Problem oder gar eine Lösung?
-
@sborg sagte in Tankerkönig widgets zeitweise leer:
Ich nehme für die Sichtbarkeit den DP tankerkoenig.0.stations.x.status als Gruppe:
wie du in meinem Screenshot siehst, habe ich eine Station, die den Preis auf 4 Zehntel angibt.
Das "original" Widget hat deshalb zwei Layer, eins für 4 und eins für 9.
diese werden eingeblendet wenn die Zehntel den entsprechenden Wert haben. 10 passt für beide nicht.@fastfoot sagte in Tankerkönig widgets zeitweise leer:
issue beim Adapter erstellen,
Danke für die Analyse. Isuue mach ich, sobald ich mal am PC bin
-
@sborg sagte in Tankerkönig widgets zeitweise leer:
Ich nehme für die Sichtbarkeit den DP tankerkoenig.0.stations.x.status als Gruppe:
wie du in meinem Screenshot siehst, habe ich eine Station, die den Preis auf 4 Zehntel angibt.
Das "original" Widget hat deshalb zwei Layer, eins für 4 und eins für 9.
diese werden eingeblendet wenn die Zehntel den entsprechenden Wert haben. 10 passt für beide nicht.@fastfoot sagte in Tankerkönig widgets zeitweise leer:
issue beim Adapter erstellen,
Danke für die Analyse. Isuue mach ich, sobald ich mal am PC bin
@homoran sagte in Tankerkönig widgets zeitweise leer:
wie du in meinem Screenshot siehst, habe ich eine Station, die den Preis auf 4 Zehntel angibt.
Ich hatte hier schon alles, deswegen arbeite ich auch nicht mit Layern (würde ich aber auch so nicht machen ;) ), sonst bräuchte ich ja 10 Layer pro Sorte, wären bei mir dann 120 Stück nur für die Zehntel €-Cent...
Von daher lasse ich den DP einfach so anzeigen wie er ist, da ist es völlig egal wie viel Zehntel es sind. 10 Zehntel sieht dann halt nur bescheuert aus...

-
@homoran sagte in Tankerkönig widgets zeitweise leer:
wie du in meinem Screenshot siehst, habe ich eine Station, die den Preis auf 4 Zehntel angibt.
Ich hatte hier schon alles, deswegen arbeite ich auch nicht mit Layern (würde ich aber auch so nicht machen ;) ), sonst bräuchte ich ja 10 Layer pro Sorte, wären bei mir dann 120 Stück nur für die Zehntel €-Cent...
Von daher lasse ich den DP einfach so anzeigen wie er ist, da ist es völlig egal wie viel Zehntel es sind. 10 Zehntel sieht dann halt nur bescheuert aus...

@sborg sagte in Tankerkönig widgets zeitweise leer:
Von daher lasse ich den DP einfach so anzeigen wie er ist,
sieht gut aus!
Hättest du davon einen Export für mich?
-
@sborg sagte in Tankerkönig widgets zeitweise leer:
Von daher lasse ich den DP einfach so anzeigen wie er ist,
sieht gut aus!
Hättest du davon einen Export für mich?
@homoran Na logo ;)
Wird aber nur in der Runtime korrekt angezeigt, in der View sind die Preise wg. der Skalierung nicht richtig zu sehen. -
@homoran Na logo ;)
Wird aber nur in der Runtime korrekt angezeigt, in der View sind die Preise wg. der Skalierung nicht richtig zu sehen.@sborg DANKE!
Hab das mal Quick and dirty erst einmal zusätzlich eingebaut, ein paar kleiner Anpassungen (Schrift- Feldgröße???) gemacht und lasse mal die Chefin entscheiden.

Bei e5 sieht man hier die 1(0) statt der 9
Issue ist erstellt!
-
@sborg DANKE!
Hab das mal Quick and dirty erst einmal zusätzlich eingebaut, ein paar kleiner Anpassungen (Schrift- Feldgröße???) gemacht und lasse mal die Chefin entscheiden.

Bei e5 sieht man hier die 1(0) statt der 9
Issue ist erstellt!
@homoran sagte in Tankerkönig widgets zeitweise leer:
lasse mal die Chefin entscheiden.
Besser das ist, sonst kopierst/änderst du wieder zig mal ;)
Würde aber auf jeden Fall den Grundpreis x.xx noch etwas breiter nach rechts verlängern. Dann sind die Zehntel ebenfalls mit in die Hintergrundfarbe eingeschlossen.@homoran sagte in Tankerkönig widgets zeitweise leer:
Issue ist erstellt!
:+1: ...und ein Fix, falls du testen magst (bei mir tritt es zu selten auf, aber es läuft so normal weiter):
in (ggf. Pfad anpassen) "/opt/iobroker/node_modules/iobroker.tankerkoenig/"
nano main.js
und nach (Zeile 96)let price_3rd_digit = Math.ceil(temp2 - (temp * 1000)); // Dritte Nachommastelle einzeln ermittelneinfügen:
if (price_3rd_digit > 9) { price_3rd_digit = 9; }und Adapter restarten.

-
@homoran sagte in Tankerkönig widgets zeitweise leer:
lasse mal die Chefin entscheiden.
Besser das ist, sonst kopierst/änderst du wieder zig mal ;)
Würde aber auf jeden Fall den Grundpreis x.xx noch etwas breiter nach rechts verlängern. Dann sind die Zehntel ebenfalls mit in die Hintergrundfarbe eingeschlossen.@homoran sagte in Tankerkönig widgets zeitweise leer:
Issue ist erstellt!
:+1: ...und ein Fix, falls du testen magst (bei mir tritt es zu selten auf, aber es läuft so normal weiter):
in (ggf. Pfad anpassen) "/opt/iobroker/node_modules/iobroker.tankerkoenig/"
nano main.js
und nach (Zeile 96)let price_3rd_digit = Math.ceil(temp2 - (temp * 1000)); // Dritte Nachommastelle einzeln ermittelneinfügen:
if (price_3rd_digit > 9) { price_3rd_digit = 9; }und Adapter restarten.

@sborg sagte in Tankerkönig widgets zeitweise leer:
Besser das ist, sonst kopierst/änderst du wieder zig mal
Bin ja schon am kopieren - auf Befehl :-)
@sborg sagte in Tankerkönig widgets zeitweise leer:
und ein Fix, falls du testen magst
mach ich sofort, weil
DANKE
@sborg sagte in Tankerkönig widgets zeitweise leer:
bei mir tritt es zu selten auf
ich gerade fast das halbe Board weiß hatte
Aber warum erst seit ein paar Wochen?? -
@homoran sagte in Tankerkönig widgets zeitweise leer:
lasse mal die Chefin entscheiden.
Besser das ist, sonst kopierst/änderst du wieder zig mal ;)
Würde aber auf jeden Fall den Grundpreis x.xx noch etwas breiter nach rechts verlängern. Dann sind die Zehntel ebenfalls mit in die Hintergrundfarbe eingeschlossen.@homoran sagte in Tankerkönig widgets zeitweise leer:
Issue ist erstellt!
:+1: ...und ein Fix, falls du testen magst (bei mir tritt es zu selten auf, aber es läuft so normal weiter):
in (ggf. Pfad anpassen) "/opt/iobroker/node_modules/iobroker.tankerkoenig/"
nano main.js
und nach (Zeile 96)let price_3rd_digit = Math.ceil(temp2 - (temp * 1000)); // Dritte Nachommastelle einzeln ermittelneinfügen:
if (price_3rd_digit > 9) { price_3rd_digit = 9; }und Adapter restarten.

@sborg sagte in Tankerkönig widgets zeitweise leer:
und Adapter restarten.
Danke - im Moment sind alle 10 weg
-
@sborg sagte in Tankerkönig widgets zeitweise leer:
Besser das ist, sonst kopierst/änderst du wieder zig mal
Bin ja schon am kopieren - auf Befehl :-)
@sborg sagte in Tankerkönig widgets zeitweise leer:
und ein Fix, falls du testen magst
mach ich sofort, weil
DANKE
@sborg sagte in Tankerkönig widgets zeitweise leer:
bei mir tritt es zu selten auf
ich gerade fast das halbe Board weiß hatte
Aber warum erst seit ein paar Wochen??@homoran sagte in Tankerkönig widgets zeitweise leer:
Aber warum erst seit ein paar Wochen??
Vermutlich wegen Sprittpreis > 2,- € ?
Die Preise werden mit viel Multiplikation/Division ermittelt, da kommt es zwangsläufig irgendwann zu Rundungsfehler, gerade weil die Werte stellenweise aus vorher berechneten Werten weiter aufbauen.Preis A, daraus wird dann B (zB. A *1000), dann wird daraus C (B / 1000 - xyz * abc) usw. So "schaukelt" sich der Fehler langsam auf. Besser wäre wahrscheinlich alles direkt nur aus dem Preis zu berechnen ;)
-
@homoran sagte in Tankerkönig widgets zeitweise leer:
Aber warum erst seit ein paar Wochen??
Vermutlich wegen Sprittpreis > 2,- € ?
Die Preise werden mit viel Multiplikation/Division ermittelt, da kommt es zwangsläufig irgendwann zu Rundungsfehler, gerade weil die Werte stellenweise aus vorher berechneten Werten weiter aufbauen.Preis A, daraus wird dann B (zB. A *1000), dann wird daraus C (B / 1000 - xyz * abc) usw. So "schaukelt" sich der Fehler langsam auf. Besser wäre wahrscheinlich alles direkt nur aus dem Preis zu berechnen ;)
@sborg sagte in Tankerkönig widgets zeitweise leer:
Besser wäre...
ich habe es so gelöst:
function cutPrice(preis) { preis = preis.toFixed(3); return { priceshort: preis.slice(0, preis.length - 1), price3rd: parseInt(preis.slice(-1)), preis: parseFloat(preis) }; } -
@sborg sagte in Tankerkönig widgets zeitweise leer:
Besser wäre...
ich habe es so gelöst:
function cutPrice(preis) { preis = preis.toFixed(3); return { priceshort: preis.slice(0, preis.length - 1), price3rd: parseInt(preis.slice(-1)), preis: parseFloat(preis) }; }@fastfoot Sieht doch gut aus :)
Mach doch einfach einen PR auf GitHub, dann geht der Fix ev. auch schneller.Zumindest gibt es so keinerlei Rundungsfehler mehr ;)
-
@homoran sagte in Tankerkönig widgets zeitweise leer:
Aber warum erst seit ein paar Wochen??
Vermutlich wegen Sprittpreis > 2,- € ?
Die Preise werden mit viel Multiplikation/Division ermittelt, da kommt es zwangsläufig irgendwann zu Rundungsfehler, gerade weil die Werte stellenweise aus vorher berechneten Werten weiter aufbauen.Preis A, daraus wird dann B (zB. A *1000), dann wird daraus C (B / 1000 - xyz * abc) usw. So "schaukelt" sich der Fehler langsam auf. Besser wäre wahrscheinlich alles direkt nur aus dem Preis zu berechnen ;)
@sborg Hab jetzt noch ein Problem

Erst nach einem Refresh sind die Zahlen vollständig sichtbar.
Gibt es da einen Trick dass es beim Aufrufder Seite richtig aussieht?
-
@sborg Hab jetzt noch ein Problem

Erst nach einem Refresh sind die Zahlen vollständig sichtbar.
Gibt es da einen Trick dass es beim Aufrufder Seite richtig aussieht?
@homoran Gute Frage. Ich habe eben nochmal bei mir geschaut, aber keine spezielle Einstellung diesbzgl. gefunden. Da ich normalerweise nur den FF nutze, habe ich es nochmals mit dem Edge probiert. "Leider" beides mal direkt beim laden:

Auch beim Widget kann ich nix finden. Bei mir sieht es nur im Editor so aus wie bei dir. Ev. hängt das mit dem editieren zusammen? Wenn du meinen Export nur importierst (Instanz 0 und Station 0), funktioniert der oder ist der dann genauso?
-
@homoran Gute Frage. Ich habe eben nochmal bei mir geschaut, aber keine spezielle Einstellung diesbzgl. gefunden. Da ich normalerweise nur den FF nutze, habe ich es nochmals mit dem Edge probiert. "Leider" beides mal direkt beim laden:

Auch beim Widget kann ich nix finden. Bei mir sieht es nur im Editor so aus wie bei dir. Ev. hängt das mit dem editieren zusammen? Wenn du meinen Export nur importierst (Instanz 0 und Station 0), funktioniert der oder ist der dann genauso?
@sborg sagte in Tankerkönig widgets zeitweise leer:
aber keine spezielle Einstellung diesbzgl. gefunden.
ich eben auch nicht :-(
@sborg sagte in Tankerkönig widgets zeitweise leer:
Da ich normalerweise nur den FF nutze, habe ich es nochmals mit dem Edge probiert.
bei mir bei Chrome und FF das Problem (bisher nur bei Android gesichert)
EDIT:
jetzt auch am PC mit Chrome@sborg sagte in Tankerkönig widgets zeitweise leer:
Bei mir sieht es nur im Editor so aus wie bei dir.
da hab ich noch kein Problem gehabt
@sborg sagte in Tankerkönig widgets zeitweise leer:
Wenn du meinen Export nur importierst (Instanz 0 und Station 0), funktioniert der
auch nicht
-
@sborg sagte in Tankerkönig widgets zeitweise leer:
aber keine spezielle Einstellung diesbzgl. gefunden.
ich eben auch nicht :-(
@sborg sagte in Tankerkönig widgets zeitweise leer:
Da ich normalerweise nur den FF nutze, habe ich es nochmals mit dem Edge probiert.
bei mir bei Chrome und FF das Problem (bisher nur bei Android gesichert)
EDIT:
jetzt auch am PC mit Chrome@sborg sagte in Tankerkönig widgets zeitweise leer:
Bei mir sieht es nur im Editor so aus wie bei dir.
da hab ich noch kein Problem gehabt
@sborg sagte in Tankerkönig widgets zeitweise leer:
Wenn du meinen Export nur importierst (Instanz 0 und Station 0), funktioniert der
auch nicht
@homoran Hab jetzt verschiedenes probiert, ich bekomme den Fehler nicht "hin". Cache geleert, reload, mal den Flot-Graphen entfernt... geht immer.
Man kann zwar einen einmaligen Page-Reload erzwingen, aber nicht mehr "innerhalb" der Seite wo wir uns mit der VIS quasi befinden. Da artet es dann in einer Endlosdauerschleife aus.
Ich unterstelle jetzt mal "beta", oder bist du auf "latest" unterwegs (ME: beta + aktuelle VIS-/WEB-Version)?
Man könnte auch zB. mittels Blockly die vom Client gewählte View überwachen. Ruft er die Übersicht auf schickt der ioB mittels bspw. "getadmin" den Page-Refreshbefehl an den Browser des Client. Wäre aber ein ziemlicher Aufwand nur für die paar Spritpreise (gerade weil das IMO mehr ein Problem des Widgets ist [Issue?]).
-
@homoran Hab jetzt verschiedenes probiert, ich bekomme den Fehler nicht "hin". Cache geleert, reload, mal den Flot-Graphen entfernt... geht immer.
Man kann zwar einen einmaligen Page-Reload erzwingen, aber nicht mehr "innerhalb" der Seite wo wir uns mit der VIS quasi befinden. Da artet es dann in einer Endlosdauerschleife aus.
Ich unterstelle jetzt mal "beta", oder bist du auf "latest" unterwegs (ME: beta + aktuelle VIS-/WEB-Version)?
Man könnte auch zB. mittels Blockly die vom Client gewählte View überwachen. Ruft er die Übersicht auf schickt der ioB mittels bspw. "getadmin" den Page-Refreshbefehl an den Browser des Client. Wäre aber ein ziemlicher Aufwand nur für die paar Spritpreise (gerade weil das IMO mehr ein Problem des Widgets ist [Issue?]).
@sborg sagte in Tankerkönig widgets zeitweise leer:
bist du auf "latest" unterwegs
nein!
hab ich früher immer gehabt, aber seit geraumer Zeit nicht mehr produktivDas Widget hat keine Möglichkeit einer refresh rate.
Hab schon alle meine alten Widgets gelöscht. und auf der Adapterseite von Tankerkönig hab ich das Widget nicht mehr gefunden.
Zum Glück waren noch uralte Widgetexports von mir hier im Forum.Wenn ich mal Zeit habe spiele ich daran herum.
@sborg sagte in Tankerkönig widgets zeitweise leer:
Wenn du meinen Export nur importierst (Instanz 0 und Station 0), funktioniert der oder ist der dann genauso?
Mir ist noch eingefallen, dass ich an Z-Werten gespielt hatte.
Ich werde gleich mal ein Original von dir zusätzlich reinhängen und beobachtenDANKE soweit
-
@homoran Hab jetzt verschiedenes probiert, ich bekomme den Fehler nicht "hin". Cache geleert, reload, mal den Flot-Graphen entfernt... geht immer.
Man kann zwar einen einmaligen Page-Reload erzwingen, aber nicht mehr "innerhalb" der Seite wo wir uns mit der VIS quasi befinden. Da artet es dann in einer Endlosdauerschleife aus.
Ich unterstelle jetzt mal "beta", oder bist du auf "latest" unterwegs (ME: beta + aktuelle VIS-/WEB-Version)?
Man könnte auch zB. mittels Blockly die vom Client gewählte View überwachen. Ruft er die Übersicht auf schickt der ioB mittels bspw. "getadmin" den Page-Refreshbefehl an den Browser des Client. Wäre aber ein ziemlicher Aufwand nur für die paar Spritpreise (gerade weil das IMO mehr ein Problem des Widgets ist [Issue?]).
@sborg zu früh gefrrut!
ich dachte schon dass mit dem Editieren des Views das Problem vorbei sei, aber

ganz links das unverändert von dir importierte Widget, daneben fie selben Daten von station.0 nochmal