Sonderzeichen in Variable Typ Zeichenkette

Allgemeines zur HomeMatic Haussteuerung

Moderator: Co-Administratoren

Benutzeravatar
hanan
Beiträge: 222
Registriert: 15.12.2012, 16:00
Danksagung erhalten: 1 Mal

Re: Sonderzeichen in Variable Typ Zeichenkette

Beitrag von hanan » 25.05.2019, 12:10

Hallo Alchy
Supi, besten dank für den Tipp.
Werde ich gleich mal versuchen.

... Minuten später...

Jep, hat super geklapt.
Liebe Grüsse aus der Schweiz
Andy
_________________________________________________________________________________________________
Raspberrymatic auf NUC unter Proxmox mit RPI-RF-MOD Funkmodul und Antenne Aurel GP868, ca. 19x BidCos-RF und ca. 46x HmIP-RF, ioBroker auf NUC unter Proxmox, 4x Wiffi 3.0, Pulsecounter, Weatherman-Edition

Benutzeravatar
hanan
Beiträge: 222
Registriert: 15.12.2012, 16:00
Danksagung erhalten: 1 Mal

Re: Sonderzeichen in Variable Typ Zeichenkette

Beitrag von hanan » 25.05.2019, 13:41

Hallo Alchy
Habe ein kleines Problem...

So funktioniertes super...

Code: Alles auswählen

!Mondphasen-Skript V2.1
!Erweiterung Mondtag für Sera LED Moonlight Kit V2.1
!Erweiterung Mondphase zu- oder abnehmend von hanan V2.0
!Script zur Mondphasenberechnung von Dako V1.1
!---------------------------------------------------
!Hinweise:
!Die Berechnung erfolgt mit dem durchschnittlichen synodischen Mondmonat, weshalb keine
!Stundengenaue Berechnung erfolgen kann
!---------------------------------------------------
!Systemvariablen:
!naechster_Vollmond (Zeichenkette): naechster Vollmond
!Mondstand (Zeichenkette): Mondphase in % (Neumond = 0%)
!Mondphase (Zeichenkette): Mondphase in Textform
!Mondtag (Zeichenkette): Mond-Kalender in Textform
!---------------------------------------------------
!Variablen definieren
real a_1 = 1.0*(system.Date("%F %X").ToTime().ToInteger()); !aktueller UNIX-Timestamp (1374688453)
real a_2 = 1106652740.0;!referenz vollmond
real a_3 = 2551443.0;!synodischer mondmonat
real a_4 = 1105362167.0;!referenz neumond
string svout;
string plus = "⬈";
string minus = "⬊";

!Aktuelle Mondphase
real x2 = ((a_1-a_4)/a_3);
integer x3 = x2.ToInteger();
real x4 = (x2-x3)*200;
integer x5 = x4.ToInteger();

string z3 = "Fehler!";
string z4 = "Fehler!";

if(x5 <=200){real x6 = (x5-200)*-1;}!Ausgabe abnehmende Mondprozent
if(x5 <=100){real x6 = x5;}!Ausgabe zunehmende Mondprozent

if(x5 <=200){svout = minus;}
if(x5 <=100){svout = plus;}

if(x5 <= 205){z3 = "Neumond";}
if(x5 <= 195){z3 = "abnehmender Halbmond";}
if(x5 <= 150){z3 = "abnehmender Vollmond";}
if(x5 <= 105){z3 = "Vollmond";}
if(x5 <= 95){z3 = "zunehmender Halbmond";}
if(x5 <= 50){z3 = "zunehmender Neumond";}
if(x5 <= 5){z3 = "Neumond";}

if(x5 <= 198) {z4 = "Tag 14";}
if(x5 <= 191) {z4 = "Tag 13";}
if(x5 <= 184) {z4 = "Tag 12";}
if(x5 <= 177) {z4 = "Tag 11";}
if(x5 <= 170) {z4 = "Tag 10";}
if(x5 <= 163) {z4 = "Tag 9";}
if(x5 <= 156) {z4 = "Tag 8";}
if(x5 <= 149) {z4 = "Tag 7";}
if(x5 <= 142) {z4 = "Tag 6";}
if(x5 <= 135) {z4 = "Tag 5";}
if(x5 <= 128) {z4 = "Tag 4";}
if(x5 <= 121) {z4 = "Tag 3";}
if(x5 <= 114) {z4 = "Tag 2";}
if(x5 <= 107) {z4 = "Tag 1";}
if(x5 <= 100) {z4 = "Tag 29";}
if(x5 <= 93) {z4 = "Tag 28";}
if(x5 <= 86) {z4 = "Tag 27";}
if(x5 <= 79) {z4 = "Tag 26";}
if(x5 <= 72) {z4 = "Tag 25";}
if(x5 <= 65) {z4 = "Tag 24";}
if(x5 <= 58) {z4 = "Tag 23";}
if(x5 <= 51) {z4 = "Tag 22";}
if(x5 <= 46) {z4 = "Tag 21";}
if(x5 <= 39) {z4 = "Tag 20";}
if(x5 <= 32) {z4 = "Tag 18";}
if(x5 <= 25) {z4 = "Tag 18";}
if(x5 <= 18) {z4 = "Tag 17";}
if(x5 <= 11) {z4 = "Tag 16";}
if(x5 <= 4) {z4 = "Tag 15";}   

