[canceled] "verwendete Skript-Variablen zählen" - Skript

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

BadenPower

Re: "verwendete Skript-Variabeln zählen" - Skript

Beitrag von BadenPower » 07.08.2016, 14:18

koppenho hat geschrieben:Dann wurden Skripte, die ggf. in den Programmen stecken, noch nie ausgeführt. Die Variablen wurden deshalb auch noch nicht allokiert.
Solange der Haken nicht gesetzt ist, passiert auch nix.
Das ist so nicht ganz richtig, denn die "inaktiven" Programme mit den Skripten könnten ja auch manuell oder über ein Skript ausgeführt werden.

Ist der Haken bei "Aktiv" nicht gesetzt, dann bedeutet das nur, dass die CCU das Programm nicht automatisch ausführt, aber eben nicht zwangsläufig, dass das Programm nicht ausgeführt wird.

Daher ist auch ein Unterteilen der Zählung in aktive und inaktive Programme nicht unbedingt sinnvoll.
chka hat geschrieben:wenn ich es richtig verstehe sind die Deklarationen nicht so wichtig wichtiger ist es die variablen name so klein wie möglich zuhalten.
Die Anzahl der Deklarationen ist völlig unwichtig.

Die Anzahl der gefundenen verschiedenen Variable-Namen hingegen sollte unter 200 liegen. Wenn möglich deutlich darunter, da beim Anlernen neuer Geräte auch automatisch von der CCU Variablenamen in internen Programmen hinzukommen können.
.

Technikfreak
Beiträge: 1
Registriert: 13.08.2016, 19:21

Re: "verwendete Skript-Variabeln zählen" - Skript

Beitrag von Technikfreak » 13.08.2016, 19:26

Hallo, ich möchte gerne wissen in welchem Programm(en) eine bestimmte Variable verwendet wird, könntest Du mir sagen wie Dein Script hier modifiziert werden müsste um das zu erreichen ?

Vielen Dank
Zuletzt geändert von alchy am 13.08.2016, 20:50, insgesamt 1-mal geändert.
Grund: sinnloses und falsches Fullquote entfernt

BadenPower

Re: "verwendete Skript-Variabeln zählen" - Skript

Beitrag von BadenPower » 13.08.2016, 19:37

Technikfreak hat geschrieben:Hallo, ich möchte gerne wissen in welchem Programm(en) eine bestimmte Variable verwendet wird, könntest Du mir sagen wie Dein Script hier modifiziert werden müsste um das zu erreichen ?
Deine Frage zu finden war schon Schwerstarbeit und ist etwas verwirrend.

Welche Art der Variabeln möchtest Du finden?

Systemvariablen oder Skriptvariablen?

Meinst Du wirklich Programme oder Skripte?

Lampi
Beiträge: 42
Registriert: 07.03.2011, 11:48
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: "verwendete Skript-Variabeln zählen" - Skript

Beitrag von Lampi » 19.08.2016, 10:32

@BadenPower

Auch von mir einen großen Dank für das Skript. Eine tolle Arbeit!


@Technikfreak

Im Anhang eine etwas geänderte Version des Skriptes (basiert auf Version 1.0.2 von BadenPower). Vielleicht hilft Dir das weiter.

Gruß
Jörg
Dateianhänge
Skriptvariable-Zähler.txt
(13.01 KiB) 160-mal heruntergeladen

Benutzeravatar
papi
Beiträge: 371
Registriert: 18.12.2013, 08:40
Wohnort: Willich, NRW
Hat sich bedankt: 2 Mal
Danksagung erhalten: 5 Mal

Re: "verwendete Skript-Variabeln zählen" - Skript

Beitrag von papi » 19.08.2016, 11:40

Tolle Ergänzung Lampi,

damit hat das Suchen nun auch ein Ende.

Danke!!!

mike08
Beiträge: 283
Registriert: 13.09.2015, 11:18
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 3 Mal
Danksagung erhalten: 2 Mal

Re: "verwendete Skript-Variabeln zählen" - Skript

Beitrag von mike08 » 21.08.2016, 14:52

Lampi hat geschrieben:Im Anhang eine etwas geänderte Version des Skriptes (basiert auf Version 1.0.2 von BadenPower). Vielleicht hilft Dir das weiter.
Hallo Jörg, das ist eine klasse Ergänzung. Vieleicht kann ja BadenPower, diese Ergänzung als Version 1.3 übernehmen.

@BadenPower: Klasse Urskript!

Grüße
Michael
Fritzbox 7590 mit 7.x (immer aktuell)
Raspberry Pi3b mit RM: Aktuell
CCU2: Abgeschaltet
Zusatzsoftware: CUx-Daemon, E-Mail CCU Addon, hm_pdetect, hm-Print
Skripte: Servicemeldung 1.x http://homematic-forum.de/forum/viewtop ... 18#p211604
ioBroker auf Synology DS916+II imTest;
Wandtermostat, Tür-/Fensterkontakt, Ausenthermostat, 1 Kanal Taster, 2 Kanal Taster, Hutch-4fach Aktor, 1fach UP-Aktor, 2fach UP-Aktor, E-Paper-Display; CUL868(v3), USB2.0-Ser! [FF]

