Variable als Bedingung?

Post your questions and help other users.

Moderator: Martin

Post Reply
Crosschecker
Posts: 3
Joined: 10 May 2016 18:19

Variable als Bedingung?

Post by Crosschecker » 10 May 2016 18:31

Hallo Community,
ist es möglich, dass man eine Variable als Bedingung am Anfang eines Flows setzt? Also zb. wenn die Variable "Baum" den Wert 1 hat soll der folgende Flow ausgeführt werden. Mit welchem Block kann ich den Wert einer Variable verändern?
Danke schon mal im Vorraus

Crosschecker :)

User avatar
Martin
Posts: 4468
Joined: 09 Nov 2012 14:23

Re: Variable als Bedingung?

Post by Martin » 10 May 2016 19:56

Hi,

Du kannst eine Variable mit einer Action Script verändern, z.B. so:

Code: Select all

meine_variable = 123;
Mit einer Condition Expression kannst du eine Variable prüfen und abhängig vom Wert andere Actions ausführen, z.B. so:

Code: Select all

meine_variable == 123;
Bitte beachte das doppelte Gleichheitszeichen. Ein einfaches Gleichheitszeichen weist einen neuen Wert einer Variablen zu, ein doppeltes Gleichheitszeichen vergleicht den Inhalt der Variable auf der linken Seite mit dem Wert auf der rechten Seite und gibt true oder false zurück.

Du könntest auch mit der Condition Expression eine Variable prüfen und abhängig vom Resultat mit der Action Flows ausführen einen passenden Flow ausführen.
Es wäre auch möglich, die Action Flows ausführen mit einer Variable zu parametrisieren, z.B. wenn du als Flow folgenden Namen angibst Flow_{meine_variable}. Wenn in der Variable meine_variable der Wert 123 steht, würde die Action den Flow mit Namen Flow_123 ausführen.

Freundliche Grüsse
Martin

Crosschecker
Posts: 3
Joined: 10 May 2016 18:19

Re: Variable als Bedingung?

Post by Crosschecker » 11 May 2016 11:49

Hi Martin,
danke für die schnelle Antwort, wirklich super hier :)
Für was ist dann eig. der Trigger "globale Variable" gut? Bzw. wie verwende ich ihn?
Gibt es eig. auch einen undefinierten Trigger? Also das er nur getriggert wird, wenn ich ihn manuell ausführe? Nur mal so nebenbei: Ist es möglich, den Mechanismus, der wenn sich ein Flow zu oft wiederholt, ihn abbricht und deaktiviert, auszuschalten?

MfG

Crosschecker ;)

User avatar
Martin
Posts: 4468
Joined: 09 Nov 2012 14:23

Re: Variable als Bedingung?

Post by Martin » 11 May 2016 18:58

Hi,

Der Trigger Globale Variable wird dazu verwendet, um einen Flow auszuführen, wenn sich eine globale Variable verändert. Das kann zum Beispiel dann nützlich sein, wenn ein Umschalt-Widget eine boolsche Variable zwischen true und false umschaltet. Der Flow kann dann auf die Änderung der Variable reagieren und beispielsweise etwas ein- oder ausschalten.

Du kannst beim Flow den Trigger einfach weglassen, dann führt Automagic den Flow nicht automatisch aus, aber du kannst den Flow trotzdem über Flow ausführen starten. Der Flow muss dazu aber trotzdem eingeschaltet sein.

Den eingebauten automatischen Stopp kannst du beim Flow editieren über Menü->Optionen->Automatischer Stopp einstellen und z.B. für einen Flow auf Spezifisch mit 6000 pro Minute ändern. Theoretisch könntest du die Limite auch global in den Einstellungen von Automagic erhöhen. Davon würde ich allerdings abraten, da es oft ein Fehler ist, wenn ein Flow sehr oft ausgeführt wird.

Freundliche Grüsse
Martin

newturn
Posts: 30
Joined: 20 Apr 2016 08:36

Re: Variable als Bedingung?

Post by newturn » 11 May 2016 20:30

hi,

ich klink mich kurz mal ein:

Kann ich bei dem Trigger "Globale Variable" eine Bedingung mit einfügen? Kann ich auch gleich zwei Globale Variablen hintereinander abfragen (global_screen == "on" and global_orientation == "face up")?

Denke das passt hier gut ins Thema.

Crosschecker
Posts: 3
Joined: 10 May 2016 18:19

Re: Variable als Bedingung?

Post by Crosschecker » 12 May 2016 11:19

Hi,
danke für Antwort :)
kann ich auch den durch den Wert eines Integers verwenden? Also, dass zb. der Flow ausgeführt wenn die Variable global_XYZ den Wert 1 hat. Wenn ja, was muss ich dazu eingeben?

MfG

Crosschecker

newturn
Posts: 30
Joined: 20 Apr 2016 08:36

Re: Variable als Bedingung?

Post by newturn » 12 May 2016 16:50

das war doch auch meine Frage ;)

Aber damit du erstmal eine Lösung hast:
trigger: globale variable
condition -> expression: globale variable == 1
ja: deine aufgaben

Post Reply