Hallo.
Wenn ich ein DOIF einrichte, das nur an bestimmten Tagen sticht, werden andere, tägl. stattfindende DOELSEIF untergeordnet? Oder muss ich dann diesen DOELSEIF die restl. Monatstage zuweisen?
gruss
Kann sein, wie sieht das DOIF genau aus?
ich habe es mal so gelöst
DOELSEIF ([11:30|124] and !$mday==10) ((set daytime_UBRW HSV 236,100,100 1800),(set daytime_WWNW HSV 300,100,100 1800))
DOELSEIF ([11:30] and $mday==10) ((set daytime_UBRW RGB 000000 1800),(set daytime_WWNW HSV 300,100,100 1800))
besser wäre es wenn ich die 2. Abfrage sparen könnte, und nur am 10.,15.,etc. geschalten wird, und alles ohne datumsangabe nicht berücksichtigt wird um 11:30h
Das DOIF ist nicht komplett, es fehlt der 1. Zweig.
Das gezeigte DOIF verstehe ich so:
Du möchtest um 11 Uhr 30, montags, dienstags und donnerstags Befehl 1 ausführen, wenn nicht der 10. eines Monats ist.
und wenn die Bedingung nicht zu trifft, dann um 11 Uhr 30 Befehl 2 ausführen, falls es der 10. eines Monats ist.
Zitatbesser wäre es wenn ich die 2. Abfrage sparen könnte
Wenn Du Dir die 2. Abfrage ersparst, was soll dann die Befehle ausführen?
Was meinst Du mit besser?
Zitatund nur am 10.,15.,etc. geschalten wird, und alles ohne datumsangabe
In Deinem DOIF sehe ich keinen 15.
Was meinst Du mit etc.?
Wie soll das ohne Datumsangabe funktionieren?
Was ist das Ziel? Zu welcher Bedingung soll das DOIF welchen Befehl ausführen?
ok, hier das volle DOIF
([Rio_Negro:aktEvent] eq "sr_indoor" and [06:20-07:59|357]) ((set daytime_UBRW HSV 335,80,100 4000),(set daytime_WWNW HSV 0,100,50 4000))
DOELSEIF ([11:30|124] and !$mday==10) ((set daytime_UBRW HSV 236,100,100 1800),(set daytime_WWNW HSV 300,100,100 1800))
DOELSEIF ([11:30] and $mday==10) ((set daytime_UBRW RGB 000000 1800),(set daytime_WWNW HSV 300,100,100 1800))
DOELSEIF ([Rio_Negro:aktEvent] eq "ss_astro") ((set daytime_UBRW HSV 240,100,6 5700),(set daytime_WWNW HSV 0,0,0 6000))
das mit 15. wäre ja nur zusätzlich, wenn dieses erstmal klappt.
die frage die ich stellte, war eigentlich ob es notwendig ist alle tage ausser den 10. zu definieren, oder ob nur das DOELSEIF mit 10. jedes Monats genügt.
Ziel ist es , das DOIF so klein als möglich zu halten, ohne zusätzliche Zeilen wie "wenn nicht der 10. dann", sondern einen Rhytmus anlegen, der wenn der 10., oder 15. eintritt nur durch diesen Eintrag gestört wird.
gruss
Zitatdie frage die ich stellte, war eigentlich ob es notwendig ist alle tage ausser den 10. zu definieren, oder ob nur das DOELSEIF mit 10. jedes Monats genügt.
Wenn eine Bedingung an allen gewünschten Tagen schaltet, dann schaltet die folgende Bedingung nur, wenn die vorstehende Bedingung unwahr ist.
Zitatdas mit 15. wäre ja nur zusätzlich, wenn dieses erstmal klappt.
Ich verstehe das so, dass das DOIF nicht funktioniert. Wo genau weicht das tatsächliche Verhalten von dem erwarteten Verhalten ab?
Ich denke, dass
DOELSEIF ([11:30] and <Bedingung 1>) (<Befehle 1>)
DOELSEIF ([11:30] and !<Bedingung 1>) (<Befehle 2>)
sich verhält wie
DOELSEIF ([11:30] and <Bedingung 1>) (<Befehle 1>)
DOELSEIF ([11:30]) (<Befehle 2>)
also müsstest Du erstmal die einschränkende Bedingung 1 vollständig formulieren, dann kannst Du den 2. Bedingungszweig vereinfachen.