Ankündigung

Einklappen
Keine Ankündigung bisher.

Charts mal wieder...... :(

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #46
    O.K. danke, ich werds in den nächsten Tagen testen.

    Zitat von enertegus Beitrag anzeigen
    Das Problem an diesem Code:
    Das mpchart-Objekt aktualisiert sich direkt an die Webdarstellung. Wenn nun mehrere solcher Objekte Werte melden, kommt es zu "Nebeneffekten".
    Lösung: Immer nur an einer Stelle ein mpchart ansprechen:
    [highlight=epc]
    Val=23f16
    if ("HWR_Licht_Arbeitsplatte-2/0/3") == EIN then Val=63f16 else Val=23f16 endif
    if change(Val) then mpchart(1,CountX,Val,3,KellerHeizungID) endif;
    [/highlight]
    Sorry für die späte Antwort, ist mir durch die Lappen gegangen.

    Kommentar


      #47
      Sorry, das versteh ich nicht. "Immer nur an einer Stelle ein mpchart ansprechen". Heist das , keine else-anweisung? oder in einer if-abfrage nur einen der 4Graphen updaten (gleichzeitig)?
      Ich seh in deinem Code nicht den Unterschied (bis auf die nicht vorhandene else). Du schreibst ne Variable ins chart und ich ne Konstante. Das wird es ja nicht sein, weil ich im normalen Leben auch Variable reinschreibe. Vielleicht kannste das nochmal kurz erläutern


      Zitat von enertegus Beitrag anzeigen
      Das Problem an diesem Code:
      Das mpchart-Objekt aktualisiert sich direkt an die Webdarstellung. Wenn nun mehrere solcher Objekte Werte melden, kommt es zu "Nebeneffekten".
      Lösung: Immer nur an einer Stelle ein mpchart ansprechen:
      [highlight=epc]
      Val=23f16
      if ("HWR_Licht_Arbeitsplatte-2/0/3") == EIN then Val=63f16 else Val=23f16 endif
      if change(Val) then mpchart(1,CountX,Val,3,KellerHeizungID) endif;
      [/highlight]
      Sorry für die späte Antwort, ist mir durch die Lappen gegangen.

      Kommentar


        #48
        Zitat von yapon Beitrag anzeigen
        Du schreibst ne Variable ins chart und ich ne Konstante. Das wird es ja nicht sein, weil ich im normalen Leben auch Variable reinschreibe. Vielleicht kannste das nochmal kurz erläutern
        Der Aufruf von mpchart speichert alle 48-Werte in dem Puffer des mpchart-Objekts ab. Dabei generiert jeder Funktionsaufruf von mpchart eigene Puffer, auch wenn diese am Ende für das selbe Webelement gemacht sind.

        Zwei gleiche Aufrufe von mpcharts werden daher jeweils ihre eigenen Daten schicken:

        If cycle(0,5) then mpchart() endif
        If cycle(0,2) then mpchart() endif

        Der erste alle 5, der andere alle 2 Sekunden, die Daten sind dann aber unterschiedlich.
        offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
        Enertex Produkte kaufen

        Kommentar


          #49
          Die Daten sind dann unterschiedlich?? Weil beim zweiten Aufruf wieder neue dazukommen??
          Was heisst das jetzt? Wie muss ich es machen, wenn ich 4 Graphen in einem Chart benutze?
          Für jeden Graph eine eigene if-Abfrage?
          Oder in einer if-Abfrage allen vieren neue Daten geben? So läuft es im Moment.
          Oder nur warten zwischen dem Geben von Daten an die Graphen?
          Ich versteh nicht, was du mir sagen willst.


          Zitat von enertegus Beitrag anzeigen
          Der Aufruf von mpchart speichert alle 48-Werte in dem Puffer des mpchart-Objekts ab. Dabei generiert jeder Funktionsaufruf von mpchart eigene Puffer, auch wenn diese am Ende für das selbe Webelement gemacht sind.

          Zwei gleiche Aufrufe von mpcharts werden daher jeweils ihre eigenen Daten schicken:

          If cycle(0,5) then mpchart() endif
          If cycle(0,2) then mpchart() endif

          Der erste alle 5, der andere alle 2 Sekunden, die Daten sind dann aber unterschiedlich.

          Kommentar


            #50
            Hallo nochmal.....
            wer weiß denn, wie man die Charts ansprechen muß um keine 0/0 Punkte zu bekommen?
            Oder wer kann mir erklären was Enertegus meint?


            Zitat von yapon Beitrag anzeigen
            Die Daten sind dann unterschiedlich?? Weil beim zweiten Aufruf wieder neue dazukommen??
            Was heisst das jetzt? Wie muss ich es machen, wenn ich 4 Graphen in einem Chart benutze?
            Für jeden Graph eine eigene if-Abfrage?
            Oder in einer if-Abfrage allen vieren neue Daten geben? So läuft es im Moment.
            Oder nur warten zwischen dem Geben von Daten an die Graphen?
            Ich versteh nicht, was du mir sagen willst.

            Kommentar


              #51
              Zitat von yapon Beitrag anzeigen
              Hallo nochmal.....
              wer weiß denn, wie man die Charts ansprechen muß um keine 0/0 Punkte zu bekommen?
              1. man greift auf ein Webchart mit der Funktion mpchart zu, ich denke soweit verstanden.
              2. Dieses Funktion-Objekt merkt sich auch gleich die "alten" Werte, die übermitteln soll durch deren Aufruf.
              3. Eine weitere Instanz des Objekts (also eine zweite Funktion, die auf das gleiche Chart zugreift), speichert eigene Werte, davon völlig unabhänigige Werte.
              => immer nur an einer Stelle mpchart aufrufen:
              [highlight=epc]
              Val =0f16
              if event("HWR_Licht_Arbeitsplatte-2/0/3") or event ("HWR_TestTaste-4/0/1") then {
              if ("HWR_TestTaste-4/0/1") == EIN then {
              if ("HWR_Licht_Arbeitsplatte-2/0/3") == EIN then {
              Val=63f16;
              } else {
              Val=23f16;
              } endif;
              mpchart(1,WebZeit,Val,3,KellerHeizungID);
              }
              [/highlight]
              Schau Dir den Code im Vergleich zu Deinem genau an: Hier wird das mpchart für das Webelement genau 1x verwendet. Nun sollte das klappen.
              Klarer?
              offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
              Enertex Produkte kaufen

              Kommentar


                #52
                also allgemeiner ausgedrückt, darf die Kombination aus ID und PageID bei einem mpchart(ID, VarX, VarY, Index,PageID) im gesamten Soucrecode nur einmal vorkommen, richtig?
                ....und versuchen Sie nicht erst anhand der Farbe der Stichflamme zu erkennen, was Sie falsch gemacht haben!

                Kommentar


                  #53
                  Zitat von Uwe! Beitrag anzeigen
                  also allgemeiner ausgedrückt, darf die Kombination aus ID und PageID bei einem mpchart(ID, VarX, VarY, Index,PageID) im gesamten Soucrecode nur einmal vorkommen, richtig?
                  ja, wenn ID und Index gleich sind.
                  offizielles Supportforum für den Enertex® EibPC: https://knx-user-forum.de/eibpc/
                  Enertex Produkte kaufen

                  Kommentar


                    #54
                    Index hatte ich vergessen, korrekt! Also noch mal:

                    [WICHTIG]Für jedes mpchart darf die Kombination aus ID, Index und PageID nur genau einmal im SourceCode vorkommen.[/WICHTIG]
                    ....und versuchen Sie nicht erst anhand der Farbe der Stichflamme zu erkennen, was Sie falsch gemacht haben!

                    Kommentar


                      #55
                      Rückmeldung: so geht's

                      Hatte mal was Zeit. Wie oben beschrieben läuft's dann auch endlich bei mir.
                      Danke

                      Kommentar

                      Lädt...
                      X