Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Fehlerhafte Implementierung von formatDate?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Fehlerhafte Implementierung von formatDate?

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      Tjaden last edited by

      Hallo zusammen,

      ich versuche gerade eine Zeitdifferenz anzeigen zu lassen. Dabei stieß ich auf folgenden (Denk?)-Fehler:

      603ef871-6532-44c1-aa7f-6303a98c2d7f-image.png

      bzw.

      console.warn((['Test: ',formatDate(getDateObject(3601000), "hh:mm:ss.sss"),' h (erwartet: 01:00:01.000 h)'].join('')));
      console.warn((['Test: ',formatDate(getDateObject(1000), "hh:mm:ss.sss"),' h (erwartet: 00:00:01.000 h)'].join('')));
      console.warn((['Aktuelle Uhrzeit: ',formatDate(getDateObject((new Date().getTime())), "SS:mm:ss.sss"),' h'].join('')));
      

      Ergebnis:
      2d7bda9f-c50b-4e3b-a379-5f1d6feea4ec-image.png

      Mache ich da einen Denkfehler oder ist die Implementierung von formatDate inkorrekt?

      Oder liegt das ggf. an Zeitzonen?

      Wenn ich von den 1000 3600000 subtrahiere bekomme ich mit
      fa69ae48-11b0-4e35-af06-85ca1f33b9d6-image.png
      ebf958a1-21ac-42a7-8186-832a13c8f40f-image.png

      Falls das kein Bug ist: Hat einer eine Idee, wie ich das Problem beheben kann, außer immer zu prüfen, ob wir uns in Sommer- oder Winterzeit befinden und entsprechend meine Zeitdifferenz anders zu berechnen?

      Falls es ein Bug ist, bitte ins Bug-Unterforum verschieben.

      Glasfaser T haus-automatisierung 3 Replies Last reply Reply Quote 0
      • Glasfaser
        Glasfaser @Tjaden last edited by Glasfaser

        @tjaden sagte in Fehlerhafte Implementierung von formatDate?:

        Oder liegt das ggf. an Zeitzonen?

        Schau nach mit :

        iob diag 
        

        da steht dann alles dazu drin

        T 1 Reply Last reply Reply Quote 0
        • T
          ticaki Developer @Tjaden last edited by ticaki

          @tjaden

          Das liegt an der Zeitzone - Zählung beginnt 1.1.1970 0:0:0 UTC

          Bildschirmfoto 2023-12-31 um 00.25.32.png

          javascript.0 (616) script.js.Test.Skript_12: 0:00:36.000
          
          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="V5r^pS+[O[Gz)OS{0D]U">Liste</variable>
              <variable id="/~z$K4;7_rWFxkP?uAsE">Text</variable>
            </variables>
            <block type="variables_set" id="xtcT5zeSAaTQqwkZg[p-" x="-887" y="1738">
              <field name="VAR" id="V5r^pS+[O[Gz)OS{0D]U">Liste</field>
              <value name="VALUE">
                <block type="lists_split" id="n%keh!K:@@OBH+EkLI]v">
                  <mutation mode="SPLIT"></mutation>
                  <field name="MODE">SPLIT</field>
                  <value name="INPUT">
                    <block type="convert_from_date" id="CvneZ~T.M_~5r|?@RC=5">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                      <field name="OPTION">hh:mm:ss.sss</field>
                      <value name="VALUE">
                        <block type="math_number" id="$QPp_beI:borjO_[;bJJ">
                          <field name="NUM">36000</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <value name="DELIM">
                    <shadow type="text" id="{$~3v;hg6!of4ddq3!3q">
                      <field name="TEXT">:</field>
                    </shadow>
                  </value>
                </block>
              </value>
              <next>
                <block type="lists_setIndex" id="$26~g{nYxx=]X*M=X93w">
                  <mutation at="false"></mutation>
                  <field name="MODE">SET</field>
                  <field name="WHERE">FIRST</field>
                  <value name="LIST">
                    <block type="variables_get" id="Q$%8}MGN?]F-(s3BddGE">
                      <field name="VAR" id="V5r^pS+[O[Gz)OS{0D]U">Liste</field>
                    </block>
                  </value>
                  <value name="TO">
                    <block type="math_arithmetic" id="!*:Gx8wGYSUw``[h/Cm-">
                      <field name="OP">MINUS</field>
                      <value name="A">
                        <shadow type="math_number" id="G$2k9M6bG9xG4;M2xnSQ">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="convert_from_date" id="])s%{11GT7WON5S$Fa)i">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                          <field name="OPTION">h</field>
                          <value name="VALUE">
                            <block type="math_number" id="/6uug?Mz0.VB{0jN^63e">
                              <field name="NUM">36000</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="B">
                        <shadow type="math_number" id="*}S|B8v,(vI7]3cyTQ$?">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="convert_from_date" id="zWl~5)w)FVRF(:u$(P6U">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                          <field name="OPTION">h</field>
                          <value name="VALUE">
                            <block type="math_number" id="VEE3;kgxSsMsTdZmSR%^">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                  <next>
                    <block type="variables_set" id="J5J0IrhZZ@h1}Mm-U3dR">
                      <field name="VAR" id="/~z$K4;7_rWFxkP?uAsE">Text</field>
                      <value name="VALUE">
                        <block type="lists_split" id="~,wnDo(73a)@=7|pp=6+">
                          <mutation mode="JOIN"></mutation>
                          <field name="MODE">JOIN</field>
                          <value name="INPUT">
                            <block type="variables_get" id="O_fk.v)bX(MgC4W#E=fi">
                              <field name="VAR" id="V5r^pS+[O[Gz)OS{0D]U">Liste</field>
                            </block>
                          </value>
                          <value name="DELIM">
                            <shadow type="text" id="1q_VeRH%80lMV!}%LgHE">
                              <field name="TEXT">:</field>
                            </shadow>
                          </value>
                        </block>
                      </value>
                      <next>
                        <block type="debug" id="^_Xp~Rl+15uepHnm0SPg">
                          <field name="Severity">log</field>
                          <value name="TEXT">
                            <shadow type="text" id="fwN%i.7D={UKnGc,pGRi">
                              <field name="TEXT">test</field>
                            </shadow>
                            <block type="variables_get" id="YU+Zv]LXy1W^MFdE%-LA">
                              <field name="VAR" id="/~z$K4;7_rWFxkP?uAsE">Text</field>
                            </block>
                          </value>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </xml>
          
          1 Reply Last reply Reply Quote 1
          • T
            Tjaden @Glasfaser last edited by

            @glasfaser 113a58aa-46f5-4dd2-8809-f486c122fbc8-image.png

            @ticaki Ah gut (oder schlecht, wie man's nimmt), dann lag ich mit meiner Vermutung nicht so falsch.

            Danke für das Skript!

            T 1 Reply Last reply Reply Quote 0
            • T
              ticaki Developer @Tjaden last edited by ticaki

              @tjaden

              Was ein glück das ich mich so gut mit Blockly auskenne...<ironie off> das da oben war arbeit - wieso einfach wenns auch kompliziert geht gell 😄

              Bildschirmfoto 2023-12-31 um 00.40.05.png

              T 1 Reply Last reply Reply Quote 2
              • T
                Tjaden @ticaki last edited by Tjaden

                @ticaki Jetzt bin ich verwirrt – ist "Zeitdifferenz formatieren" eine Funktion von dir und/oder ist sie in Blockly vorhanden? Denn da hatte ich ausgiebig gesucht, aber eine solche Funktion nicht gefunden:

                24d3c323-bc8b-4cc0-8ba0-4b9d376dc4f2-image.png
                2cca1db9-d7a5-4a97-aba3-5911f80a0980-image.png

                T Glasfaser 2 Replies Last reply Reply Quote 0
                • T
                  ticaki Developer @Tjaden last edited by

                  @tjaden

                  https://github.com/ioBroker/ioBroker.javascript/releases/tag/v7.2.0

                  Ist noch nicht im stable. v7.2.0 aktuell ist stable 7.1.6. Musste @haus-automatisierung ganz lieb fragen 🙂

                  T 1 Reply Last reply Reply Quote 2
                  • Glasfaser
                    Glasfaser @Tjaden last edited by

                    @tjaden sagte in Fehlerhafte Implementierung von formatDate?:

                    Denn da hatte ich ausgiebig gesucht, aber eine solche Funktion nicht gefunden:

                    Liegt an deiner Javascript Version ... ist in der Beta vorhanden

                    1 Reply Last reply Reply Quote 2
                    • T
                      Tjaden @ticaki last edited by

                      @ticaki
                      @Glasfaser

                      Okay, dann hab ich jetzt einen Work-Around und darf der Implementierung entgegensehen. Danke! 😀

                      Da ich hier am Live-System arbeite, nutze ich ungerne Beta-Versionen oder Release-Candidates 😉

                      Ich wünsche euch schon mal einen guten Rutsch! 🎆

                      1 Reply Last reply Reply Quote 3
                      • haus-automatisierung
                        haus-automatisierung Developer Most Active @Tjaden last edited by

                        @tjaden Hier die Erklärung zu Deinem Denkfehler in ausführlicher: https://youtu.be/sxkz3O6nfFQ

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        966
                        Online

                        31.7k
                        Users

                        79.8k
                        Topics

                        1.3m
                        Posts

                        4
                        10
                        462
                        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