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. Visualisierung
  4. VIS: Bindingbegrenzung deaktivieren

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.3k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.4k

VIS: Bindingbegrenzung deaktivieren

Geplant Angeheftet Gesperrt Verschoben Visualisierung
48 Beiträge 8 Kommentatoren 5.6k Aufrufe 5 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.
  • B Bernoulli

    @nvd126 der Beitrag ist ja schon etwas älter, deshalb meine Frage, falls das Thema noch von jemandem gelesen wird. Funktioniert diese Änderung auch bei vis-2? Die Datei visUtils.js gibt es bei mir zweimal, einmal im Ordner
    /opt/iobroker/node_modules/iobroker.js-controller/build/esm/lib/vis/ und ein weiteres mal im Ordner
    /opt/iobroker/node_modules/iobroker.js-controller/build/cjs/lib/vis/.
    Habe in beiden Dateien die 50 auf 100 geändert. Das hat aber leider nichts bewirkt.
    Was hat es mit dem Upload auf sich? Wie ist das zu verstehen? Ich kann doch die Dateien direkt auf dem PI mittels nano editieren.

    OliverIOO Offline
    OliverIOO Offline
    OliverIO
    schrieb am zuletzt editiert von
    #29

    @bernoulli sagte in VIS: Bindingbegrenzung deaktivieren:

    @nvd126
    Funktioniert diese Änderung auch bei vis-2?

    ja,
    https://github.com/ioBroker/ioBroker.vis-2/blob/c612948f85f4f404505ab4ab7f1f3d7b00d5f8ec/packages/iobroker.vis-2/lib/states.js#L61

    Die Datei visUtils.js gibt es bei mir zweimal, einmal im Ordner
    /opt/iobroker/node_modules/iobroker.js-controller/build/esm/lib/vis/ und ein weiteres mal im Ordner
    /opt/iobroker/node_modules/iobroker.js-controller/build/cjs/lib/vis/.
    Habe in beiden Dateien die 50 auf 100 geändert. Das hat aber leider nichts bewirkt.

    im zweifel in beiden ändern

    Was hat es mit dem Upload auf sich? Wie ist das zu verstehen? Ich kann doch die Dateien direkt auf dem PI mittels nano editieren.

    der upload registriert die dateien erneut im webserver. ohne das kennt er nur die vorgänger version

    generell: die begrenzung gilt für ein einziges widget
    wer mehr wie 50 bindings in einem widget verwendet, macht etwas falsch
    bindings sind ressourcentechnisch aufwändig und beeinflusst wahrscheinlich die browser performance

    du kannst gerne mal deinen use case darstellen, dann kann man schauen wie man das besser macht.
    alternativen:
    a) html in einem skript auf dem server aufbereiten und dann das html in einem datenpunkt an den client übermitteln und per html widget darstellen
    b) wenn es um tabelarische ansicht geht, daten auf dem server in eine json struktur überführen und per jsontable auf dem client anzeigen
    c) widget json-template für vis1 aus dem rssfeed adapter bzw für vis-2 im ovarous-adapter (der ist von mir. hilfe dann gerne hier im forum

    Meine Adapter und Widgets
    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
    Links im Profil

    B S 2 Antworten Letzte Antwort
    0
    • OliverIOO OliverIO

      @bernoulli sagte in VIS: Bindingbegrenzung deaktivieren:

      @nvd126
      Funktioniert diese Änderung auch bei vis-2?

      ja,
      https://github.com/ioBroker/ioBroker.vis-2/blob/c612948f85f4f404505ab4ab7f1f3d7b00d5f8ec/packages/iobroker.vis-2/lib/states.js#L61

      Die Datei visUtils.js gibt es bei mir zweimal, einmal im Ordner
      /opt/iobroker/node_modules/iobroker.js-controller/build/esm/lib/vis/ und ein weiteres mal im Ordner
      /opt/iobroker/node_modules/iobroker.js-controller/build/cjs/lib/vis/.
      Habe in beiden Dateien die 50 auf 100 geändert. Das hat aber leider nichts bewirkt.

      im zweifel in beiden ändern

      Was hat es mit dem Upload auf sich? Wie ist das zu verstehen? Ich kann doch die Dateien direkt auf dem PI mittels nano editieren.

      der upload registriert die dateien erneut im webserver. ohne das kennt er nur die vorgänger version

      generell: die begrenzung gilt für ein einziges widget
      wer mehr wie 50 bindings in einem widget verwendet, macht etwas falsch
      bindings sind ressourcentechnisch aufwändig und beeinflusst wahrscheinlich die browser performance

      du kannst gerne mal deinen use case darstellen, dann kann man schauen wie man das besser macht.
      alternativen:
      a) html in einem skript auf dem server aufbereiten und dann das html in einem datenpunkt an den client übermitteln und per html widget darstellen
      b) wenn es um tabelarische ansicht geht, daten auf dem server in eine json struktur überführen und per jsontable auf dem client anzeigen
      c) widget json-template für vis1 aus dem rssfeed adapter bzw für vis-2 im ovarous-adapter (der ist von mir. hilfe dann gerne hier im forum

      B Offline
      B Offline
      Bernoulli
      schrieb am zuletzt editiert von
      #30

      @oliverio der upload geschieht dann im Expertenmodus über die VIS-Kachel, ok?
      Der von dir beschriebene Fall a) käme da wohl in Frage, da müsste ich mich dann intensiver mit auseinandersetzen; der HTML-Code ist dabei nicht das Problem.

      OliverIOO 1 Antwort Letzte Antwort
      0
      • B Bernoulli

        @oliverio der upload geschieht dann im Expertenmodus über die VIS-Kachel, ok?
        Der von dir beschriebene Fall a) käme da wohl in Frage, da müsste ich mich dann intensiver mit auseinandersetzen; der HTML-Code ist dabei nicht das Problem.

        OliverIOO Offline
        OliverIOO Offline
        OliverIO
        schrieb am zuletzt editiert von
        #31

        @bernoulli

        ich geb auf der konsole immer

        iobroker upload all
        

        ein

        Meine Adapter und Widgets
        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
        Links im Profil

        1 Antwort Letzte Antwort
        0
        • OliverIOO OliverIO

          @bernoulli sagte in VIS: Bindingbegrenzung deaktivieren:

          @nvd126
          Funktioniert diese Änderung auch bei vis-2?

          ja,
          https://github.com/ioBroker/ioBroker.vis-2/blob/c612948f85f4f404505ab4ab7f1f3d7b00d5f8ec/packages/iobroker.vis-2/lib/states.js#L61

          Die Datei visUtils.js gibt es bei mir zweimal, einmal im Ordner
          /opt/iobroker/node_modules/iobroker.js-controller/build/esm/lib/vis/ und ein weiteres mal im Ordner
          /opt/iobroker/node_modules/iobroker.js-controller/build/cjs/lib/vis/.
          Habe in beiden Dateien die 50 auf 100 geändert. Das hat aber leider nichts bewirkt.

          im zweifel in beiden ändern

          Was hat es mit dem Upload auf sich? Wie ist das zu verstehen? Ich kann doch die Dateien direkt auf dem PI mittels nano editieren.

          der upload registriert die dateien erneut im webserver. ohne das kennt er nur die vorgänger version

          generell: die begrenzung gilt für ein einziges widget
          wer mehr wie 50 bindings in einem widget verwendet, macht etwas falsch
          bindings sind ressourcentechnisch aufwändig und beeinflusst wahrscheinlich die browser performance

          du kannst gerne mal deinen use case darstellen, dann kann man schauen wie man das besser macht.
          alternativen:
          a) html in einem skript auf dem server aufbereiten und dann das html in einem datenpunkt an den client übermitteln und per html widget darstellen
          b) wenn es um tabelarische ansicht geht, daten auf dem server in eine json struktur überführen und per jsontable auf dem client anzeigen
          c) widget json-template für vis1 aus dem rssfeed adapter bzw für vis-2 im ovarous-adapter (der ist von mir. hilfe dann gerne hier im forum

          S Offline
          S Offline
          stenmic
          schrieb am zuletzt editiert von stenmic
          #32

          @oliverio sagte in VIS: Bindingbegrenzung deaktivieren:

          generell: die begrenzung gilt für ein einziges widget
          wer mehr wie 50 bindings in einem widget verwendet, macht etwas falsch
          bindings sind ressourcentechnisch aufwändig und beeinflusst wahrscheinlich die browser performance

          das ist in vis2 leider so, da geht ne Seite schon mit einem Binding in die Knie.
          In vis1 nutze ich Seiten mit 365 Bindings, diese öffnen sich ohne Verzögerung.
          IMG_0755.png

          Jeder Haken bzw. Tag ist ein binding. Leider ging wegen der Begrenzung nur ein Monat pro html widget (html mit Tabelle) ich hätte es damals auch am liebsten in nur einem Widget untergebracht.

          (ich würde es heute zwar anders lösen, aber es geht so ohne Probleme)

          OliverIOO liv-in-skyL 2 Antworten Letzte Antwort
          0
          • S stenmic

            @oliverio sagte in VIS: Bindingbegrenzung deaktivieren:

            generell: die begrenzung gilt für ein einziges widget
            wer mehr wie 50 bindings in einem widget verwendet, macht etwas falsch
            bindings sind ressourcentechnisch aufwändig und beeinflusst wahrscheinlich die browser performance

            das ist in vis2 leider so, da geht ne Seite schon mit einem Binding in die Knie.
            In vis1 nutze ich Seiten mit 365 Bindings, diese öffnen sich ohne Verzögerung.
            IMG_0755.png

            Jeder Haken bzw. Tag ist ein binding. Leider ging wegen der Begrenzung nur ein Monat pro html widget (html mit Tabelle) ich hätte es damals auch am liebsten in nur einem Widget untergebracht.

            (ich würde es heute zwar anders lösen, aber es geht so ohne Probleme)

            OliverIOO Offline
            OliverIOO Offline
            OliverIO
            schrieb am zuletzt editiert von
            #33

            @stenmic
            Und für jeden Tag dann ein datenpunkt?

            Meine Adapter und Widgets
            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
            Links im Profil

            S 1 Antwort Letzte Antwort
            0
            • S stenmic

              @oliverio sagte in VIS: Bindingbegrenzung deaktivieren:

              generell: die begrenzung gilt für ein einziges widget
              wer mehr wie 50 bindings in einem widget verwendet, macht etwas falsch
              bindings sind ressourcentechnisch aufwändig und beeinflusst wahrscheinlich die browser performance

              das ist in vis2 leider so, da geht ne Seite schon mit einem Binding in die Knie.
              In vis1 nutze ich Seiten mit 365 Bindings, diese öffnen sich ohne Verzögerung.
              IMG_0755.png

              Jeder Haken bzw. Tag ist ein binding. Leider ging wegen der Begrenzung nur ein Monat pro html widget (html mit Tabelle) ich hätte es damals auch am liebsten in nur einem Widget untergebracht.

              (ich würde es heute zwar anders lösen, aber es geht so ohne Probleme)

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

              @stenmic magst du mal ein widget posten ?

              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

              S 1 Antwort Letzte Antwort
              0
              • OliverIOO OliverIO

                @stenmic
                Und für jeden Tag dann ein datenpunkt?

                S Offline
                S Offline
                stenmic
                schrieb am zuletzt editiert von
                #35

                @oliverio ja

                1 Antwort Letzte Antwort
                0
                • liv-in-skyL liv-in-sky

                  @stenmic magst du mal ein widget posten ?

                  S Offline
                  S Offline
                  stenmic
                  schrieb am zuletzt editiert von stenmic
                  #36

                  @liv-in-sky sagte in VIS: Bindingbegrenzung deaktivieren:

                  @stenmic magst du mal ein widget posten ?

                  ist nur das html widget. Inhalt eines Monats ist dann:

                  <table class="tg"><thead><tr><th class="tg-top" colspan="7">Januar, {0_userdata.0.xxx.Monat.01} Tage</th></tr></thead><tbody>
                  <tr>
                      <td <span class="tg-day-true">1</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_01}</span></td>
                      <td <span class="tg-day-true">2</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_02}</span></td>
                  	<td <span class="tg-day-true">3</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_03}</span></td>
                  	<td <span class="tg-day-true">4</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_04}</span></td>
                  	<td <span class="tg-day-true">5</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_05}</span></td>
                  	<td <span class="tg-day-true">6</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_06}</span></td>
                  	<td <span class="tg-day-true">7</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_07}</span></td>
                  </tr>
                  <tr>
                      <td <span class="tg-day-true">8</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_08}</span></td>
                      <td <span class="tg-day-true">9</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_09}</span></td>
                  	<td <span class="tg-day-true">10</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_10}</span></td>
                  	<td <span class="tg-day-true">11</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_11}</span></td>
                  	<td <span class="tg-day-true">12</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_12}</span></td>
                  	<td <span class="tg-day-true">13</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_13}</span></td>
                  	<td <span class="tg-day-true">14</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_14}</span></td>
                  </tr>
                  <tr>
                      <td <span class="tg-day-true">15</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_15}</span></td>
                      <td <span class="tg-day-true">16</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_16}</span></td>
                  	<td <span class="tg-day-true">17</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_17}</span></td>
                  	<td <span class="tg-day-true">18</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_18}</span></td>
                  	<td <span class="tg-day-true">19</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_19}</span></td>
                  	<td <span class="tg-day-true">20</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_20}</span></td>
                  	<td <span class="tg-day-true">21</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_21}</span></td>
                  </tr>
                  <tr>
                      <td <span class="tg-day-true">22</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_22}</span></td>
                      <td <span class="tg-day-true">23</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_23}</span></td>
                  	<td <span class="tg-day-true">24</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_24}</span></td>
                  	<td <span class="tg-day-true">25</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_25}</span></td>
                  	<td <span class="tg-day-true">26</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_26}</span></td>
                  	<td <span class="tg-day-true">27</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_27}</span></td>
                  	<td <span class="tg-day-true">28</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_28}</span></td>
                  </tr>
                  <tr>
                      <td <span class="tg-day-true">29</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_29}</span></td>
                      <td <span class="tg-day-true">30</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_30}</span></td>
                  	<td <span class="tg-day-true">31</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_31}</span></td>
                  	<td <span class="tg-day-false">32</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_32}</span></td>
                  	<td <span class="tg-day-false">33</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_33}</span></td>
                  	<td <span class="tg-day-false">34</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_34}</span></td>
                  	<td <span class="tg-day-false">35</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_35}</span></td>
                  </tr>
                  </tbody></table>
                  

                  wie schon geschrieben, heute würde ich es anders machen. Aber es geht

                  OliverIOO 1 Antwort Letzte Antwort
                  0
                  • S stenmic

                    @liv-in-sky sagte in VIS: Bindingbegrenzung deaktivieren:

                    @stenmic magst du mal ein widget posten ?

                    ist nur das html widget. Inhalt eines Monats ist dann:

                    <table class="tg"><thead><tr><th class="tg-top" colspan="7">Januar, {0_userdata.0.xxx.Monat.01} Tage</th></tr></thead><tbody>
                    <tr>
                        <td <span class="tg-day-true">1</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_01}</span></td>
                        <td <span class="tg-day-true">2</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_02}</span></td>
                    	<td <span class="tg-day-true">3</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_03}</span></td>
                    	<td <span class="tg-day-true">4</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_04}</span></td>
                    	<td <span class="tg-day-true">5</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_05}</span></td>
                    	<td <span class="tg-day-true">6</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_06}</span></td>
                    	<td <span class="tg-day-true">7</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_07}</span></td>
                    </tr>
                    <tr>
                        <td <span class="tg-day-true">8</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_08}</span></td>
                        <td <span class="tg-day-true">9</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_09}</span></td>
                    	<td <span class="tg-day-true">10</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_10}</span></td>
                    	<td <span class="tg-day-true">11</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_11}</span></td>
                    	<td <span class="tg-day-true">12</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_12}</span></td>
                    	<td <span class="tg-day-true">13</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_13}</span></td>
                    	<td <span class="tg-day-true">14</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_14}</span></td>
                    </tr>
                    <tr>
                        <td <span class="tg-day-true">15</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_15}</span></td>
                        <td <span class="tg-day-true">16</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_16}</span></td>
                    	<td <span class="tg-day-true">17</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_17}</span></td>
                    	<td <span class="tg-day-true">18</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_18}</span></td>
                    	<td <span class="tg-day-true">19</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_19}</span></td>
                    	<td <span class="tg-day-true">20</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_20}</span></td>
                    	<td <span class="tg-day-true">21</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_21}</span></td>
                    </tr>
                    <tr>
                        <td <span class="tg-day-true">22</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_22}</span></td>
                        <td <span class="tg-day-true">23</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_23}</span></td>
                    	<td <span class="tg-day-true">24</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_24}</span></td>
                    	<td <span class="tg-day-true">25</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_25}</span></td>
                    	<td <span class="tg-day-true">26</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_26}</span></td>
                    	<td <span class="tg-day-true">27</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_27}</span></td>
                    	<td <span class="tg-day-true">28</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_28}</span></td>
                    </tr>
                    <tr>
                        <td <span class="tg-day-true">29</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_29}</span></td>
                        <td <span class="tg-day-true">30</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_30}</span></td>
                    	<td <span class="tg-day-true">31</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_31}</span></td>
                    	<td <span class="tg-day-false">32</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_32}</span></td>
                    	<td <span class="tg-day-false">33</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_33}</span></td>
                    	<td <span class="tg-day-false">34</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_34}</span></td>
                    	<td <span class="tg-day-false">35</span><br><span class="tg-content-{0_userdata.0.xxx.Jahreskalender_VIS.01_35}</span></td>
                    </tr>
                    </tbody></table>
                    

                    wie schon geschrieben, heute würde ich es anders machen. Aber es geht

                    OliverIOO Offline
                    OliverIOO Offline
                    OliverIO
                    schrieb am zuletzt editiert von
                    #37

                    @stenmic
                    Und wie beschreibst du die datenpunkte?
                    Woher kommen die Daten?

                    Meine Adapter und Widgets
                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                    Links im Profil

                    S 1 Antwort Letzte Antwort
                    0
                    • OliverIOO OliverIO

                      @stenmic
                      Und wie beschreibst du die datenpunkte?
                      Woher kommen die Daten?

                      S Offline
                      S Offline
                      stenmic
                      schrieb am zuletzt editiert von
                      #38

                      @oliverio in dem Fall über blockly und geofency

                      S 1 Antwort Letzte Antwort
                      0
                      • S stenmic

                        @oliverio in dem Fall über blockly und geofency

                        S Offline
                        S Offline
                        stenmic
                        schrieb am zuletzt editiert von stenmic
                        #39

                        diesen Beitrag bitte löschen

                        liv-in-skyL 2 Antworten Letzte Antwort
                        0
                        • S stenmic

                          diesen Beitrag bitte löschen

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

                          @stenmic

                          du kannst relativ viele bindings sparen, wenn du deinen html-code in dem blockly erstellst und in einen datenpunkt schreibst - dann gibst du im html-widget diesen datenpunt als binding an - d.h. pro monat ein datenpunkt

                          du nimmst dein html und veränderst es mit suchen und ersetzen so (evtl mit notepad++):

                          let aa=`<table class="tg"><thead><tr><th class="tg-top" colspan="7">Januar, ${getState("0_userdata.0.xxx.Monat.01").val} Tage</th></tr></thead><tbody>
                          <tr>
                              <td <span class="tg-day-true">1</span><br><span class="tg-content-${getState("0_userdata.0.xxx.Jahreskalender_VIS.01_01").val}</span></td>
                              <td <span class="tg-day-true">2</span><br><span class="tg-content-${getState("0_userdata.0.xxx.Jahreskalender_VIS.01_02").val}</span></td>
                          	<td <span class="tg-day-true">3</span><br><span class="tg-content-${getState("0_userdata.0.xxx.Jahreskalender_VIS.01_03").val}</span></td>
                          `
                          
                          
                          
                          setState ("xxxxxxxx",aa)
                          

                          so kannst du im blockly die datenpunkte in den html code schreiben und diesen dann in den dp sichern

                          in blockly nimmst du den block - darin machst du den html-code

                          Image 192.png

                          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

                          B 1 Antwort Letzte Antwort
                          1
                          • S stenmic

                            diesen Beitrag bitte löschen

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

                            @stenmic

                            ungefähr so:

                            Image 197.png Image 196.png

                            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

                            S 1 Antwort Letzte Antwort
                            0
                            • liv-in-skyL liv-in-sky

                              @stenmic

                              ungefähr so:

                              Image 197.png Image 196.png

                              S Offline
                              S Offline
                              stenmic
                              schrieb am zuletzt editiert von
                              #42

                              @liv-in-sky
                              danke, werde ich vielleicht mal so umbauen 👌🏻

                              OliverIOO 1 Antwort Letzte Antwort
                              0
                              • S stenmic

                                @liv-in-sky
                                danke, werde ich vielleicht mal so umbauen 👌🏻

                                OliverIOO Offline
                                OliverIOO Offline
                                OliverIO
                                schrieb am zuletzt editiert von OliverIO
                                #43

                                @stenmic

                                ich würde das aus einzelnen widgets zusammenstellen. diese kannst du exakt platzieren.
                                bei anpassungen mehrerer widgets auf einmal, dann am besten so wie @liv-in-sky beschrieben hat über die export import funktion und dann in einem texteditor anpassen.

                                wenn du dann einen monat zusammen hast, dann den gleichen prozess für die anderen monate wiederholen.

                                als editor könnte ich notepad++ empfehlen und dort noch das plugin JSTools
                                das kann json daten (was aus dem export rauskommt), besser formatieren.
                                sofern json format eingehalten wird kann es auch formatiert wieder in vis eingelesen werden.

                                als krönchen würde ich die ganzen daten alle in eine eigene datenstruktur schreiben.
                                das erwähnte widget json template kann dann per template engine aus der daten struktur, dann dein ganzes jahr aufbereiten. dazu muss man allerdings gute kenntnisse in javascript, html und der template sprache haben. auch wird systembedingt, bei jeder änderung die widgetdaten komplett neu aufgebaut, was meist geschwindigkeitsmäßig kein problem ist. wenn man aber einen langsamen client hat, könnte der inhalt bei änderung flackern

                                Meine Adapter und Widgets
                                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                Links im Profil

                                1 Antwort Letzte Antwort
                                1
                                • liv-in-skyL liv-in-sky

                                  @stenmic

                                  du kannst relativ viele bindings sparen, wenn du deinen html-code in dem blockly erstellst und in einen datenpunkt schreibst - dann gibst du im html-widget diesen datenpunt als binding an - d.h. pro monat ein datenpunkt

                                  du nimmst dein html und veränderst es mit suchen und ersetzen so (evtl mit notepad++):

                                  let aa=`<table class="tg"><thead><tr><th class="tg-top" colspan="7">Januar, ${getState("0_userdata.0.xxx.Monat.01").val} Tage</th></tr></thead><tbody>
                                  <tr>
                                      <td <span class="tg-day-true">1</span><br><span class="tg-content-${getState("0_userdata.0.xxx.Jahreskalender_VIS.01_01").val}</span></td>
                                      <td <span class="tg-day-true">2</span><br><span class="tg-content-${getState("0_userdata.0.xxx.Jahreskalender_VIS.01_02").val}</span></td>
                                  	<td <span class="tg-day-true">3</span><br><span class="tg-content-${getState("0_userdata.0.xxx.Jahreskalender_VIS.01_03").val}</span></td>
                                  `
                                  
                                  
                                  
                                  setState ("xxxxxxxx",aa)
                                  

                                  so kannst du im blockly die datenpunkte in den html code schreiben und diesen dann in den dp sichern

                                  in blockly nimmst du den block - darin machst du den html-code

                                  Image 192.png

                                  B Offline
                                  B Offline
                                  Bernoulli
                                  schrieb am zuletzt editiert von
                                  #44

                                  @liv-in-sky said in VIS: Bindingbegrenzung deaktivieren:

                                  @stenmic

                                  du kannst relativ viele bindings sparen, wenn du deinen html-code in dem blockly erstellst und in einen datenpunkt schreibst - dann gibst du im html-widget diesen datenpunt als binding an

                                  Erst mal danke für den Hinweis/die Anleitung, denn die Begrenzung ist ja auch mein Problem. Html-code steht nun in meinem Datenpunkt, aber wie/wo gebe ich diesen Datenpunkt im Html-Widget ein? Welches (Html-)Widget ist das richtige? Im Basicwidget kann ich keine Objekt-ID eingeben/auswählen., da wird Html-Code verlangt. Für den letzten entscheidenden Hinweis wäre ich dankbar.

                                  OliverIOO 1 Antwort Letzte Antwort
                                  0
                                  • B Bernoulli

                                    @liv-in-sky said in VIS: Bindingbegrenzung deaktivieren:

                                    @stenmic

                                    du kannst relativ viele bindings sparen, wenn du deinen html-code in dem blockly erstellst und in einen datenpunkt schreibst - dann gibst du im html-widget diesen datenpunt als binding an

                                    Erst mal danke für den Hinweis/die Anleitung, denn die Begrenzung ist ja auch mein Problem. Html-code steht nun in meinem Datenpunkt, aber wie/wo gebe ich diesen Datenpunkt im Html-Widget ein? Welches (Html-)Widget ist das richtige? Im Basicwidget kann ich keine Objekt-ID eingeben/auswählen., da wird Html-Code verlangt. Für den letzten entscheidenden Hinweis wäre ich dankbar.

                                    OliverIOO Offline
                                    OliverIOO Offline
                                    OliverIO
                                    schrieb am zuletzt editiert von OliverIO
                                    #45

                                    @bernoulli

                                    Einfach in das html Feld den datenpunkt in der binding notation eintragen.

                                    {0_userdata.0.html}
                                    

                                    Meine Adapter und Widgets
                                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                    Links im Profil

                                    B 1 Antwort Letzte Antwort
                                    0
                                    • OliverIOO OliverIO

                                      @bernoulli

                                      Einfach in das html Feld den datenpunkt in der binding notation eintragen.

                                      {0_userdata.0.html}
                                      
                                      B Offline
                                      B Offline
                                      Bernoulli
                                      schrieb am zuletzt editiert von
                                      #46

                                      @oliverio schon erstaunlich, was die "{}" anrichten können :blush: . Die hatte ich natürlich "vergessen", einem iobroker Einsteiger möge man das verzeihen. Danke.
                                      Jetzt muss ich nur noch dafür sorgen, dass sich die Werte in der Tabelle auch aktualisieren; im Moment ist alles noch statisch, d.h. ich sehe die Werte zum Zeitpunkt der Erstellung. Dazu bedarf es offensichtlich eines Scripts, welches den Datenpunkt jedesmal neu beschreibt, wenn sich einer der Tabellenwerte ändert.

                                      OliverIOO 1 Antwort Letzte Antwort
                                      0
                                      • B Bernoulli

                                        @oliverio schon erstaunlich, was die "{}" anrichten können :blush: . Die hatte ich natürlich "vergessen", einem iobroker Einsteiger möge man das verzeihen. Danke.
                                        Jetzt muss ich nur noch dafür sorgen, dass sich die Werte in der Tabelle auch aktualisieren; im Moment ist alles noch statisch, d.h. ich sehe die Werte zum Zeitpunkt der Erstellung. Dazu bedarf es offensichtlich eines Scripts, welches den Datenpunkt jedesmal neu beschreibt, wenn sich einer der Tabellenwerte ändert.

                                        OliverIOO Offline
                                        OliverIOO Offline
                                        OliverIO
                                        schrieb am zuletzt editiert von
                                        #47

                                        @bernoulli

                                        ja genau,

                                        wie gut kannst du javascript?
                                        eigentlich ist es einfach.
                                        dein html 1:1 kopieren und in ein javascript einfügen und in eine variable speichern.
                                        dabei helfen dir diese besonderen anführungszeichen

                                        `
                                        

                                        https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals

                                        eisnammeln der daten, wenn ich das richtig sehe, haben die datenpunkte ja immer die gleiche struktur an einer stelle steht der monat und an einer anderen stelle der tag.
                                        da kannst du mit 2 schleifen arbeiten (monat und tag) und daraus technisch den datenpunktnamen "errechnen" und per getState-Befehl dann abrufen und in eine objekt speichern.
                                        die daten aus diesem objekt kannst du dann diekt an die stelle der bindings einfügen

                                        wenn wir mal ovn folgender datenobjektstruktur mit 2 ineinander verschachtelten array
                                        erste ebene monat, 2.ebene tag
                                        der array index entspricht der position (also für monat oder tag, der wert ist der wert aus dem datenpunkt. so wie ich es sehe ist das dann nur true oder false? ich hab hier mal zahlen genommen
                                        1.Januar wäre dann
                                        data[1][1]
                                        31.Dezember dann
                                        data[12][31]
                                        15.Juni dann
                                        data[6][15]
                                        usw

                                        [
                                            1,
                                            [
                                                1,
                                                2,
                                                3
                                            ],
                                            [
                                                1,
                                                2,
                                                3
                                            ],
                                            [
                                                1,
                                                2,
                                                3
                                            ]
                                        ]
                                        

                                        im template werden dann die daten mit

                                        ${data[1][1]}
                                        

                                        eingetragen.
                                        aber mehr dazu in der beschreibung oben.

                                        schreib wenn du irgendwo schwierigkeiten hast,
                                        dann gehen wir das langsam durch

                                        Meine Adapter und Widgets
                                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                        Links im Profil

                                        B 1 Antwort Letzte Antwort
                                        0
                                        • OliverIOO OliverIO

                                          @bernoulli

                                          ja genau,

                                          wie gut kannst du javascript?
                                          eigentlich ist es einfach.
                                          dein html 1:1 kopieren und in ein javascript einfügen und in eine variable speichern.
                                          dabei helfen dir diese besonderen anführungszeichen

                                          `
                                          

                                          https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals

                                          eisnammeln der daten, wenn ich das richtig sehe, haben die datenpunkte ja immer die gleiche struktur an einer stelle steht der monat und an einer anderen stelle der tag.
                                          da kannst du mit 2 schleifen arbeiten (monat und tag) und daraus technisch den datenpunktnamen "errechnen" und per getState-Befehl dann abrufen und in eine objekt speichern.
                                          die daten aus diesem objekt kannst du dann diekt an die stelle der bindings einfügen

                                          wenn wir mal ovn folgender datenobjektstruktur mit 2 ineinander verschachtelten array
                                          erste ebene monat, 2.ebene tag
                                          der array index entspricht der position (also für monat oder tag, der wert ist der wert aus dem datenpunkt. so wie ich es sehe ist das dann nur true oder false? ich hab hier mal zahlen genommen
                                          1.Januar wäre dann
                                          data[1][1]
                                          31.Dezember dann
                                          data[12][31]
                                          15.Juni dann
                                          data[6][15]
                                          usw

                                          [
                                              1,
                                              [
                                                  1,
                                                  2,
                                                  3
                                              ],
                                              [
                                                  1,
                                                  2,
                                                  3
                                              ],
                                              [
                                                  1,
                                                  2,
                                                  3
                                              ]
                                          ]
                                          

                                          im template werden dann die daten mit

                                          ${data[1][1]}
                                          

                                          eingetragen.
                                          aber mehr dazu in der beschreibung oben.

                                          schreib wenn du irgendwo schwierigkeiten hast,
                                          dann gehen wir das langsam durch

                                          B Offline
                                          B Offline
                                          Bernoulli
                                          schrieb am zuletzt editiert von Bernoulli
                                          #48

                                          @oliverio said in VIS: Bindingbegrenzung deaktivieren:

                                          @bernoulli

                                          ja genau,

                                          wie gut kannst du javascript?

                                          Es reicht für so "kleine" Sachen, also Grundlagen sind vorhanden; deshalb hatte ich das ganze gleich in JS gemäß diesem Vorgehen

                                          dein html 1:1 kopieren und in ein javascript einfügen und in eine variable speichern.

                                          erledigt. :blush: Und ja,

                                          diese besonderen anführungszeichen

                                          gelegentlich auch "Backticks" genannt, sind bei Template-Strings unerlässlich, und der HTML-Code ist dann ja ein solcher, wenn man die Platzhalter einfügt. Dennoch ein großes DANKE für die entscheidenden Tipps. Ich finde es zwar etwas seltsam, dass man die Begrenzung der Bindings mit solchen "Saltos" umgehen muss, bin aber jetzt happy, dass alles nach meinen Vorstellungen läuft.

                                          Diese nachfolgend beschriebene Baustelle ist nicht meine, sie gehört zu stenmic. Vielleicht liest er es ja hier.

                                          eisnammeln der daten, wenn ich das richtig sehe, haben die datenpunkte ja immer die gleiche struktur an einer stelle steht der monat und an einer anderen stelle der tag.
                                          da kannst du mit 2 schleifen arbeiten (monat und tag) und daraus technisch den datenpunktnamen "errechnen" und per getState-Befehl dann abrufen und in eine objekt speichern.
                                          die daten aus diesem objekt kannst du dann diekt an die stelle der bindings einfügen

                                          wenn wir mal ovn folgender datenobjektstruktur mit 2 ineinander verschachtelten array
                                          erste ebene monat, 2.ebene tag
                                          der array index entspricht der position (also für monat oder tag, der wert ist der wert aus dem datenpunkt. so wie ich es sehe ist das dann nur true oder false? ich hab hier mal zahlen genommen
                                          1.Januar wäre dann
                                          data[1][1]
                                          31.Dezember dann
                                          data[12][31]
                                          15.Juni dann
                                          data[6][15]
                                          usw

                                          [
                                              1,
                                              [
                                                  1,
                                                  2,
                                                  3
                                              ],
                                              [
                                                  1,
                                                  2,
                                                  3
                                              ],
                                              [
                                                  1,
                                                  2,
                                                  3
                                              ]
                                          ]
                                          

                                          im template werden dann die daten mit

                                          ${data[1][1]}
                                          

                                          eingetragen.
                                          aber mehr dazu in der beschreibung oben.

                                          schreib wenn du irgendwo schwierigkeiten hast,
                                          dann gehen wir das langsam durch

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          362

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          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