Systemvariable auslesen

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

Cosi
Beiträge: 39
Registriert: 04.11.2019, 16:38
Hat sich bedankt: 1 Mal
Danksagung erhalten: 3 Mal

Systemvariable auslesen

Beitrag von Cosi » 09.05.2020, 20:37

Hallo,
ich stehe mal wieder auf dem Schlauch.
Habe ein Skript und komme mal wieder nicht drauf wie der Inhalt einer Systemvariablen mit dem Namen "Holyday" als Werteliste ausgelesen wird.
In der Werteliste steht z.B. "30.06.Ferien;15.08.Herbstferien; usw." Kann mir bitte jemand auf die Sprünge helfen.
Wäre sehr nett, besten Dank
Cosi
Zuletzt geändert von Roland M. am 09.05.2020, 21:06, insgesamt 1-mal geändert.
Grund: Thema verschoben

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

Re: Systemvariable auslesen

Beitrag von Black » 09.05.2020, 20:54

ich denke gepostet im falschen Unterforum.

Eine Werteliste ist ein Integer... du wirst also eine Zahl auslesen... oder was willst du haben ?

Black
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


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

Re: Systemvariable auslesen

Beitrag von alchy » 09.05.2020, 22:28

und wenn du den aktuell gültigen Wert haben willst dann:

Code: Alles auswählen

string sSysvar = "Holyday";
WriteLine( web.webGetValueFromList((dom.GetObject(ID_SYSTEM_VARIABLES).Get(sSysvar)).ValueList(), (dom.GetObject(ID_SYSTEM_VARIABLES).Get(sSysvar)).Value()) );
!oder
WriteLine( (dom.GetObject(ID_SYSTEM_VARIABLES).Get(sSysvar).ValueList() ).StrValueByIndex(";",dom.GetObject(ID_SYSTEM_VARIABLES).Get(sSysvar).Value()) );
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.

Cosi
Beiträge: 39
Registriert: 04.11.2019, 16:38
Hat sich bedankt: 1 Mal
Danksagung erhalten: 3 Mal

Re: Systemvariable auslesen

Beitrag von Cosi » 28.05.2020, 15:41

Hallo Black,
meine Werteliste besteht aus Namen bzw. Texten z.B. 4 verschiedene Beispiel Kari;Michael;Fritz. Ich möchte einen davon auslesen, um Ihn auswerten zu können.
Dabei wird wahrscheinlich ein veränderlicher Parameter bestimmen, welchen Namen oder Text ich auslese. Bisher ist mir das nicht gelungen.
Wäre schön wieder zu hören mit einer Lösung.
Dank Euch
Cosi

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

Re: Systemvariable auslesen

Beitrag von Black » 28.05.2020, 16:51

Aus der sysvar direkt nicht. Wenn du an das Element der Warteliste in Abhängigkeit von state willst, müsste ich alchys Ansatz wiederholen
Black
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

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

Re: Systemvariable auslesen

Beitrag von alchy » 28.05.2020, 19:50

Cosi hat geschrieben:
28.05.2020, 15:41
Ich möchte einen davon auslesen, um Ihn auswerten zu können.
Definiere "einen" :!: - den aktuell gültigen Wert? dann wie oben schon geschrieben.
Einen Wert deiner Wahl? dann eben so :roll:

Code: Alles auswählen

string sSysvar = "Holyday";
integer iValue = 0; ! Welchen Wert?  - beginnend mit 0
WriteLine( web.webGetValueFromList((dom.GetObject(ID_SYSTEM_VARIABLES).Get(sSysvar)).ValueList(), iValue) );
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.

Cosi
Beiträge: 39
Registriert: 04.11.2019, 16:38
Hat sich bedankt: 1 Mal
Danksagung erhalten: 3 Mal

Re: Systemvariable auslesen

Beitrag von Cosi » 02.06.2020, 14:02

Hallo Alchy,
Deine kurze Zeile war die Lösung.
Besten Dank dafür
Cosi
Skript Werteliste auslesen.odt
(10.21 KiB) 139-mal heruntergeladen
Skript Werteliste gesamt.odt
(9.61 KiB) 98-mal heruntergeladen

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

Re: Systemvariable auslesen

Beitrag von alchy » 02.06.2020, 21:03

Bitte keine Ursache. Du hättest nur besser beschreiben sollen, was du eigentlich willst.

Tu dir aber selber und dem Forum einen Gefallen und häng hier keine Scripte an, welche du in Word, OpenOffice usw. speicherst. :roll:
Benutze z.B. Notepad ++ oder andere passende CodeEditoren. Hat auch noch den Vorteil das du Highlighting verwenden könntest.

Editoren bzw. Schreibprogramme wie Wordpad oder Word usw. sind für Code mitnichten geeignet.

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.

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

Re: Systemvariable auslesen

Beitrag von Black » 03.06.2020, 08:29

Word und Konsorten taugen nicht als scripeditoren.

Notepad oder der Atom Editor mit dem passenden highlighter Datensatz sind da schon mal der erste richtige Weg.

Auf ccu basis ist der script executor eine hilfreiche Ergänzung
Die Steigerung dazu sind dann integrierte Umgebungen, die einen Editor mit vielen Hilfemöglichkeiten sowie Möglichkeiten zur objektvisualisierung und Diagnose enthalten.

Black
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

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“