Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Monat als Bedingung

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    505

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.6k

Monat als Bedingung

Geplant Angeheftet Gesperrt Verschoben Blockly
23 Beiträge 5 Kommentatoren 2.1k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • I Offline
    I Offline
    ionar
    schrieb am zuletzt editiert von
    #1

    Hallo,
    gibt es in Blockly eine Option, den aktuellen Monat als Bedingung zu nutzen?
    Ich würde gerne in einem Skript so etwas nutzen:

    Wenn der aktuelle Monat Mai, Juni, Juli, August, September ist, dann [...] ansonsten [...]

    Oder muss ich erst ein Skript erstellen, der den Monat als Objekt erstellt?

    Vielen Dank!

    haus-automatisierungH 1 Antwort Letzte Antwort
    0
    • I ionar

      Hallo,
      gibt es in Blockly eine Option, den aktuellen Monat als Bedingung zu nutzen?
      Ich würde gerne in einem Skript so etwas nutzen:

      Wenn der aktuelle Monat Mai, Juni, Juli, August, September ist, dann [...] ansonsten [...]

      Oder muss ich erst ein Skript erstellen, der den Monat als Objekt erstellt?

      Vielen Dank!

      haus-automatisierungH Online
      haus-automatisierungH Online
      haus-automatisierung
      Developer Most Active
      schrieb am zuletzt editiert von
      #2

      @ionar Sowas?

      Screenshot 2022-10-18 at 10.08.17.png

      <xml xmlns="https://developers.google.com/blockly/xml">
        <block type="controls_if" id="]Xf,TLH[2hWhtzZAyiO#" x="-338" y="337">
          <mutation else="1"></mutation>
          <value name="IF0">
            <block type="logic_compare" id="-0Q[B-o3AK.-?BcNH?wm" inline="false">
              <field name="OP">GT</field>
              <value name="A">
                <block type="lists_indexOf" id="F`;_-JP*?C@Rx;-Fx!B]">
                  <field name="END">FIRST</field>
                  <value name="VALUE">
                    <block type="lists_create_with" id="_Rn;0qv=Xu,^@OS`Bdl.">
                      <mutation items="5"></mutation>
                      <value name="ADD0">
                        <block type="math_number" id=",oOO/@POXoS~eWp+6=}C">
                          <field name="NUM">5</field>
                        </block>
                      </value>
                      <value name="ADD1">
                        <block type="math_number" id="SBtjdoy,XOsMkGsr2zp;">
                          <field name="NUM">6</field>
                        </block>
                      </value>
                      <value name="ADD2">
                        <block type="math_number" id="@B`!mLQOPN8u`a0Z^sZT">
                          <field name="NUM">7</field>
                        </block>
                      </value>
                      <value name="ADD3">
                        <block type="math_number" id="^O;/x)?([)]:*F{o|m^#">
                          <field name="NUM">8</field>
                        </block>
                      </value>
                      <value name="ADD4">
                        <block type="math_number" id="Zon53V9-%7}|lXKt5OZ[">
                          <field name="NUM">9</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <value name="FIND">
                    <block type="time_get" id="q,-5$nrng@pfapYXeR8p">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                      <field name="OPTION">M</field>
                    </block>
                  </value>
                </block>
              </value>
              <value name="B">
                <block type="math_number" id="yp?!9v=vGa(:~Q|wW56.">
                  <field name="NUM">0</field>
                </block>
              </value>
            </block>
          </value>
        </block>
      </xml>
      

      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
      📚 Meine inoffizielle ioBroker Dokumentation

      I 1 Antwort Letzte Antwort
      1
      • haus-automatisierungH haus-automatisierung

        @ionar Sowas?

        Screenshot 2022-10-18 at 10.08.17.png

        <xml xmlns="https://developers.google.com/blockly/xml">
          <block type="controls_if" id="]Xf,TLH[2hWhtzZAyiO#" x="-338" y="337">
            <mutation else="1"></mutation>
            <value name="IF0">
              <block type="logic_compare" id="-0Q[B-o3AK.-?BcNH?wm" inline="false">
                <field name="OP">GT</field>
                <value name="A">
                  <block type="lists_indexOf" id="F`;_-JP*?C@Rx;-Fx!B]">
                    <field name="END">FIRST</field>
                    <value name="VALUE">
                      <block type="lists_create_with" id="_Rn;0qv=Xu,^@OS`Bdl.">
                        <mutation items="5"></mutation>
                        <value name="ADD0">
                          <block type="math_number" id=",oOO/@POXoS~eWp+6=}C">
                            <field name="NUM">5</field>
                          </block>
                        </value>
                        <value name="ADD1">
                          <block type="math_number" id="SBtjdoy,XOsMkGsr2zp;">
                            <field name="NUM">6</field>
                          </block>
                        </value>
                        <value name="ADD2">
                          <block type="math_number" id="@B`!mLQOPN8u`a0Z^sZT">
                            <field name="NUM">7</field>
                          </block>
                        </value>
                        <value name="ADD3">
                          <block type="math_number" id="^O;/x)?([)]:*F{o|m^#">
                            <field name="NUM">8</field>
                          </block>
                        </value>
                        <value name="ADD4">
                          <block type="math_number" id="Zon53V9-%7}|lXKt5OZ[">
                            <field name="NUM">9</field>
                          </block>
                        </value>
                      </block>
                    </value>
                    <value name="FIND">
                      <block type="time_get" id="q,-5$nrng@pfapYXeR8p">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                        <field name="OPTION">M</field>
                      </block>
                    </value>
                  </block>
                </value>
                <value name="B">
                  <block type="math_number" id="yp?!9v=vGa(:~Q|wW56.">
                    <field name="NUM">0</field>
                  </block>
                </value>
              </block>
            </value>
          </block>
        </xml>
        
        I Offline
        I Offline
        ionar
        schrieb am zuletzt editiert von
        #3

        @haus-automatisierung
        Die Blöcke verstehe ich nicht ganz, aber es wird wahrscheinlich das sein, was ich meine :laughing:

        Vielen Dank!

        haus-automatisierungH 1 Antwort Letzte Antwort
        0
        • I ionar

          @haus-automatisierung
          Die Blöcke verstehe ich nicht ganz, aber es wird wahrscheinlich das sein, was ich meine :laughing:

          Vielen Dank!

          haus-automatisierungH Online
          haus-automatisierungH Online
          haus-automatisierung
          Developer Most Active
          schrieb am zuletzt editiert von haus-automatisierung
          #4

          @ionar sagte in Monat als Bedingung:

          Die Blöcke verstehe ich nicht ganz

          Was verstehst Du denn nicht? Es wird einfach geschaut, ob der aktuelle Monat in der Liste der von Dir definierten Monate vorkommt, oder nicht.

          @ionar sagte in Monat als Bedingung:

          Vielen Dank!

          Ich freue mich über einen Upvote des Beitrags, wenn es hilfreich war :)

          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
          📚 Meine inoffizielle ioBroker Dokumentation

          I 1 Antwort Letzte Antwort
          1
          • haus-automatisierungH haus-automatisierung

            @ionar sagte in Monat als Bedingung:

            Die Blöcke verstehe ich nicht ganz

            Was verstehst Du denn nicht? Es wird einfach geschaut, ob der aktuelle Monat in der Liste der von Dir definierten Monate vorkommt, oder nicht.

            @ionar sagte in Monat als Bedingung:

            Vielen Dank!

            Ich freue mich über einen Upvote des Beitrags, wenn es hilfreich war :)

            I Offline
            I Offline
            ionar
            schrieb am zuletzt editiert von
            #5

            @haus-automatisierung
            Die Liste verstehe ich noch, konnte ich auch gerade mit Debug Output mit und ohne "10" in der Liste testen, um es zu verstehen.
            Aber das davor:

            "Wenn größer als Null und der aktuelle Monat als Zahl (dieser Monat 10) in der Liste 5-9 vorkommt, dann [...]"

            Ist das so richtig? Vielen Dank auf jeden Fall!

            liv-in-skyL CodierknechtC 2 Antworten Letzte Antwort
            0
            • HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #6

              https://forum.iobroker.net/post/874999

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              1 Antwort Letzte Antwort
              1
              • I ionar

                @haus-automatisierung
                Die Liste verstehe ich noch, konnte ich auch gerade mit Debug Output mit und ohne "10" in der Liste testen, um es zu verstehen.
                Aber das davor:

                "Wenn größer als Null und der aktuelle Monat als Zahl (dieser Monat 10) in der Liste 5-9 vorkommt, dann [...]"

                Ist das so richtig? Vielen Dank auf jeden Fall!

                liv-in-skyL Offline
                liv-in-skyL Offline
                liv-in-sky
                schrieb am zuletzt editiert von
                #7

                @ionar
                sowas war erst gestern im forum https://forum.iobroker.net/post/874999

                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                1 Antwort Letzte Antwort
                1
                • I ionar

                  @haus-automatisierung
                  Die Liste verstehe ich noch, konnte ich auch gerade mit Debug Output mit und ohne "10" in der Liste testen, um es zu verstehen.
                  Aber das davor:

                  "Wenn größer als Null und der aktuelle Monat als Zahl (dieser Monat 10) in der Liste 5-9 vorkommt, dann [...]"

                  Ist das so richtig? Vielen Dank auf jeden Fall!

                  CodierknechtC Offline
                  CodierknechtC Offline
                  Codierknecht
                  Developer Most Active
                  schrieb am zuletzt editiert von Codierknecht
                  #8

                  @ionar sagte in Monat als Bedingung:

                  @haus-automatisierung
                  Die Liste verstehe ich noch, konnte ich auch gerade mit Debug Output mit und ohne "10" in der Liste testen, um es zu verstehen.
                  Aber das davor:

                  "Wenn größer als Null und der aktuelle Monat als Zahl (dieser Monat 10) in der Liste 5-9 vorkommt, dann [...]"

                  Ist das so richtig? Vielen Dank auf jeden Fall!

                  "Monat als Zahl" liefert einfach den Zahlenwert des aktuellen Monats ... im Moment also eine "10".
                  "Suche ersten Auftreten" liefert die Position dieses Zahlenwertes in der vorgegeben Liste.
                  In einer Liste "5,6,7,8,9" würde das Ergebnis "0" "-1" lauten (0-basierter Index). Der Wert ist nicht enthalten.
                  Besteht die Liste aus den Werten "5,6,7,8,9,10", kommt als Ergebnis eine "6" "5" zurück.

                  Alles was größer oder gleich 0 ist bedeutet demnach schlichtweg, dass der gesuchte Wert in der Liste enthalten ist.
                  Darauf kannst Du dann reagieren und das "falls/sonst" mit Leben füllen.

                  Wenn die gewünschte Liste lediglich Monate von-bis enthält, ist das hier natürlich einfacher und vermutlich verständlicher: https://forum.iobroker.net/post/874999

                  "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                  Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                  HmIP|ZigBee|Tasmota|Unifi
                  Zabbix Certified Specialist
                  Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                  haus-automatisierungH 1 Antwort Letzte Antwort
                  2
                  • CodierknechtC Codierknecht

                    @ionar sagte in Monat als Bedingung:

                    @haus-automatisierung
                    Die Liste verstehe ich noch, konnte ich auch gerade mit Debug Output mit und ohne "10" in der Liste testen, um es zu verstehen.
                    Aber das davor:

                    "Wenn größer als Null und der aktuelle Monat als Zahl (dieser Monat 10) in der Liste 5-9 vorkommt, dann [...]"

                    Ist das so richtig? Vielen Dank auf jeden Fall!

                    "Monat als Zahl" liefert einfach den Zahlenwert des aktuellen Monats ... im Moment also eine "10".
                    "Suche ersten Auftreten" liefert die Position dieses Zahlenwertes in der vorgegeben Liste.
                    In einer Liste "5,6,7,8,9" würde das Ergebnis "0" "-1" lauten (0-basierter Index). Der Wert ist nicht enthalten.
                    Besteht die Liste aus den Werten "5,6,7,8,9,10", kommt als Ergebnis eine "6" "5" zurück.

                    Alles was größer oder gleich 0 ist bedeutet demnach schlichtweg, dass der gesuchte Wert in der Liste enthalten ist.
                    Darauf kannst Du dann reagieren und das "falls/sonst" mit Leben füllen.

                    Wenn die gewünschte Liste lediglich Monate von-bis enthält, ist das hier natürlich einfacher und vermutlich verständlicher: https://forum.iobroker.net/post/874999

                    haus-automatisierungH Online
                    haus-automatisierungH Online
                    haus-automatisierung
                    Developer Most Active
                    schrieb am zuletzt editiert von
                    #9

                    @codierknecht sagte in Monat als Bedingung:

                    Alles was größer oder gleich 0 ist bedeutet demnach schlichtweg, dass der gesuchte Wert in der Liste enthalten ist.

                    Wenn man .indexOf() kennt, dann könnte man das denken.
                    Leider rechnet der Blockly-Baustein +1. Also > 0 bedeutet gefunden und == 0 wäre nicht gefunden. Finde ich auch verwirrend. Man möchte wohl den Nutzern das "Index fängt bei 0 an"-Thema vereinfachen.

                    🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                    🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                    📚 Meine inoffizielle ioBroker Dokumentation

                    CodierknechtC 1 Antwort Letzte Antwort
                    2
                    • haus-automatisierungH haus-automatisierung

                      @codierknecht sagte in Monat als Bedingung:

                      Alles was größer oder gleich 0 ist bedeutet demnach schlichtweg, dass der gesuchte Wert in der Liste enthalten ist.

                      Wenn man .indexOf() kennt, dann könnte man das denken.
                      Leider rechnet der Blockly-Baustein +1. Also > 0 bedeutet gefunden und == 0 wäre nicht gefunden. Finde ich auch verwirrend. Man möchte wohl den Nutzern das "Index fängt bei 0 an"-Thema vereinfachen.

                      CodierknechtC Offline
                      CodierknechtC Offline
                      Codierknecht
                      Developer Most Active
                      schrieb am zuletzt editiert von
                      #10

                      @haus-automatisierung sagte in Monat als Bedingung:

                      @codierknecht sagte in Monat als Bedingung:

                      Alles was größer oder gleich 0 ist bedeutet demnach schlichtweg, dass der gesuchte Wert in der Liste enthalten ist.

                      Wenn man .indexOf() kennt, dann könnte man das denken.
                      Leider rechnet der Blockly-Baustein +1. Also > 0 bedeutet gefunden und == 0 wäre nicht gefunden. Finde ich auch verwirrend. Man möchte wohl den Nutzern das "Index fängt bei 0 an"-Thema vereinfachen.

                      Fast so schlimm wie das Ganze einzudeutschen ... gruselig.
                      Hab's korrigiert! Danke!

                      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                      HmIP|ZigBee|Tasmota|Unifi
                      Zabbix Certified Specialist
                      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                      haus-automatisierungH 1 Antwort Letzte Antwort
                      2
                      • CodierknechtC Codierknecht

                        @haus-automatisierung sagte in Monat als Bedingung:

                        @codierknecht sagte in Monat als Bedingung:

                        Alles was größer oder gleich 0 ist bedeutet demnach schlichtweg, dass der gesuchte Wert in der Liste enthalten ist.

                        Wenn man .indexOf() kennt, dann könnte man das denken.
                        Leider rechnet der Blockly-Baustein +1. Also > 0 bedeutet gefunden und == 0 wäre nicht gefunden. Finde ich auch verwirrend. Man möchte wohl den Nutzern das "Index fängt bei 0 an"-Thema vereinfachen.

                        Fast so schlimm wie das Ganze einzudeutschen ... gruselig.
                        Hab's korrigiert! Danke!

                        haus-automatisierungH Online
                        haus-automatisierungH Online
                        haus-automatisierung
                        Developer Most Active
                        schrieb am zuletzt editiert von
                        #11

                        @codierknecht Ich muss mir auch ständig den generierten JS-Code anschauen, ... um zu gucken ob der Block wirklich das macht, was ich hoffe :)

                        🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                        🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                        📚 Meine inoffizielle ioBroker Dokumentation

                        CodierknechtC 1 Antwort Letzte Antwort
                        2
                        • haus-automatisierungH haus-automatisierung

                          @codierknecht Ich muss mir auch ständig den generierten JS-Code anschauen, ... um zu gucken ob der Block wirklich das macht, was ich hoffe :)

                          CodierknechtC Offline
                          CodierknechtC Offline
                          Codierknecht
                          Developer Most Active
                          schrieb am zuletzt editiert von
                          #12

                          @haus-automatisierung
                          Dieses eingedeutschte Zeugs erinnert mich fatal an ein deutsches VBA in Excel.

                          "Wenn ... dann ... sonst"
                          

                          und - noch besser

                          "für x = 1 bis 10 ... nächstes"
                          

                          da braucht man beim Lesen ein Beißholz.

                          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                          HmIP|ZigBee|Tasmota|Unifi
                          Zabbix Certified Specialist
                          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                          1 Antwort Letzte Antwort
                          1
                          • I Offline
                            I Offline
                            ionar
                            schrieb am zuletzt editiert von
                            #13

                            Danke für die ganzen hilfreichen Antworten!
                            Also müsste das Skript mit diesen Bedingungen dann ja laufen oder?
                            Hintergrund ist, dass im Winter "Sonnig+bewölkt" nicht wirklich sonnig genug ist, damit beschattet werden muss.

                            1.png

                            HomoranH 1 Antwort Letzte Antwort
                            0
                            • I ionar

                              Danke für die ganzen hilfreichen Antworten!
                              Also müsste das Skript mit diesen Bedingungen dann ja laufen oder?
                              Hintergrund ist, dass im Winter "Sonnig+bewölkt" nicht wirklich sonnig genug ist, damit beschattet werden muss.

                              1.png

                              HomoranH Nicht stören
                              HomoranH Nicht stören
                              Homoran
                              Global Moderator Administrators
                              schrieb am zuletzt editiert von
                              #14

                              @ionar ich verstehe immer noch nicht, warum ihr unbedingt mit Listen arbeiten wollt.

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              I haus-automatisierungH 2 Antworten Letzte Antwort
                              0
                              • HomoranH Homoran

                                @ionar ich verstehe immer noch nicht, warum ihr unbedingt mit Listen arbeiten wollt.

                                I Offline
                                I Offline
                                ionar
                                schrieb am zuletzt editiert von
                                #15

                                @homoran Weil ich nicht wusste, wie ich deins als Bedingung einbaue :laughing:

                                HomoranH 1 Antwort Letzte Antwort
                                0
                                • I ionar

                                  @homoran Weil ich nicht wusste, wie ich deins als Bedingung einbaue :laughing:

                                  HomoranH Nicht stören
                                  HomoranH Nicht stören
                                  Homoran
                                  Global Moderator Administrators
                                  schrieb am zuletzt editiert von
                                  #16

                                  @ionar sagte in Monat als Bedingung:

                                  @homoran Weil ich nicht wusste, wie ich deins als Bedingung einbaue :laughing:

                                  falls aktuelle Zeit als Monat als Nummer <=4 oder aktuelle Zeit als Monat als Nummer >= 10

                                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                  CodierknechtC 1 Antwort Letzte Antwort
                                  1
                                  • HomoranH Homoran

                                    @ionar ich verstehe immer noch nicht, warum ihr unbedingt mit Listen arbeiten wollt.

                                    haus-automatisierungH Online
                                    haus-automatisierungH Online
                                    haus-automatisierung
                                    Developer Most Active
                                    schrieb am zuletzt editiert von
                                    #17

                                    @homoran Habe ich etwas verpasst? Der generierte Code ist doch super kurz - wo ist das Problem damit?

                                    if ([5, 6, 7, 8, 9].indexOf((new Date().getMonth() + 1)) + 1 > 0) {
                                    

                                    Ich finde das sogar leichter zu verstehen (hat der TO ja direkt angepasst für Winter).

                                    Aber hier:

                                    Screenshot 2022-10-18 at 11.12.07.png

                                    <xml xmlns="https://developers.google.com/blockly/xml">
                                      <variables>
                                        <variable id=",g^U$HY6Nt@|S)Jbx`lZ">month</variable>
                                      </variables>
                                      <block type="variables_set" id="LVQRo5;55e$:qr7C|B`[" x="-312" y="788">
                                        <field name="VAR" id=",g^U$HY6Nt@|S)Jbx`lZ">month</field>
                                        <value name="VALUE">
                                          <block type="time_get" id="N*}8@y=d27R6jq^PL=c/">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                            <field name="OPTION">M</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="controls_if" id="di=z-NMxup=@@XdZt/=+">
                                            <mutation else="1"></mutation>
                                            <value name="IF0">
                                              <block type="logic_operation" id=";68kByEfgtLu?Nn;+T~Q">
                                                <field name="OP">AND</field>
                                                <value name="A">
                                                  <block type="logic_compare" id="Q7%5+-vR*V8MV2r?4+{G">
                                                    <field name="OP">GTE</field>
                                                    <value name="A">
                                                      <block type="variables_get" id="$Qn?7I|Vr?=%[Q=VDE2w">
                                                        <field name="VAR" id=",g^U$HY6Nt@|S)Jbx`lZ">month</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="math_number" id="+PAOo0XrfUI_x6#zJ)r=">
                                                        <field name="NUM">5</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="logic_compare" id="y/?1j/!_WV?kqMKZGoCp">
                                                    <field name="OP">LTE</field>
                                                    <value name="A">
                                                      <block type="variables_get" id="ZcaJPCpi;j[v(S|6Ro?U">
                                                        <field name="VAR" id=",g^U$HY6Nt@|S)Jbx`lZ">month</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="math_number" id="%97Gfdp=|e?CuN`e,Q`w">
                                                        <field name="NUM">9</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                          </block>
                                        </next>
                                      </block>
                                    </xml>
                                    

                                    🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                                    🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                                    📚 Meine inoffizielle ioBroker Dokumentation

                                    HomoranH 1 Antwort Letzte Antwort
                                    2
                                    • haus-automatisierungH haus-automatisierung

                                      @homoran Habe ich etwas verpasst? Der generierte Code ist doch super kurz - wo ist das Problem damit?

                                      if ([5, 6, 7, 8, 9].indexOf((new Date().getMonth() + 1)) + 1 > 0) {
                                      

                                      Ich finde das sogar leichter zu verstehen (hat der TO ja direkt angepasst für Winter).

                                      Aber hier:

                                      Screenshot 2022-10-18 at 11.12.07.png

                                      <xml xmlns="https://developers.google.com/blockly/xml">
                                        <variables>
                                          <variable id=",g^U$HY6Nt@|S)Jbx`lZ">month</variable>
                                        </variables>
                                        <block type="variables_set" id="LVQRo5;55e$:qr7C|B`[" x="-312" y="788">
                                          <field name="VAR" id=",g^U$HY6Nt@|S)Jbx`lZ">month</field>
                                          <value name="VALUE">
                                            <block type="time_get" id="N*}8@y=d27R6jq^PL=c/">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                              <field name="OPTION">M</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="controls_if" id="di=z-NMxup=@@XdZt/=+">
                                              <mutation else="1"></mutation>
                                              <value name="IF0">
                                                <block type="logic_operation" id=";68kByEfgtLu?Nn;+T~Q">
                                                  <field name="OP">AND</field>
                                                  <value name="A">
                                                    <block type="logic_compare" id="Q7%5+-vR*V8MV2r?4+{G">
                                                      <field name="OP">GTE</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="$Qn?7I|Vr?=%[Q=VDE2w">
                                                          <field name="VAR" id=",g^U$HY6Nt@|S)Jbx`lZ">month</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="math_number" id="+PAOo0XrfUI_x6#zJ)r=">
                                                          <field name="NUM">5</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="logic_compare" id="y/?1j/!_WV?kqMKZGoCp">
                                                      <field name="OP">LTE</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="ZcaJPCpi;j[v(S|6Ro?U">
                                                          <field name="VAR" id=",g^U$HY6Nt@|S)Jbx`lZ">month</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="math_number" id="%97Gfdp=|e?CuN`e,Q`w">
                                                          <field name="NUM">9</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                            </block>
                                          </next>
                                        </block>
                                      </xml>
                                      
                                      HomoranH Nicht stören
                                      HomoranH Nicht stören
                                      Homoran
                                      Global Moderator Administrators
                                      schrieb am zuletzt editiert von
                                      #18

                                      @haus-automatisierung sagte in Monat als Bedingung:

                                      Aber hier:

                                      danke, mit var sogar noch einfacher!
                                      am Handy unterwegs sind Blöcke so schwer zu zeichnen.

                                      @haus-automatisierung sagte in Monat als Bedingung:

                                      Ich finde das sogar leichter zu verstehen

                                      ich ehrlich gesagt nicht, zumal es ja wirklich über einen einfachen Zahlenvergleich geht.

                                      pro Liste wäre es dass diese "beliebig" ausgestaltet und damit auch nicht einfache mathematische Regeln erstellt werden könnten.
                                      Was IMHO mit duesem Beispiel aber nicht notwendig wäre

                                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                      1 Antwort Letzte Antwort
                                      1
                                      • HomoranH Homoran

                                        @ionar sagte in Monat als Bedingung:

                                        @homoran Weil ich nicht wusste, wie ich deins als Bedingung einbaue :laughing:

                                        falls aktuelle Zeit als Monat als Nummer <=4 oder aktuelle Zeit als Monat als Nummer >= 10

                                        CodierknechtC Offline
                                        CodierknechtC Offline
                                        Codierknecht
                                        Developer Most Active
                                        schrieb am zuletzt editiert von
                                        #19

                                        @homoran
                                        In diesem Fall geht das sogar, weil der zu durchsuchende Bereich ein Intervall ist.
                                        Ob das dann leichter zu lesen ist, lasse ich mal dahingestellt.

                                        Schwieriger finde ich die Frage, ob Blockly denn auch von sich aus korrekt klammert.
                                        Ich stoße in meinem Umfeld immer wieder auf Fehler, weil vergessen wurde dass ein UND stärker bindet als ein ODER.
                                        Das ist in allen mir geläufigen Sprachen und z.B. auch in SQL so. Wenn man mal eine Klammer an der passenden Stelle vergessen hat, kommt's zu den kuriosesten Ergebnissen.

                                        Mit RegEx stehe ich seit Jahren auf Kriegsfuß, aber ich könnte mir vorstellen dass es auch damit gehen könnte.
                                        Oder mit einer JS-Funktion, die die Logik an anderer Stelle kapselt.

                                        Das Blockly des TO finde ich schon recht ambitioniert.
                                        Ich versuche, mich immer wieder auf ein Kernthema zu konzentrieren: Jeder Code muss auch irgendwann mal gewartet werden. Nicht selten denk man dabei: "Welcher Horst hat das denn verbrochen" .. um dann festzustellen: "Ups, ist ja mein eigener Code" :-D

                                        Egal, Hauptsache der TO kommt damit zurecht.

                                        OT: How To Write Unmaintainable Code :-D :-D :-D

                                        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                                        Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                                        HmIP|ZigBee|Tasmota|Unifi
                                        Zabbix Certified Specialist
                                        Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                                        HomoranH I 2 Antworten Letzte Antwort
                                        1
                                        • CodierknechtC Codierknecht

                                          @homoran
                                          In diesem Fall geht das sogar, weil der zu durchsuchende Bereich ein Intervall ist.
                                          Ob das dann leichter zu lesen ist, lasse ich mal dahingestellt.

                                          Schwieriger finde ich die Frage, ob Blockly denn auch von sich aus korrekt klammert.
                                          Ich stoße in meinem Umfeld immer wieder auf Fehler, weil vergessen wurde dass ein UND stärker bindet als ein ODER.
                                          Das ist in allen mir geläufigen Sprachen und z.B. auch in SQL so. Wenn man mal eine Klammer an der passenden Stelle vergessen hat, kommt's zu den kuriosesten Ergebnissen.

                                          Mit RegEx stehe ich seit Jahren auf Kriegsfuß, aber ich könnte mir vorstellen dass es auch damit gehen könnte.
                                          Oder mit einer JS-Funktion, die die Logik an anderer Stelle kapselt.

                                          Das Blockly des TO finde ich schon recht ambitioniert.
                                          Ich versuche, mich immer wieder auf ein Kernthema zu konzentrieren: Jeder Code muss auch irgendwann mal gewartet werden. Nicht selten denk man dabei: "Welcher Horst hat das denn verbrochen" .. um dann festzustellen: "Ups, ist ja mein eigener Code" :-D

                                          Egal, Hauptsache der TO kommt damit zurecht.

                                          OT: How To Write Unmaintainable Code :-D :-D :-D

                                          HomoranH Nicht stören
                                          HomoranH Nicht stören
                                          Homoran
                                          Global Moderator Administrators
                                          schrieb am zuletzt editiert von
                                          #20

                                          @codierknecht sagte in Monat als Bedingung:

                                          In diesem Fall geht das sogar, weil der zu durchsuchende Bereich ein Intervall ist.

                                          zumindest geht es deshalb so einfach.

                                          @codierknecht sagte in Monat als Bedingung:

                                          Schwieriger finde ich die Frage, ob Blockly denn auch von sich aus korrekt klammert.

                                          da hatte ich noch nie Probleme, wenn man die Grundlagen der boolschen Algebra berücksichtigt.

                                          @codierknecht sagte in Monat als Bedingung:

                                          Oder mit einer JS-Funktion, die die Logik an anderer Stelle kapselt.

                                          da hab ich auch noch Probleme, aber ich kann kein Javascript :cry:

                                          deswegen gilt für mich auch nicht

                                          @haus-automatisierung sagte in Monat als Bedingung:

                                          Der generierte Code ist doch super kurz -

                                          weil ich immer verduche das Blockly so einfach und vor allem übersichtlich zu halten.

                                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                          CodierknechtC 1 Antwort Letzte Antwort
                                          1
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          904

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe