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.
  • HomoranH Homoran

    @nvd126 sagte in VIS: Bindingbegrenzung deaktivieren:

    Wahrscheinlich ist das schneller als darauf zu warten, dass die Bindings erhöht werden (ist ja seit über 14 Monaten angefragt...)

    dann push das!
    Bluefox hat es vielleicht aus den Augen verloren. ist ja nicht das einzige was er macht

    N Offline
    N Offline
    nvd126
    schrieb am zuletzt editiert von
    #24

    @homoran
    Hab das Problem glaub gelöst. Zumindest funktioniert nun alles und bekomm keine Fehlermeldungen mehr.

    Ab Zeile 51. Änderung notwendig in der Zeile 55 und 58. Überall wo nun 100 steht, stand vorher 50.

    function extractBinding(format) {
        var oid = format.match(/{(.+?)}/g);
        var result = null;
        if (oid) {
            if (oid.length > 100) {
                console.warn('Too many bindings in one widget: ' + oid.length + '[max = 100]');
            }
            for (var p = 0; p < oid.length && p < 100; p++) {
    
    

    Man muss die richtige Datei erwischen, damit die Änderung übernommen wird. Außerdem ist ein Upload erforderlich. Die Datei lag bei mir in

    /............./iobroker/node_modules/iobroker.vis/www/js/visUtils.js
    
    HomoranH B 2 Antworten Letzte Antwort
    0
    • N nvd126

      @homoran
      Hab das Problem glaub gelöst. Zumindest funktioniert nun alles und bekomm keine Fehlermeldungen mehr.

      Ab Zeile 51. Änderung notwendig in der Zeile 55 und 58. Überall wo nun 100 steht, stand vorher 50.

      function extractBinding(format) {
          var oid = format.match(/{(.+?)}/g);
          var result = null;
          if (oid) {
              if (oid.length > 100) {
                  console.warn('Too many bindings in one widget: ' + oid.length + '[max = 100]');
              }
              for (var p = 0; p < oid.length && p < 100; p++) {
      
      

      Man muss die richtige Datei erwischen, damit die Änderung übernommen wird. Außerdem ist ein Upload erforderlich. Die Datei lag bei mir in

      /............./iobroker/node_modules/iobroker.vis/www/js/visUtils.js
      
      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #25

      @nvd126 sagte in VIS: Bindingbegrenzung deaktivieren:

      Außerdem ist ein Upload erforderlich

      das ist klar!
      dafür ist der upload ja da.

      Aber zu dem Ganzen anderen kann ich nichts sagen, bin nur User

      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
      0
      • N nvd126

        Hallo,

        wie kann ich diese Begrenzung von 50 pro Widget ändern bzw. deaktivieren?
        Es läuft mit 50 alles super flott und flüssig, brauche jedoch mehr.

        Danke.

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

        @nvd126
        Die Grenze ist eigentlich Unsinn.
        Ob ich 50 Bindings in einem widget
        oder 50 Bindings in 50 widgets habe ist Performance mäßig gleich.

        Wer ein schwaches Gerät hat, kann solche komplexe Strukturen nicht nutzen.

        Aktuell gibt es keine Möglichkeit das aus einer Benutzersicht auszuschalten.
        Nur durch direkten Eingriff in den code, welcher nach jedem Update von vis wiederholt werden muss.

        Die Zeile die geändert werden muss befindet sich hier:
        https://github.com/ioBroker/ioBroker.vis/blob/4a14b2175ef6dc334e8ccef8afbfd08887ebde64/www/js/visUtils.js#L55

        Eine andere Möglichkeit, wäre tatsächlich per Skript alle benötigten Daten in ein eigenen Datenpunkt (bspw als JSON-Objekt) zu schreiben, diesen Datenpunkt in vis dann per binding einbinden und den Inhalt dann mit JSON.parse wieder auszulesen um die Daten zu verwenden.
        Diese Methode ist wahrscheinlich auch performanter wie bindings, allerdings muss man dann ein wenig javascript programmieren. Es könnte aber sein, das das widget jedesmal von vis neu gezeichnet wird, was evtl auch zu flacker-Effekte führen könnte

        hups. hab gesehen der TE hat die Datei schon selbst gefunden.

        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
        • N nvd126

          @homoran
          Hab das Problem glaub gelöst. Zumindest funktioniert nun alles und bekomm keine Fehlermeldungen mehr.

          Ab Zeile 51. Änderung notwendig in der Zeile 55 und 58. Überall wo nun 100 steht, stand vorher 50.

          function extractBinding(format) {
              var oid = format.match(/{(.+?)}/g);
              var result = null;
              if (oid) {
                  if (oid.length > 100) {
                      console.warn('Too many bindings in one widget: ' + oid.length + '[max = 100]');
                  }
                  for (var p = 0; p < oid.length && p < 100; p++) {
          
          

          Man muss die richtige Datei erwischen, damit die Änderung übernommen wird. Außerdem ist ein Upload erforderlich. Die Datei lag bei mir in

          /............./iobroker/node_modules/iobroker.vis/www/js/visUtils.js
          
          B Offline
          B Offline
          Bernoulli
          schrieb am zuletzt editiert von
          #27

          @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.

          HomoranH OliverIOO 2 Antworten Letzte Antwort
          0
          • 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.

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

            @bernoulli sagte in VIS: Bindingbegrenzung deaktivieren:

            Ich kann doch die Dateien direkt auf dem PI mittels nano editieren.

            das ist dann aber nur die Adapterdatei.
            Die Instanz bekommt die Änderung erst via upload.

            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
            0
            • 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
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          525

                                          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