Ankündigung

Einklappen
Keine Ankündigung bisher.

Monatsdiagramm (12 X-Werte) in der Visualisierung darstellen

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

    #16
    Zitat von Latias1990 Beitrag anzeigen
    mangels Arrays
    Die gibt's in Form von stringset und stringcast. Da hast du ein Array mit max. 16383 4-Byte-Einträgen.

    Meine grundsätzliche Empfehlung wäre, das Verschachteln zur Optimierung zu lassen.

    12 Vergleiche bringen den EibPC nicht ins Schwitzen, aber verschachtelte if's haben eine andere Semantik als man das manchmal erwartet:

    Innere if-Anweisungen werden nicht durch ihre Bedingung sondern durch die Bedingung der äußeren
    if-Anweisung invalidiert. So wird gewährleistet, dass die äußere Bedingung beachtet wird. Dadurch
    ist die Auswertung des inneren then-Zweigs allerdings nicht mehr vom Ändern der inneren Bedin-
    gung abhängig (vgl. Validierungsschema, S. 35)
    Für diesen Fall, ob vermieden werden soll, dass im Dezember auch der Code für Nov, Okt, usw. ausgeführt werden soll:

    Statt des Monatsvergleichs kannst du, nachdem du das ganze ohnehin zyklisch durchläufst, und nicht die Aktualisierung der month()-Schaltuhren nutzt, einfach den aktuellen Monat aus der
    Code:
    localtimeconvert(utctime())
    mit
    Code:
    split()
    extrahieren und jeweils auf 1,2,3.. vergleichen:

    Code:
    zNow=localtimeconvert(utctime())
    uMonth=convert(split(zNow,5u16,6u16),0)
    uDay=convert(split(zNow,8u16,9u16),0)
    Zuletzt geändert von foobar0815; 24.03.2022, 09:08.

    Kommentar


      #17
      Zitat von foobar0815 foobar0815 Beitrag anzeigen
      Code:

      zNow=localtimeconvert(utctime()) uMonth=convert(split(zNow,5u16,6u16),0) uDay=convert(split(zNow,8u16,9u16),0)
      danke für die Idee, also quasi so:

      ---------------------------------------
      if (...Zyklischer Auslöser...) then {

      uMonth=convert(split(localtimeconvert(utctime()),5 u16,6u16),0);

      if (uMonth == 1) then {
      ...code Januar...;
      } endif;

      if (uMonth == 2) then {
      ...code Februar...;
      } endif;

      ...weitere Monate...

      } endif
      ---------------------------------------

      oder übersehe ich etwas?
      Kann ich heute Abend gleich mal ausprobieren 😀😀
      Zuletzt geändert von Latias1990; 24.03.2022, 10:58.

      Kommentar


        #18
        Genau.

        Kommentar


          #19
          Hallo,

          wollte mal nachfragen wie der finale Code aussieht und ob alles funktioniert wie gewünscht?
          Finde die Übersicht super.

          Lg
          MfG MrKnx

          Kommentar


            #20
            Moin,

            ich war zuletzt wenig heir unterwegs, sorry.
            Zitat von MrKNX Beitrag anzeigen
            wollte mal nachfragen wie der finale Code aussieht und ob alles funktioniert wie gewünscht?
            Wenn noch interesse bestelht stell ich gerne Daten/Code zur Verfügung.
            Das ganze läuft bei mir mittlerweile ohne Auffälligkeiten:
            Jahresstatus.png

            Kommentar


              #21
              Hi,
              Sieht klasse aus.
              “her mit dem Code“

              lg
              MfG MrKnx

              Kommentar


                #22
                Moin,
                ungezippt waren kanpp 90 KB wohl zu viel.. im Anhang der Code.
                Die Visu-Seite ist händisch angelegt, nicht im Experten
                Angehängte Dateien

                Kommentar


                  #23
                  Danke, ich werde es mir mal über die Feiertage ansehen
                  MfG MrKnx

                  Kommentar


                    #24
                    Zitat von MrKNX Beitrag anzeigen
                    Danke, ich werde es mir mal über die Feiertage ansehen
                    Gerne, viel Spaß damit
                    Wenn es noch Fragen gibt einfach melden.

                    Schöne Weihnachtszeit! @all

                    Kommentar

                    Lädt...
                    X