Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Variable als number deklarieren

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Variable als number deklarieren

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @Claus1985 0 last edited by paul53

      @claus1985-0
      Wo und wie wird in den Datenpunkt "0_userdata.0.Durchschnitt_Strom_Shelly.Anzahl_Resets" geschrieben?

      Claus1985 0 1 Reply Last reply Reply Quote 0
      • Claus1985 0
        Claus1985 0 @paul53 last edited by Claus1985 0

        @paul53 Hi Paul,

        der wird im rot markierten Teil geschrieben.
        Ich zähle in einer Variable nach Durchlaufen einer Schleife hoch und speichere den Wert der Variable dann
        im Datenpunkt um zu historisieren:

        674a38f0-ddaf-4b92-8284-4e03964426c3-image.png

        Habe gerade festgestellt, dass er über die Variable den Wert {"ack":true} übergibt..
        Allerdings mache ich ja nichts anderes als das erst als number zu deklarieren und dann jeweils +1 zu erhöhen..

        paul53 1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @Claus1985 0 last edited by paul53

          @claus1985-0 sagte: Ich zähle in einer Variable nach Durchlaufen einer Schleife hoch

          Das muss außerhalb des falls-Blockes erfolgen:

          Bild_2022-06-18_171108257.png

          Damit der Wert einen Skriptstart überlebt, muss der Datenpunktwert bei Skriptstart in die Variable eingelesen werden.

          @claus1985-0 sagte in Variable als number deklarieren:

          Kann ich die Variable vll sogar ohne function als number deklarieren?

          Bild_2022-06-18_171445338.png

          Common im JSON-Format übergeben.

          Claus1985 0 1 Reply Last reply Reply Quote 2
          • Claus1985 0
            Claus1985 0 @paul53 last edited by

            @paul53 Hi Paul, danke für die Hinweise verstehe ich das so richtig?

            1. Datenpunkt bei Skriptstart in Variable einlesen
            2. Im Falls Block die Variable nur um eins hochsetzen
            3. Den Datenpunkt außerhalb des Falls-Blocks mit der Variable überschreiben

            Quasi so:
            efae0997-9c4e-4ce8-a881-bb0c79393de9-image.png

            Eine Frage auch noch zu deinem JSON code im common. Warum wird "def" benötigt?

            Danke Dir und Gruß,

            Claus

            Homoran paul53 2 Replies Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators @Claus1985 0 last edited by

              @claus1985-0 sagte in Variable als number deklarieren:

              Warum wird "def" benötigt?

              das istcder default Wert, der gesetzt wird, wenn der Datenpunkt noch nicht beschrieben wurde.

              Claus1985 0 1 Reply Last reply Reply Quote 0
              • Claus1985 0
                Claus1985 0 @Homoran last edited by

                @homoran wird der nicht über Init-Wert gesetzt? So hatte ich das zumindest verstanden..

                1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @Claus1985 0 last edited by

                  @claus1985-0 sagte: Quasi so:

                  Nein. Vergleiche mit meinem Bild:

                  • Variablen außerhalb des falls-Blockes setzen / erhöhen und Wert in Datenpunkt schreiben
                  • Bei Skriptstart (außerhalb des Triggers) den Datenpunktwert in die Variable Summe_Resets einlesen.
                  Claus1985 0 1 Reply Last reply Reply Quote 0
                  • Claus1985 0
                    Claus1985 0 @paul53 last edited by

                    @paul53 allerdings verliert die Logik dann ja ihre Funktion?
                    Mein Ziel ist ja, die Variable nur dann hochzuzählen, wenn die Bedingungen im Falls-Block erfüllt sind.

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @Claus1985 0 last edited by paul53

                      @claus1985-0 sagte: Variable nur dann hochzuzählen, wenn die Bedingungen im Falls-Block erfüllt sind.

                      Gut, dann müssen aber die beiden anderen Variablen außerhalb des falls-Blockes gesetzt werden.

                      Bild_2022-06-18_175145074.png

                      Claus1985 0 1 Reply Last reply Reply Quote 1
                      • Claus1985 0
                        Claus1985 0 @paul53 last edited by

                        @paul53 danke Dir! 🙂
                        Eine Frage noch zur Deklaration der Variable am Skript-Start.
                        Wenn ich den Datenpunkt bei Init-Wert angebe, muss ich dann im Common trotzdem "def" ebenfalls angeben
                        oder genügen da type und name?

                        e3d3e32b-b411-4581-8ca4-3d24801b65c2-image.png

                        paul53 1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @Claus1985 0 last edited by

                          @claus1985-0 sagte: muss ich dann im Common trotzdem "def" ebenfalls angeben oder genügen da type und name?

                          Da bin ich mir nicht sicher, denn es hat sich diesbezüglich etwas geändert. Probiere es aus.

                          Claus1985 0 1 Reply Last reply Reply Quote 0
                          • Claus1985 0
                            Claus1985 0 @paul53 last edited by

                            @paul53 habs ausprobiert, ist notwendig. Ohne kommt der bekannte Fehler mit number erwartet aber string erhalten.
                            Danke für Deine Hilfe!

                            1 Reply Last reply Reply Quote 0
                            • First post
                              Last post

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            865
                            Online

                            31.9k
                            Users

                            80.1k
                            Topics

                            1.3m
                            Posts

                            3
                            13
                            341
                            Loading More Posts
                            • Oldest to Newest
                            • Newest to Oldest
                            • Most Votes
                            Reply
                            • Reply as topic
                            Log in to reply
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                            The ioBroker Community 2014-2023
                            logo