dom.GetObject("Mondstand").State(svout #" " #x6.ToString(0) #"%");!Ausgabe als Prozentzahl
dom.GetObject("Mondphase").State(z3);!Ausgabe als Text
dom.GetObject("Mondtag").State(z4);!Ausgabe als Text

!Naechster Vollmond am:
while(a_2 <= a_1){a_2 = a_2 + a_3;}
real x1 =  a_2.ToTime();
string y1 = x1.Format("%d.%m.%Y");
dom.GetObject("naechster_Vollmond").State(y1);
Schliesse ich alles und öffne den Skript wieder, wurden die Hexa in die Symbole geändert und es funzt nicht mehr.

Code: Alles auswählen

string plus = "⬈";
string minus = "⬊";
Bin nicht so der Skript-Hirsch, doch was mache ich hier falsch?
Liebe Grüsse aus der Schweiz
Andy
_________________________________________________________________________________________________
Raspberrymatic auf NUC unter Proxmox mit RPI-RF-MOD Funkmodul und Antenne Aurel GP868, ca. 19x BidCos-RF und ca. 46x HmIP-RF, ioBroker auf NUC unter Proxmox, 4x Wiffi 3.0, Pulsecounter, Weatherman-Edition

Benutzeravatar
Black
Beiträge: 5480
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 424 Mal
Danksagung erhalten: 1074 Mal
Kontaktdaten:

Re: Sonderzeichen in Variable Typ Zeichenkette

Beitrag von Black » 25.05.2019, 15:08

Du nicht... Aber der scriptecitor stellt dir da ein bein
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

schlichi
Beiträge: 395
Registriert: 26.08.2016, 19:26
System: Alternative CCU (auf Basis OCCU)
Wohnort: Erding
Hat sich bedankt: 61 Mal
Danksagung erhalten: 29 Mal

Re: Sonderzeichen in Variable Typ Zeichenkette

Beitrag von schlichi » 11.06.2020, 14:09

Hallo Zusammen,

ich will Sonderzeichen in einer SysVar verwenden. Habe das vorstehende Script von Alchy (Danke dafür), mit meinen Sonderzeichen "&#9650; &#9658; &#9660; " modifiziert. Scriptest ausgeführt.
Ergebnis: wie oben beschrieben, ok.
Danach das Script in ein Programm eingebaut.
Ergebnis: wie erwartet, ok.
Wird das Script im Programm erneut bearbeitet, werden beim Öffnen des Scripteditors die Sonderzeichen ▲ ► ▼ im Code dargestellt. Ein nochmaliges Speichern des Programmes führt zu einer erneuten Umsetzung des Sonderzeichencodes in "%u25B2 %u25BA %u25BC".
Ergebnis: Programmcode nicht mehr verwendbar.

Gesamtergebnis: der Bug ist, auch nach mehr als einem Jahr, immer noch vorhanden.

Mir scheint, eq3 hat kein interesse mehr an der CCU2 WebUI Weiterentwicklung.

Gruß
schlichi
... inzwischen autodidakter, fortgeschrittener Anfänger mit bestandener Einstiegsprüfung für den Expertenmodus Teil 3 (erfahrener Anwender) :roll:

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Sonderzeichen in Variable Typ Zeichenkette

Beitrag von alchy » 11.06.2020, 19:16

schlichi hat geschrieben:
11.06.2020, 14:09
Gesamtergebnis: der Bug ist, auch nach mehr als einem Jahr, immer noch vorhanden.
Mir scheint, eq3 hat kein interesse mehr an der CCU2 WebUI Weiterentwicklung.
Du meckerst doch nicht ernsthaft über ein Jahr :shock:
Das ist Frevel. :?
Oder wie es mir erst vor kurzem um die Ohren gehauen wurde:
Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

schlichi
Beiträge: 395
Registriert: 26.08.2016, 19:26
System: Alternative CCU (auf Basis OCCU)
Wohnort: Erding
Hat sich bedankt: 61 Mal
Danksagung erhalten: 29 Mal

Re: Sonderzeichen in Variable Typ Zeichenkette

Beitrag von schlichi » 11.06.2020, 19:41

Hallo Alchy,

ich möchte mich erstmal bedanken, für deine hilfreichen Beiträge in diesem Forum.

Zum vorgenannten Thema, auch hier viewtopic.php?p=585284#p585284, (und auch zu den doppelten Programmnamen) habe ich jeweils ein Ticket bei eq3 aufgemacht.
Bis zur Lösung des Problems verwende ich ANSI-Sonderzeichen, bzw. Schriftzeichen.

Für die Stellenanzeigen bin ich schon zu alt :mrgreen: , die Lust an der Technik ist aber noch vorhanden. :wink:
Mit Hilfe der im Forum vorhandenen substantiierten Beiträge :roll: bin ich für meine Verhältnisse weit gekommen.

Ich hoffe, Du verlierst nicht die Geduld mit uns "Anfängern".

Beste Grüße
schlichi
... inzwischen autodidakter, fortgeschrittener Anfänger mit bestandener Einstiegsprüfung für den Expertenmodus Teil 3 (erfahrener Anwender) :roll:

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Sonderzeichen in Variable Typ Zeichenkette

Beitrag von alchy » 11.06.2020, 21:25

schlichi hat geschrieben:
11.06.2020, 19:41
habe ich jeweils ein Ticket bei eq3 aufgemacht.
Das ehrt dich sehr. Ein paar Bugs sind ja auch hier im Forum beschrieben.
Tob dich ruhig aus und hau EQ3 alles um die Ohren. Meine Zeit geht da zu Ende.
schlichi hat geschrieben:
11.06.2020, 19:41
Für die Stellenanzeigen bin ich schon zu alt
alt ist relativ - Ich habe es dir ja nur zitiert weil ich mich schon geärgert habe so etwas "gesagt" zu kriegen. (zumal ich in dem Thread auch mit zum Finden des Bugs mitgewirkt habe). Aber auch das ist hier schon normal.
schlichi hat geschrieben:
11.06.2020, 19:41
Ich hoffe, Du verlierst nicht die Geduld mit uns "Anfängern".
Da bin ich flexibel. :wink:

Alchy

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

dondaik
Beiträge: 12928
Registriert: 16.01.2009, 18:48
Wohnort: Steingaden
Hat sich bedankt: 1604 Mal
Danksagung erhalten: 222 Mal

Re: Sonderzeichen in Variable Typ Zeichenkette

Beitrag von dondaik » 12.06.2020, 09:46

@alchy
ups...."....Meine Zeit geht da zu Ende...." .... dann alles gute für die zeit nach "HM" !!!
-------
!!! der download der handbüchern auf den seiten von eq3 und das lesen der tips und tricks kann das hm-leben sehr erleichtern - das nutzen der suche nach schlagworten ebenso :mrgreen: !!!
wer schreibfehler findet darf sie behalten.

Benutzeravatar
jmaus
Beiträge: 9862
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 464 Mal
Danksagung erhalten: 1880 Mal
Kontaktdaten:

Re: Sonderzeichen in Variable Typ Zeichenkette

Beitrag von jmaus » 12.06.2020, 10:24

schlichi hat geschrieben:
11.06.2020, 19:41
Zum vorgenannten Thema, auch hier viewtopic.php?p=585284#p585284, (und auch zu den doppelten Programmnamen) habe ich jeweils ein Ticket bei eq3 aufgemacht.
Bis zur Lösung des Problems verwende ich ANSI-Sonderzeichen, bzw. Schriftzeichen.
Nur so nebenbei und auch wenn du vielleicht die originale CCU Firmware verwendest: Es hat sich in der Vergangenheit IMHO als effektiver herausgestellt solche WebUI Bugs und andere zusätzlich im RaspberryMatic GitHub (https://github.com/jens-maus/RaspberryMatic) als Issue mit einer ausführlichen Beschreibung und Beispielen zu melden. Denn im Zuge der Entwicklung rund um RaspberryMatic wurden somit nicht nur weit über 50 WebUI Patches für verschiedene Anpassungen von der Community entwickelt (https://github.com/jens-maus/RaspberryM ... tches/occu), sondern teile davon wurden auch schon mitunter von eQ3 in die originale CCU Firmware übernommen.
RaspberryMatic 3.75.7.20240420 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal / ☕️

schlichi
Beiträge: 395
Registriert: 26.08.2016, 19:26
System: Alternative CCU (auf Basis OCCU)
Wohnort: Erding
Hat sich bedankt: 61 Mal
Danksagung erhalten: 29 Mal

Re: Sonderzeichen in Variable Typ Zeichenkette

Beitrag von schlichi » 12.06.2020, 12:09

Hallo Zusammmen,

besten Dank für Eure Beiträge.

@jmaus Die Eintrittsschwelle in github ist für "native German speaker" und Anfänger vordergründig etwas hoch. Aber ich werde mich damit auseinandersetzen. Nur, aus der CCU2 - Sicht auf die Idee zu kommen, an "Raspi" zu denken, ist auch für einen eingelesenen Anfänger weit hergeholt. Aus Deiner Sicht, vordergründig aber verständlich. :D

Deshalb gerne der Verweis auf meinen Beitrag oben viewtopic.php?p=587499#p587499, dieser ist auch ohne meine Ingredenzien, alleine mit Alchy´s Script, nachvollziehbar. Falls nicht, nochmals nachhaken.

Grüße
schlichi
... inzwischen autodidakter, fortgeschrittener Anfänger mit bestandener Einstiegsprüfung für den Expertenmodus Teil 3 (erfahrener Anwender) :roll:

Antworten

Zurück zu „HomeMatic allgemein“