NEWS
Visualisierung mit Node Red erstellen
-
@mickym Die Lösung lautet:
Ich kam schlichtweg nicht drauf das zwischen Tintenfüllstand ist und payload das & Zeichen gehört
-
@mickym Bin wieder da
-
@damrak2022 Gut dann hoffe ich mal auf volle Motivation. Dann erstelle doch mal die Zimmerobjekte neu und ändere dabei die Eigenschaft Preis in Brutto. Erinnere Dich daran, wie Du bei den Chart Nodes aus jedem Datensatz erst mal leere neue Objekte erstellt hast und dann diese Objekte völlig neu mit den Eigenschaften x und y erstellt hast. Dieses Mal sollen die neuen Objekte erstmal wie die alten aufgebaut sein und nur die Preiseigenschaft nennen wir Brutto. Später werden wir in den neuen Objekten noch den Nettopreis und die 7% Mehrwertsteuer getrennt auflisten.
Wie gesagt das hast Du ja alles schon damals mit der Chart Node gemacht. Ich kann natürlich nicht immer auf die Dokumentation hinweisen - diese Seiten kennst Du nun schon in und auswendig, aber als Hilfestellung will ich doch mal auf die entsprechende Seite in der Dokumentation hinweisen: https://docs.jsonata.org/sorting-grouping#grouping
-
@mickym Soll das so garnicht links drin sein
oder soll ich anstatt "Preis" da "Brutto" reinschreiben? Du meinst aber bestimmt links alles händisch neu eingeben.
-
@damrak2022 Nein - natürlich sollst Du das mit Code lösen nichts am Eingabeobjekt ändern.
-
@mickym Okay,
-
@mickym Du meinst so:
Wollte mal nachfragen, bevor ich weitermache. -
@damrak2022 Na ja Du definierst ja alles neu und statisch - so meine ich das nicht. Erstens hast Du ja nur ein Objekt definiert, im Eingangsobjekt habe ich aber 5 Zimmerobjekte. Ausserdem möchte ich dass der Code automatisch ein neues Objekt erstellt, wenn das Eingangsobjekt ein neues Objekt enthält - also NEIN so auf keinen Fall.
Mach mal als Teilaufgabe, dass für jedes Zimmerobjekt automatisch ein leeres Objekt erstellt wird. Das hast Du damals im data Array auch so gemacht. Und wie gesagt - schau Dir die Doku an. Erinnere Dich an das Mapping.
Also lass Dir erst alle Zimmerobjekte ausgeben.
Dann mappe die Zimmerobjekte mit einem leeren Objekt.
-
@mickym sagte in Visualisierung mit Node Red erstellen:
Mach mal als Teilaufgabe, dass für jedes Zimmerobjekt automatisch ein leeres Objekt erstellt wird. Das hast Du damals im data Array auch so gemacht. Und wie gesagt - schau Dir die Doku an. Erinnere Dich an das Mapping.
Das habe ich jetzt so, aber nicht automatisch, da ich das mit dem Mapping nochmal schauen muss. Das Mapping ging doch mit $. der ich hadere wieder damit wo das hin muss.
-
@damrak2022 Na so auf keinen Fall.
Und auch das $ brauchst Du nicht, da Du ja auf der linken Seite von Deinem Punkt schon ein Array hast. Also gib einfach nur mal alle Zimmerobjekte aus.
-
@mickym Jetzt habe ich meinen Code schon wieder so zerhackt, das ich nicht weiß, was die Ausgangslage sein sollte
-
@damrak2022 Also lass Dir nur mal die Zimmerobjekte ausgeben.
Und ich muss auch immer suchen, aber bei data array hast Du ja auch leere Objekte für jedes Objekt erstellt.
https://forum.iobroker.net/post/941082Stimmt es war der 5. Februar - also knappe 2 Wochen - wichtig ist, dass Du auch die Dinge länger als 3 Tage behälst.
Also nochmal alle Zimmerobjekte ausgeben.
-
@mickym Ganz einfach - ich möchte nur alle Zimmerobjekte sehen.
-
@mickym Sorry, aber der Post hat mir garnichts gebracht, weil ich ihn wahrscheinlich nicht richtig interpretiere.
-
@damrak2022 Sehr gut. Und NUN mappst DU diese Ausgabe (also Code nur ergänzen) auf ein leeres Objekt.
Also payload.Zimmer auf ein leeres Objekt mappen. Oder
payload.Zimmer MAP leeres Objekt
-
@mickym Ach das geht so einfach und ich code hier wie wild rum - Peinlich
-
@damrak2022 Ja das hast Du alles schon mal gemacht. Und nun gibst Du die Eigenschaft mit dem entsprechenden Wert in das leere Objekt ein. Also beginne mit der Nummer.
-
@mickym So und dann alles weiter bis ich die 5 Zimmerobjekte habe?
-
@damrak2022 sagte in Visualisierung mit Node Red erstellen:
@mickym So und dann alles weiter bis ich die 5 Zimmerobjekte habe
Ja nur geben wir nicht jedem Zimmer die Nummer 1, sondern nutzen den Wert aus dem Ausgangsobjekt. Also erst mal die richtigen Werte in die neuen Objekte.
Jetzt hast Du in den neuen Objekten ja nur die Eigenschaft Nummer festgelegt, aber nicht den Wert Nummer mit übergeben. Erinnere Dich bei dem data - Objekt hattest Du die Zeit der Eigenschaft x zugewiesen. Nun brauchst Du nur die Nummer dieser neuen Eigenschaft Nummer zuweisen.
Den Wert übernimmst Du indem Du auf den Eigenschaftsnamen des Eingangsobjektes verweist.
Wie heißt denn die Eigenschaft des Wertes des Eingangsobjektes, den wir in die neue Eigenschaft Nummer zuweisen wollen?
-
@mickym Das müsste Zimmer sein