BadenPower

Re: "verwendete Skript-Variablen zählen" - Skript

Beitrag von BadenPower » 22.08.2016, 14:24

Achtung: Version 1.1.0 Buggy
wird bearbeitet
Zuletzt geändert von BadenPower am 22.08.2016, 19:59, insgesamt 1-mal geändert.

Benutzeravatar
papi
Beiträge: 371
Registriert: 18.12.2013, 08:40
Wohnort: Willich, NRW
Hat sich bedankt: 2 Mal
Danksagung erhalten: 5 Mal

Re: "verwendete Skript-Variablen zählen" - Skript

Beitrag von papi » 22.08.2016, 15:02

Wow, jetzt fehlen nur noch Bügeln und Kochen. :-)
Beim Zählen musst Du aber nochmal nachbessern, denn die Ergebnisse sind noch verbesserungsfähig:

Mal folgenden Ausschnitt als Beispiel1:

tmpA
deklariert als: integer object real string var
Anzahl Programme die diese Variable verwenden: 1
nur in aktiven Programmen verwendet
nur in normalen Programmen verwendet
verwendet in folgenden aktiven normalen Programmen:
Fenster Buero in: Skript-1

Faktisch kommt diese Variable in mindestens 50 Programmen, in unterschiedlichen Skripten vor
Hier ist also die Anzahl und die Auflistung nicht ok.

Beispiel2:

stdout
deklariert als: string
Anzahl Programme die diese Variable verwenden: 1
nur in aktiven Programmen verwendet
in normalen und internen Programmen verwendet
verwendet in folgenden aktiven internen Programmen:
@HomeNotificationSender in: Skript-1
verwendet in folgenden aktiven normalen Programmen:

Diese Variable kommt auch in vielen aktiven, normalen Programmen vor, aber wird dort gar nicht erfasst.

Ansonsten: Die eierlegende Wollmilchsau! Tolle Arbeit!

BadenPower

Re: "verwendete Skript-Variablen zählen" - Skript

Beitrag von BadenPower » 22.08.2016, 15:55

papi hat geschrieben:Wow, jetzt fehlen nur noch Bügeln und Kochen. :-)
Beim Zählen musst Du aber nochmal nachbessern, denn die Ergebnisse sind noch verbesserungsfähig:
Das hatte ich schon gemerkt und deshalb die 1.1.0 nochmals zurückgezogen.
Da habe ich ausversehen einen ganzen Programmteil gelöscht.

BadenPower

Re: "verwendete Skript-Variablen zählen" - Skript

Beitrag von BadenPower » 22.08.2016, 19:59

Neue Version in Post 1

Funktionsumfang ab Version 1.1.1
  • alphabetische Ausgabe der gefundenen Variablenamen
  • Ausgabe, welche Variable von welchem Programm/Skript verwendet wird
  • Ausgabe in welchen Variabletypen eine Variable deklariert wurde
  • sucht nach bedenklichen Variablenamen und gibt diese aus
  • seperate Ausgabe Programm/Skript-Liste mit den darin verwendeten Variablenamen (alphabetisch geordnet)
  • Einstellmöglichkeit zum Durchsuchen von aktiven / inaktiven Programmen
  • Einstellmöglichkeit zum Durchsuchen von internen / normalen Programmen
Einstellmöglichkeiten ab Version 1.1.1
  • lSingleProgName ( Zeile 5 )
    • Hier kann man den Namen eines Programmes angeben, wenn man nur ein Programm durchsuchen will.
  • lChkActiveState ( Zeile 6 )
    • 0 = durchsucht aktive und inaktive Programme
    • 1 = durchsucht nur aktive Programme
    • 2 = durchsucht nur inaktive Programme
  • lChkInternalState ( Zeile 7 )
    • 0 = durchsucht normale und interne Programme
    • 1 = durchsucht nur normale Programme
    • 2 = durchsucht nur interne Programme
  • lPrintVarNames ( Zeile 8 )
    • true = Ausgabe der alphabetisch geordneten Variablenamen
    • false = keine Ausgabe der Variablelisten
  • lPrintVarDeclTypes ( Zeile 9 )
    • true = Ausgabe der Variabletypen als Zusatzinformation
    • false = keine Ausgabe der Variabletypen
  • lPrintPrgUsageInfo ( Zeile 10 )
    • true = Ausgabe der Programmnamen in denen diese Variable verwendet wird als Zusatzinformation
    • false = keine Ausgabe der Programmnamen
  • lPrintVarNamesPerProgram ( Zeile 11 )
    • true = seperate Programmliste mit den jeweils enthaltenen Variablenamen je Programm und Skript
    • false = keine Ausgabe der seperaten Programmliste

Gesperrt

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“