Hallo,
ich habe ein kleines Problem mit der Logik von Programmen, weiß aber nicht wie ich es lösen kann.
Es geht um die Verbindung von einer Fernbedienung (HmIP-RC8), einem FungGong (HM-OU-CFM-TW)
und ein paar Fensterkontakte (HMIP-SWDO).
Ich habe an der Fernbedienung eine Taste bei der ich prüfen kann ob ein Fenster geöffnet ist und
dann wird eine mp3 auf dem Funkgong abgespielt mit dem entsprechenden Ergebnis.
Das Programm (FBEG-R04-RE-KU) hinter der Taste ist ein Klicki Bunti Progrämmchen mit vielen Wenn's und Dann's. Das funktioniert sehr gut.
Eine zweite Taste ruft ein Programm (FBEG-R04-LI-LA) auf und schaltet damit alle Verbraucher aus und außerdem ruft es mit Verzögerung das Programm FBEG-R04-RE-KU auf, welches mir anschließend sagen soll ob alle Fenster geschlossen sind oder nicht.
Das Programm FBEG-R04-RE-KU wird hier per script aufgerufen.
var programObj = dom.GetObject("FBEG-R04-RE-KU");
programObj.ProgramExecute();
Nun ist es so, dass hier immer das erste DANN ausgeführt wird und damit das Ergebnis im Funkgong nicht stimmt.
Wie kann ich dies denn sonst realisieren?
Oder muss ich diese Klicki Bunti Programm komplett als Script realisieren. Das wäre sehr aufwendig für mich.
Gruß
lpop
[GELÖST] Programmaufruf liefert falsches Ergebnis
Moderatoren: jmaus, Co-Administratoren
- robbi77
- Beiträge: 13847
- Registriert: 19.01.2011, 19:15
- System: CCU
- Wohnort: Landau
- Hat sich bedankt: 181 Mal
- Danksagung erhalten: 738 Mal
Re: Programmaufruf liefert falsches Ergebnis
Mit einer Systemvariablen, die im ersten Programm umgeschaltet wird, somit das zweite Programm triggert und im zweiten Programm auch wieder zurück gestellt wird.
Dein Scriptaufruf ist das gleiche wie wenn du das Programm manuell auslöst.
Gruß
Roberto
Dein Scriptaufruf ist das gleiche wie wenn du das Programm manuell auslöst.
Gruß
Roberto
Bei Risiken und Nebenwirkungen fragen Sie den Elektriker Ihres geringsten Mißtrauens!
http://www.eq-3.de/service/downloads.html
Tips und Tricks für Anfänger: viewtopic.php?t=22801
Programmlogik: viewtopic.php?f=31&t=4251
Webui-Handbuch: https://www.eq-3.de/downloads/download/ ... h_eQ-3.pdf
Script und Linksammlung: viewtopic.php?f=26&t=27907
Troll des Forums ...
http://www.eq-3.de/service/downloads.html
Tips und Tricks für Anfänger: viewtopic.php?t=22801
Programmlogik: viewtopic.php?f=31&t=4251
Webui-Handbuch: https://www.eq-3.de/downloads/download/ ... h_eQ-3.pdf
Script und Linksammlung: viewtopic.php?f=26&t=27907
Troll des Forums ...
Re: Programmaufruf liefert falsches Ergebnis
ProgramExecute() ist nichts anderes wie das händische Ausführen eines Programms z.B. über den Button "Ausführen" in der WebUI.
Beim händischen ausführen wird IMMER das erste DANN ohne Berücksichtigung der Bedingungen ausgeführt.
Um ein Programm auszulösen eignet sich am besten eine virtuelle Taste der CCU oder eine virtuelle Taste des CuXD.
Diese fügst Du im WENN oder SONST-WENN als Auslöser ein.
Ein Tastendruck z.B. aus dem DANN eines anderen Programms heraus löst dann den Durchlauf samt Prüfung der Bedingungen aus.
Beim händischen ausführen wird IMMER das erste DANN ohne Berücksichtigung der Bedingungen ausgeführt.
Um ein Programm auszulösen eignet sich am besten eine virtuelle Taste der CCU oder eine virtuelle Taste des CuXD.
Diese fügst Du im WENN oder SONST-WENN als Auslöser ein.
Ein Tastendruck z.B. aus dem DANN eines anderen Programms heraus löst dann den Durchlauf samt Prüfung der Bedingungen aus.
Viele Grüße!
Jörg
Jörg
Re: Programmaufruf liefert falsches Ergebnis
Konnte es mit der virtuelle Taste der CCU2 lösen. Wieder was gelernt. Danke für den Tipp.