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. Skripten / Logik
  4. Blockly
  5. Anzahl der Tage nach Datum

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    347

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.5k

Anzahl der Tage nach Datum

Geplant Angeheftet Gesperrt Verschoben Blockly
48 Beiträge 8 Kommentatoren 5.5k Aufrufe 10 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.
  • mkshbM mkshb

    Moin @theduke,

    konvertiere beide Daten in Millisekunden, rechne die Differenz aus und teile durch 86400000.
    (26.04.2022 = 16509710270000) - (27.08.2021 = 1630015200000) = 20908800000
    20908800000 / 86400000 = 242 Tage

    Blockly:

    <block xmlns="https://developers.google.com/blockly/xml" type="math_arithmetic" id="d.u7_y%xUhEXN5jEXMUd" x="-424.7499999999998" y="-383">
      <field name="OP">DIVIDE</field>
      <value name="A">
        <shadow type="math_number" id="5_SP@j1G$ZaS7t|_FS=9">
          <field name="NUM">1</field>
        </shadow>
        <block type="variables_get" id="|mNOgikc3~Cz^~a;*8``">
          <field name="VAR" id=":/OtTgN{LMHO~q|giE:P">Diff</field>
        </block>
      </value>
      <value name="B">
        <shadow type="math_number" id=",WYKnG6LK3P1TM[n9QP}">
          <field name="NUM">86400000</field>
        </shadow>
      </value>
    </block>
    

    S Offline
    S Offline
    srkonus
    schrieb am zuletzt editiert von srkonus
    #11

    @mkshb said in Anzahl der Tage nach Datum:

    Moin @theduke,

    konvertiere beide Daten in Millisekunden, rechne die Differenz aus und teile durch 86400000.
    (26.04.2022 = 16509710270000) - (27.08.2021 = 1630015200000) = 20908800000
    20908800000 / 86400000 = 242 Tage

    Blockly:

    <block xmlns="https://developers.google.com/blockly/xml" type="math_arithmetic" id="d.u7_y%xUhEXN5jEXMUd" x="-424.7499999999998" y="-383">
      <field name="OP">DIVIDE</field>
      <value name="A">
        <shadow type="math_number" id="5_SP@j1G$ZaS7t|_FS=9">
          <field name="NUM">1</field>
        </shadow>
        <block type="variables_get" id="|mNOgikc3~Cz^~a;*8``">
          <field name="VAR" id=":/OtTgN{LMHO~q|giE:P">Diff</field>
        </block>
      </value>
      <value name="B">
        <shadow type="math_number" id=",WYKnG6LK3P1TM[n9QP}">
          <field name="NUM">86400000</field>
        </shadow>
      </value>
    </block>
    

    Wie setze bzw. rechne ich ein bestimmtes Datum in Millisekunden um?

    mickymM 1 Antwort Letzte Antwort
    0
    • mickymM Online
      mickymM Online
      mickym
      Most Active
      schrieb am zuletzt editiert von
      #12

      Man kann auch einfach die durations Bibliothek nutzen:
      https://www.npmjs.com/package/duration

      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

      S 1 Antwort Letzte Antwort
      0
      • mickymM mickym

        Man kann auch einfach die durations Bibliothek nutzen:
        https://www.npmjs.com/package/duration

        S Offline
        S Offline
        srkonus
        schrieb am zuletzt editiert von
        #13

        @mickym Wie kann ich das dann in Blockly nutzen?
        Ich möchte meine gefahrenen Kilometer als Durchschnitt angezeigt bekommen. Was ich kenne ist der Leasingbeginn und die Gesamtkilometer. Den Durchschnitt pro Tag kann man ja errechnen, wenn man ausrechnet, wie lange das Leasing schon läuft.

        mickymM 1 Antwort Letzte Antwort
        0
        • S srkonus

          @mickym Wie kann ich das dann in Blockly nutzen?
          Ich möchte meine gefahrenen Kilometer als Durchschnitt angezeigt bekommen. Was ich kenne ist der Leasingbeginn und die Gesamtkilometer. Den Durchschnitt pro Tag kann man ja errechnen, wenn man ausrechnet, wie lange das Leasing schon läuft.

          mickymM Online
          mickymM Online
          mickym
          Most Active
          schrieb am zuletzt editiert von mickym
          #14

          @srkonus OK - ich habe mal Quick & Dirty was für Dich gemacht:

          9e2fdda6-3c9f-457c-8b8e-098b594ab1e7-image.png

          Das Datum also in der Form (JJJJ,M,T) eingeben und Du bekommst die Tage bis heute raus. Man kann die Funktion natürlich noch aufbohren.
          Also 11 Tage vergangen seit Beginn des Monats (1.7.2022 oder 2022,7,1) + 1 ist dann der 12.Tag heute.

          Im JS Adapter muss man halt die duration Bibliothek mit aufnehmen.
          73fa9f8f-58e9-4459-a985-2e47efabf039-image.png

          Somit bekommst also zu jedem Datum in der Vergangenheit die vergangenen Tage sehr einfach. Im letzten Beispiel:

          <xml xmlns="https://developers.google.com/blockly/xml">
           <variables>
             <variable id="m:)gvKQ,tVbet;-TV{5b">seit</variable>
           </variables>
           <block type="procedures_defcustomreturn" id="X!%2r7kCe4uVH:d}`32Y" x="113" y="63">
             <mutation statements="false">
               <arg name="seit" varid="m:)gvKQ,tVbet;-TV{5b"></arg>
             </mutation>
             <field name="NAME">Zeitraum_Tage</field>
             <field name="SCRIPT">dmFyIER1cmF0aW9uID0gcmVxdWlyZSgiZHVyYXRpb24iKTsKCnZhciBkdXJhdGlvbiA9IG5ldyBEdXJhdGlvbihuZXcgRGF0ZShzZWl0KSk7CnJldHVybiBkdXJhdGlvbi5kYXlzOw==</field>
             <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
           </block>
           <block type="debug" id="Bb(Yc|=`6FU{/4[.C=1X" x="113" y="113">
             <field name="Severity">log</field>
             <value name="TEXT">
               <shadow type="text" id="|m|X_N`BiZ%InvfDMMwK">
                 <field name="TEXT">test</field>
               </shadow>
               <block type="procedures_callcustomreturn" id="dQ61jfAA2hmi!M1mDqQo">
                 <mutation name="Zeitraum_Tage">
                   <arg name="seit"></arg>
                 </mutation>
                 <value name="ARG0">
                   <block type="lists_split" id="TD,]mjs?,-6xPS{($oSZ">
                     <mutation mode="SPLIT"></mutation>
                     <field name="MODE">SPLIT</field>
                     <value name="INPUT">
                       <block type="text" id=".0|RaEZ@@!1(Ej099i-*">
                         <field name="TEXT">2022,7,1</field>
                       </block>
                     </value>
                     <value name="DELIM">
                       <shadow type="text" id="#X%yFw`93sg7E2$ILJ_N">
                         <field name="TEXT">,</field>
                       </shadow>
                     </value>
                   </block>
                 </value>
               </block>
             </value>
           </block>
          </xml>
          

          Ich bin mir zwar immer nicht sicher, ob die Funktion mit kommt. Ich bin bekannterweise kein Blockly-Fan, aber damit bekommt man die Tage nun ganz easy. Du kannst ja mit der Beschreibung der durations Bibliothek auch leicht andere Einheiten oder auch Zeiträume von bis definieren.

          So kann man ja auch leicht den aktuellen Tag des Jahres berechnen usw.

          eaf5c2a6-0fed-4df7-bc7f-872ea2a92081-image.png

          Also 192 Tage vergangen seit dem 1.1. + 1 ist dann der 193.Tag heute.

          Oder wie im Beipiel von @TheDuke halt der 27.8.2021 bis heute:

          93cce102-46eb-4872-ac54-be7ec670f28b-image.png

          also Stand heute (12.7.2022) - 319 Tage. ;)

          Wie gesagt den Link zur Durations Bibliothek habe ich ja verlinkt, so dass man die Funktion beliebig komplex erweitern kann, wenn man

          • andere Einheiten zurück haben will
            oder
          • andere Zeiträume (von bis)

          Das überlasse ich Dir aber dann (wollte hier nur eine Anregung zur Vereinfachung geben).

          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

          1 Antwort Letzte Antwort
          0
          • S srkonus

            @mkshb said in Anzahl der Tage nach Datum:

            Moin @theduke,

            konvertiere beide Daten in Millisekunden, rechne die Differenz aus und teile durch 86400000.
            (26.04.2022 = 16509710270000) - (27.08.2021 = 1630015200000) = 20908800000
            20908800000 / 86400000 = 242 Tage

            Blockly:

            <block xmlns="https://developers.google.com/blockly/xml" type="math_arithmetic" id="d.u7_y%xUhEXN5jEXMUd" x="-424.7499999999998" y="-383">
              <field name="OP">DIVIDE</field>
              <value name="A">
                <shadow type="math_number" id="5_SP@j1G$ZaS7t|_FS=9">
                  <field name="NUM">1</field>
                </shadow>
                <block type="variables_get" id="|mNOgikc3~Cz^~a;*8``">
                  <field name="VAR" id=":/OtTgN{LMHO~q|giE:P">Diff</field>
                </block>
              </value>
              <value name="B">
                <shadow type="math_number" id=",WYKnG6LK3P1TM[n9QP}">
                  <field name="NUM">86400000</field>
                </shadow>
              </value>
            </block>
            

            Wie setze bzw. rechne ich ein bestimmtes Datum in Millisekunden um?

            mickymM Online
            mickymM Online
            mickym
            Most Active
            schrieb am zuletzt editiert von mickym
            #15

            @srkonus sagte in Anzahl der Tage nach Datum:

            @mkshb said in Anzahl der Tage nach Datum:

            Moin @theduke,

            konvertiere beide Daten in Millisekunden, rechne die Differenz aus und teile durch 86400000.
            (26.04.2022 = 16509710270000) - (27.08.2021 = 1630015200000) = 20908800000
            20908800000 / 86400000 = 242 Tage

            Blockly:

            <block xmlns="https://developers.google.com/blockly/xml" type="math_arithmetic" id="d.u7_y%xUhEXN5jEXMUd" x="-424.7499999999998" y="-383">
              <field name="OP">DIVIDE</field>
              <value name="A">
                <shadow type="math_number" id="5_SP@j1G$ZaS7t|_FS=9">
                  <field name="NUM">1</field>
                </shadow>
                <block type="variables_get" id="|mNOgikc3~Cz^~a;*8``">
                  <field name="VAR" id=":/OtTgN{LMHO~q|giE:P">Diff</field>
                </block>
              </value>
              <value name="B">
                <shadow type="math_number" id=",WYKnG6LK3P1TM[n9QP}">
                  <field name="NUM">86400000</field>
                </shadow>
              </value>
            </block>
            

            Wie setze bzw. rechne ich ein bestimmtes Datum in Millisekunden um?

            Ansonsten wenn Du lieber selber rechnen willst über die Methode von @mkshb - habe ich Dir im Blockly noch die andere Möglichkeiten angehängt (aktuelles Datum in ms und bestimmtes Datum in ms):
            807ef671-97b4-4e09-83a5-280a4071e1ad-image.png

            Du siehst auch hier kommt beim Datum vom 27.8.2021 leicht auf die Millisekunden:
            1630015200000 und damit auch auf 319 Tage, wie die duration Bibliothek ausgibt. Wenn Du also lieber selbst rechnen willst, kannst Du es auch ohne die Bibliothek easy tun.

            <xml xmlns="https://developers.google.com/blockly/xml">
             <variables>
               <variable id="m:)gvKQ,tVbet;-TV{5b">seit</variable>
             </variables>
             <block type="procedures_defcustomreturn" id="X!%2r7kCe4uVH:d}`32Y" x="-562" y="38">
               <mutation statements="false">
                 <arg name="seit" varid="m:)gvKQ,tVbet;-TV{5b"></arg>
               </mutation>
               <field name="NAME">Zeitraum_Tage</field>
               <field name="SCRIPT">dmFyIER1cmF0aW9uID0gcmVxdWlyZSgiZHVyYXRpb24iKTsKCnZhciBkdXJhdGlvbiA9IG5ldyBEdXJhdGlvbihuZXcgRGF0ZShzZWl0KSk7CnJldHVybiBkdXJhdGlvbi5kYXlzOw==</field>
               <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
             </block>
             <block type="debug" id="Bb(Yc|=`6FU{/4[.C=1X" x="-562" y="88">
               <field name="Severity">log</field>
               <value name="TEXT">
                 <shadow type="text" id="|m|X_N`BiZ%InvfDMMwK">
                   <field name="TEXT">test</field>
                 </shadow>
                 <block type="procedures_callcustomreturn" id="dQ61jfAA2hmi!M1mDqQo">
                   <mutation name="Zeitraum_Tage">
                     <arg name="seit"></arg>
                   </mutation>
                   <value name="ARG0">
                     <block type="lists_split" id="TD,]mjs?,-6xPS{($oSZ">
                       <mutation mode="SPLIT"></mutation>
                       <field name="MODE">SPLIT</field>
                       <value name="INPUT">
                         <block type="text" id=".0|RaEZ@@!1(Ej099i-*">
                           <field name="TEXT">2021,8,27</field>
                         </block>
                       </value>
                       <value name="DELIM">
                         <shadow type="text" id="#X%yFw`93sg7E2$ILJ_N">
                           <field name="TEXT">,</field>
                         </shadow>
                       </value>
                     </block>
                   </value>
                 </block>
               </value>
               <next>
                 <block type="debug" id="A7l5f!#=y2PF72?N3J?z">
                   <field name="Severity">log</field>
                   <value name="TEXT">
                     <shadow type="text" id="+h!]x636x85Y2qVC2uu]">
                       <field name="TEXT">test</field>
                     </shadow>
                     <block type="time_get" id="],CE@TAC+Oh8FUEA$2Y9">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                       <field name="OPTION">object</field>
                     </block>
                   </value>
                   <next>
                     <block type="debug" id="g{Cu^@+4jhqS=hSeGH~7">
                       <field name="Severity">log</field>
                       <value name="TEXT">
                         <shadow type="text" id="QqI0_2FCqpwW*D_jsC||">
                           <field name="TEXT">test</field>
                         </shadow>
                         <block type="convert_from_date" id="[oKNLVL,k4)^s/zD0-un">
                           <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                           <field name="OPTION">object</field>
                           <value name="VALUE">
                             <block type="text" id="_O^?86yj_3.I$~FYD%*7">
                               <field name="TEXT">2021/8/27</field>
                             </block>
                           </value>
                         </block>
                       </value>
                       <next>
                         <block type="debug" id=":0fWS(#KtbA(kJ=dI+7L">
                           <field name="Severity">log</field>
                           <value name="TEXT">
                             <shadow type="text" id="M^i[sWHMx~peyj/P*X$,">
                               <field name="TEXT">test</field>
                             </shadow>
                             <block type="math_round" id="=gloh%t#7j(;OS_Y+;Mp">
                               <field name="OP">ROUNDDOWN</field>
                               <value name="NUM">
                                 <shadow type="math_number" id="xN484bNwbqTuVYC7|Z03">
                                   <field name="NUM">3.1</field>
                                 </shadow>
                                 <block type="math_arithmetic" id="tG0~nBi^eEhKj[c~eWFa">
                                   <field name="OP">DIVIDE</field>
                                   <value name="A">
                                     <shadow type="math_number" id="E(rxg^}]Pw[!I106|Ll:">
                                       <field name="NUM">1</field>
                                     </shadow>
                                     <block type="math_arithmetic" id="xL1)6P%OmSlVH{6=){(f">
                                       <field name="OP">MINUS</field>
                                       <value name="A">
                                         <shadow type="math_number" id="u`j1SY@jpw.]hVP#lUW4">
                                           <field name="NUM">1</field>
                                         </shadow>
                                         <block type="time_get" id="[JsB^D7A]Y{X$75E{(fT">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                           <field name="OPTION">object</field>
                                         </block>
                                       </value>
                                       <value name="B">
                                         <shadow type="math_number" id="jwV97|MDF+K*dFN*#@u%">
                                           <field name="NUM">1</field>
                                         </shadow>
                                         <block type="convert_from_date" id="vlZ[bRTj6!r;NV+d!x[o">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                           <field name="OPTION">object</field>
                                           <value name="VALUE">
                                             <block type="text" id="D6.e]0/+UTZ)aPTqKOvn">
                                               <field name="TEXT">2021/8/27</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <value name="B">
                                     <shadow type="math_number" id="FI2=Q!iks[mhY!SgR/=v">
                                       <field name="NUM">86400000</field>
                                     </shadow>
                                   </value>
                                 </block>
                               </value>
                             </block>
                           </value>
                         </block>
                       </next>
                     </block>
                   </next>
                 </block>
               </next>
             </block>
            </xml>
            

            Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

            S 1 Antwort Letzte Antwort
            0
            • mickymM mickym

              @srkonus sagte in Anzahl der Tage nach Datum:

              @mkshb said in Anzahl der Tage nach Datum:

              Moin @theduke,

              konvertiere beide Daten in Millisekunden, rechne die Differenz aus und teile durch 86400000.
              (26.04.2022 = 16509710270000) - (27.08.2021 = 1630015200000) = 20908800000
              20908800000 / 86400000 = 242 Tage

              Blockly:

              <block xmlns="https://developers.google.com/blockly/xml" type="math_arithmetic" id="d.u7_y%xUhEXN5jEXMUd" x="-424.7499999999998" y="-383">
                <field name="OP">DIVIDE</field>
                <value name="A">
                  <shadow type="math_number" id="5_SP@j1G$ZaS7t|_FS=9">
                    <field name="NUM">1</field>
                  </shadow>
                  <block type="variables_get" id="|mNOgikc3~Cz^~a;*8``">
                    <field name="VAR" id=":/OtTgN{LMHO~q|giE:P">Diff</field>
                  </block>
                </value>
                <value name="B">
                  <shadow type="math_number" id=",WYKnG6LK3P1TM[n9QP}">
                    <field name="NUM">86400000</field>
                  </shadow>
                </value>
              </block>
              

              Wie setze bzw. rechne ich ein bestimmtes Datum in Millisekunden um?

              Ansonsten wenn Du lieber selber rechnen willst über die Methode von @mkshb - habe ich Dir im Blockly noch die andere Möglichkeiten angehängt (aktuelles Datum in ms und bestimmtes Datum in ms):
              807ef671-97b4-4e09-83a5-280a4071e1ad-image.png

              Du siehst auch hier kommt beim Datum vom 27.8.2021 leicht auf die Millisekunden:
              1630015200000 und damit auch auf 319 Tage, wie die duration Bibliothek ausgibt. Wenn Du also lieber selbst rechnen willst, kannst Du es auch ohne die Bibliothek easy tun.

              <xml xmlns="https://developers.google.com/blockly/xml">
               <variables>
                 <variable id="m:)gvKQ,tVbet;-TV{5b">seit</variable>
               </variables>
               <block type="procedures_defcustomreturn" id="X!%2r7kCe4uVH:d}`32Y" x="-562" y="38">
                 <mutation statements="false">
                   <arg name="seit" varid="m:)gvKQ,tVbet;-TV{5b"></arg>
                 </mutation>
                 <field name="NAME">Zeitraum_Tage</field>
                 <field name="SCRIPT">dmFyIER1cmF0aW9uID0gcmVxdWlyZSgiZHVyYXRpb24iKTsKCnZhciBkdXJhdGlvbiA9IG5ldyBEdXJhdGlvbihuZXcgRGF0ZShzZWl0KSk7CnJldHVybiBkdXJhdGlvbi5kYXlzOw==</field>
                 <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
               </block>
               <block type="debug" id="Bb(Yc|=`6FU{/4[.C=1X" x="-562" y="88">
                 <field name="Severity">log</field>
                 <value name="TEXT">
                   <shadow type="text" id="|m|X_N`BiZ%InvfDMMwK">
                     <field name="TEXT">test</field>
                   </shadow>
                   <block type="procedures_callcustomreturn" id="dQ61jfAA2hmi!M1mDqQo">
                     <mutation name="Zeitraum_Tage">
                       <arg name="seit"></arg>
                     </mutation>
                     <value name="ARG0">
                       <block type="lists_split" id="TD,]mjs?,-6xPS{($oSZ">
                         <mutation mode="SPLIT"></mutation>
                         <field name="MODE">SPLIT</field>
                         <value name="INPUT">
                           <block type="text" id=".0|RaEZ@@!1(Ej099i-*">
                             <field name="TEXT">2021,8,27</field>
                           </block>
                         </value>
                         <value name="DELIM">
                           <shadow type="text" id="#X%yFw`93sg7E2$ILJ_N">
                             <field name="TEXT">,</field>
                           </shadow>
                         </value>
                       </block>
                     </value>
                   </block>
                 </value>
                 <next>
                   <block type="debug" id="A7l5f!#=y2PF72?N3J?z">
                     <field name="Severity">log</field>
                     <value name="TEXT">
                       <shadow type="text" id="+h!]x636x85Y2qVC2uu]">
                         <field name="TEXT">test</field>
                       </shadow>
                       <block type="time_get" id="],CE@TAC+Oh8FUEA$2Y9">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                         <field name="OPTION">object</field>
                       </block>
                     </value>
                     <next>
                       <block type="debug" id="g{Cu^@+4jhqS=hSeGH~7">
                         <field name="Severity">log</field>
                         <value name="TEXT">
                           <shadow type="text" id="QqI0_2FCqpwW*D_jsC||">
                             <field name="TEXT">test</field>
                           </shadow>
                           <block type="convert_from_date" id="[oKNLVL,k4)^s/zD0-un">
                             <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                             <field name="OPTION">object</field>
                             <value name="VALUE">
                               <block type="text" id="_O^?86yj_3.I$~FYD%*7">
                                 <field name="TEXT">2021/8/27</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <next>
                           <block type="debug" id=":0fWS(#KtbA(kJ=dI+7L">
                             <field name="Severity">log</field>
                             <value name="TEXT">
                               <shadow type="text" id="M^i[sWHMx~peyj/P*X$,">
                                 <field name="TEXT">test</field>
                               </shadow>
                               <block type="math_round" id="=gloh%t#7j(;OS_Y+;Mp">
                                 <field name="OP">ROUNDDOWN</field>
                                 <value name="NUM">
                                   <shadow type="math_number" id="xN484bNwbqTuVYC7|Z03">
                                     <field name="NUM">3.1</field>
                                   </shadow>
                                   <block type="math_arithmetic" id="tG0~nBi^eEhKj[c~eWFa">
                                     <field name="OP">DIVIDE</field>
                                     <value name="A">
                                       <shadow type="math_number" id="E(rxg^}]Pw[!I106|Ll:">
                                         <field name="NUM">1</field>
                                       </shadow>
                                       <block type="math_arithmetic" id="xL1)6P%OmSlVH{6=){(f">
                                         <field name="OP">MINUS</field>
                                         <value name="A">
                                           <shadow type="math_number" id="u`j1SY@jpw.]hVP#lUW4">
                                             <field name="NUM">1</field>
                                           </shadow>
                                           <block type="time_get" id="[JsB^D7A]Y{X$75E{(fT">
                                             <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                             <field name="OPTION">object</field>
                                           </block>
                                         </value>
                                         <value name="B">
                                           <shadow type="math_number" id="jwV97|MDF+K*dFN*#@u%">
                                             <field name="NUM">1</field>
                                           </shadow>
                                           <block type="convert_from_date" id="vlZ[bRTj6!r;NV+d!x[o">
                                             <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation>
                                             <field name="OPTION">object</field>
                                             <value name="VALUE">
                                               <block type="text" id="D6.e]0/+UTZ)aPTqKOvn">
                                                 <field name="TEXT">2021/8/27</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <shadow type="math_number" id="FI2=Q!iks[mhY!SgR/=v">
                                         <field name="NUM">86400000</field>
                                       </shadow>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                 </next>
               </block>
              </xml>
              

              S Offline
              S Offline
              srkonus
              schrieb am zuletzt editiert von
              #16

              @mickym Mega - Vielen Dank! Jetzt muss ich das nur noch irgendwie in eine Variable bekommen und kann damit weiter rechnen.

              mickymM 1 Antwort Letzte Antwort
              0
              • S srkonus

                @mickym Mega - Vielen Dank! Jetzt muss ich das nur noch irgendwie in eine Variable bekommen und kann damit weiter rechnen.

                mickymM Online
                mickymM Online
                mickym
                Most Active
                schrieb am zuletzt editiert von
                #17

                @srkonus Na das sollte doch wirklich kein Problem sein, Du musst doch den Block - statt dem debug output nur einer Variablen zuweisen:

                19178f2d-fb0a-4ef9-b8f8-d7692de32242-image.png

                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                S 1 Antwort Letzte Antwort
                0
                • mickymM mickym

                  @srkonus Na das sollte doch wirklich kein Problem sein, Du musst doch den Block - statt dem debug output nur einer Variablen zuweisen:

                  19178f2d-fb0a-4ef9-b8f8-d7692de32242-image.png

                  S Offline
                  S Offline
                  srkonus
                  schrieb am zuletzt editiert von
                  #18

                  @mickym Habe es mit "Schreibe Objekt ID" gemacht. Morgen einmal nachschauen, ob das "Tage Seit" sich automatisch aktualisiert oder ich einen CRON Job einrichten muss.

                  T 1 Antwort Letzte Antwort
                  0
                  • S srkonus

                    @mickym Habe es mit "Schreibe Objekt ID" gemacht. Morgen einmal nachschauen, ob das "Tage Seit" sich automatisch aktualisiert oder ich einen CRON Job einrichten muss.

                    T Offline
                    T Offline
                    TT-Tom
                    schrieb am zuletzt editiert von TT-Tom
                    #19

                    @srkonus

                    Startest du das Script automatisch neu, wenn nicht, wird sich nach dem ersten Durchlauf nichts mehr ändern.

                    Entweder Triggern oder ein CRON halt.

                    Gruß Tom

                    Gruß Tom
                    https://github.com/tt-tom17
                    Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                    NSPanel Script Wiki
                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                    NSPanel Adapter Wiki
                    https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                    metaxaM 1 Antwort Letzte Antwort
                    1
                    • T TT-Tom

                      @srkonus

                      Startest du das Script automatisch neu, wenn nicht, wird sich nach dem ersten Durchlauf nichts mehr ändern.

                      Entweder Triggern oder ein CRON halt.

                      Gruß Tom

                      metaxaM Offline
                      metaxaM Offline
                      metaxa
                      schrieb am zuletzt editiert von
                      #20

                      Mit Interesse habe ich diesen Thread gelesen und versuche ihn für meine Zwecke umzusetzen.

                      Irgendetwas mache ich falsch, die Berechnung von @srkonus (danke für den npm - link) stimmt, meine eigene aber nicht.

                      25308528-0321-4164-9008-52e5a69dd9c6-image.png
                      c28a00ce-f04d-45b4-ade4-2409f945f7f5-image.png

                      Funktion Zeitraum_Tage_1 --> Ergebnis 96 (richtig)

                      var Duration = require("duration");
                      
                      var duration = new Duration(new Date(seit));
                      return duration.days;
                      

                      Funktion Zeitraum_Tage_2 --> Ergebnis 66 (falsch)

                      var Duration = require("duration");
                      
                      var duration = new Duration(new Date(2022, 04, 12));
                      return duration.days;
                      

                      Warum bitte?

                      T metaxaM 2 Antworten Letzte Antwort
                      0
                      • metaxaM metaxa

                        Mit Interesse habe ich diesen Thread gelesen und versuche ihn für meine Zwecke umzusetzen.

                        Irgendetwas mache ich falsch, die Berechnung von @srkonus (danke für den npm - link) stimmt, meine eigene aber nicht.

                        25308528-0321-4164-9008-52e5a69dd9c6-image.png
                        c28a00ce-f04d-45b4-ade4-2409f945f7f5-image.png

                        Funktion Zeitraum_Tage_1 --> Ergebnis 96 (richtig)

                        var Duration = require("duration");
                        
                        var duration = new Duration(new Date(seit));
                        return duration.days;
                        

                        Funktion Zeitraum_Tage_2 --> Ergebnis 66 (falsch)

                        var Duration = require("duration");
                        
                        var duration = new Duration(new Date(2022, 04, 12));
                        return duration.days;
                        

                        Warum bitte?

                        T Offline
                        T Offline
                        TT-Tom
                        schrieb am zuletzt editiert von
                        #21

                        @metaxa

                        Ich würde sagen die Schreibweise des Datums ist falsch. dd/mm/yyyy

                        Gruß Tom
                        https://github.com/tt-tom17
                        Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                        NSPanel Script Wiki
                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                        NSPanel Adapter Wiki
                        https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                        metaxaM 1 Antwort Letzte Antwort
                        0
                        • T TT-Tom

                          @metaxa

                          Ich würde sagen die Schreibweise des Datums ist falsch. dd/mm/yyyy

                          metaxaM Offline
                          metaxaM Offline
                          metaxa
                          schrieb am zuletzt editiert von
                          #22

                          @tt-tom ich habe mich nach der Beschreibung auf der npm Seite gehalten:
                          66fcceaa-647e-42a0-a632-65df6eacfc13-image.png
                          oder wie meinst du das?

                          T 1 Antwort Letzte Antwort
                          0
                          • metaxaM metaxa

                            Mit Interesse habe ich diesen Thread gelesen und versuche ihn für meine Zwecke umzusetzen.

                            Irgendetwas mache ich falsch, die Berechnung von @srkonus (danke für den npm - link) stimmt, meine eigene aber nicht.

                            25308528-0321-4164-9008-52e5a69dd9c6-image.png
                            c28a00ce-f04d-45b4-ade4-2409f945f7f5-image.png

                            Funktion Zeitraum_Tage_1 --> Ergebnis 96 (richtig)

                            var Duration = require("duration");
                            
                            var duration = new Duration(new Date(seit));
                            return duration.days;
                            

                            Funktion Zeitraum_Tage_2 --> Ergebnis 66 (falsch)

                            var Duration = require("duration");
                            
                            var duration = new Duration(new Date(2022, 04, 12));
                            return duration.days;
                            

                            Warum bitte?

                            metaxaM Offline
                            metaxaM Offline
                            metaxa
                            schrieb am zuletzt editiert von metaxa
                            #23

                            @metaxa sagte in Anzahl der Tage nach Datum:

                            Funktion Zeitraum_Tage_1 --> Ergebnis 96 (richtig)

                            Ich habe rasch mit Excel nachgerechnet, da kommen aktuell 94 Tage raus. Komisch ........

                            e23b18a0-ac25-4a6d-b149-9769fca3965a-image.png

                            =DATEDIF($C$5;$F$6;"d")
                            
                            T 1 Antwort Letzte Antwort
                            0
                            • metaxaM metaxa

                              @tt-tom ich habe mich nach der Beschreibung auf der npm Seite gehalten:
                              66fcceaa-647e-42a0-a632-65df6eacfc13-image.png
                              oder wie meinst du das?

                              T Offline
                              T Offline
                              TT-Tom
                              schrieb am zuletzt editiert von
                              #24

                              @metaxa
                              Bin von Date ausgegangen. Muss mir mal die npm Seite ansehen

                              Gruß Tom
                              https://github.com/tt-tom17
                              Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                              NSPanel Script Wiki
                              https://github.com/joBr99/nspanel-lovelace-ui/wiki

                              NSPanel Adapter Wiki
                              https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                              metaxaM 1 Antwort Letzte Antwort
                              0
                              • T TT-Tom

                                @metaxa
                                Bin von Date ausgegangen. Muss mir mal die npm Seite ansehen

                                metaxaM Offline
                                metaxaM Offline
                                metaxa
                                schrieb am zuletzt editiert von
                                #25

                                @tt-tom sagte in Anzahl der Tage nach Datum:

                                die npm Seite

                                https://www.npmjs.com/package/duration

                                1 Antwort Letzte Antwort
                                0
                                • metaxaM metaxa

                                  @metaxa sagte in Anzahl der Tage nach Datum:

                                  Funktion Zeitraum_Tage_1 --> Ergebnis 96 (richtig)

                                  Ich habe rasch mit Excel nachgerechnet, da kommen aktuell 94 Tage raus. Komisch ........

                                  e23b18a0-ac25-4a6d-b149-9769fca3965a-image.png

                                  =DATEDIF($C$5;$F$6;"d")
                                  
                                  T Offline
                                  T Offline
                                  TT-Tom
                                  schrieb am zuletzt editiert von TT-Tom
                                  #26

                                  @metaxa bei mir kommen 96 raus. Formatierungensfehler der Zellen vielleicht.

                                  Gruß Tom
                                  https://github.com/tt-tom17
                                  Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                                  NSPanel Script Wiki
                                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                  NSPanel Adapter Wiki
                                  https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                                  metaxaM 1 Antwort Letzte Antwort
                                  0
                                  • T TT-Tom

                                    @metaxa bei mir kommen 96 raus. Formatierungensfehler der Zellen vielleicht.

                                    metaxaM Offline
                                    metaxaM Offline
                                    metaxa
                                    schrieb am zuletzt editiert von metaxa
                                    #27

                                    @tt-tom sagte in Anzahl der Tage nach Datum:

                                    bei mir kommen 96 raus.

                                    Korrekt, in Excel habe ich es richtig gestellt, sorry mein Fehler. Ein Rätsel bleibt mir aber die Berechnung der duration function.

                                    T 1 Antwort Letzte Antwort
                                    0
                                    • metaxaM metaxa

                                      @tt-tom sagte in Anzahl der Tage nach Datum:

                                      bei mir kommen 96 raus.

                                      Korrekt, in Excel habe ich es richtig gestellt, sorry mein Fehler. Ein Rätsel bleibt mir aber die Berechnung der duration function.

                                      T Offline
                                      T Offline
                                      TT-Tom
                                      schrieb am zuletzt editiert von
                                      #28

                                      @metaxa

                                      Ja das ist komisch. Komme aktuell nicht an mein Rechner, um selber zu testen.

                                      Gruß Tom
                                      https://github.com/tt-tom17
                                      Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                                      NSPanel Script Wiki
                                      https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                      NSPanel Adapter Wiki
                                      https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                                      mickymM 1 Antwort Letzte Antwort
                                      0
                                      • T TT-Tom

                                        @metaxa

                                        Ja das ist komisch. Komme aktuell nicht an mein Rechner, um selber zu testen.

                                        mickymM Online
                                        mickymM Online
                                        mickym
                                        Most Active
                                        schrieb am zuletzt editiert von mickym
                                        #29

                                        Das Problem ist, wenn Du bei Date nicht über eine Array initialisierst sondern Date mit dem normalen Konstruktor verwendest, (s. Date Funktion), dann wird der Januar mit Index 0 gezählt.

                                        18e36f61-dc9b-4a16-ac68-024854e0820b-image.png

                                        Siehe hier: https://www.w3schools.com/js/js_dates.asp

                                        Um also den 12.April 2022 zu bekommen musst Du beim Monat eines abziehen.

                                        var Duration = require("duration");
                                        
                                        var duration = new Duration(new Date(2022,3,12));
                                        return duration.days;
                                        

                                        Sprich in deinem 2. Beispiel berechnest Du die Tage seit dem 12. Mai 2022 anstelle des Aprils.

                                        Intern scheint bei einer Array Übergabe, dieses als String konvertiert zu werden siehe hier und somit in einen String konvertiert zu werden.

                                        2acf4b04-f375-44bf-aa7a-e3bd03f0478c-image.png

                                        Als String wird es dann wieder korrekt interpretiert:

                                        var Duration = require("duration");
                                        
                                        var duration = new Duration(new Date("2022,4,12"));
                                        return duration.days;
                                        
                                        

                                        Wenn Du Dir das Datum als String ausgeben lässt, dann siehst Du es ja:

                                        var Duration = require("duration");
                                        
                                        // var duration = new Duration(new Date("2022,4,12"));
                                        // return duration.days;
                                        
                                        const d = new Date(2022,4,12);
                                        return d;
                                        

                                        ergibt dann:
                                        b9d7fd46-1747-456e-944c-6acd6e45da5b-image.png

                                        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                        1 Antwort Letzte Antwort
                                        1
                                        • mickymM Online
                                          mickymM Online
                                          mickym
                                          Most Active
                                          schrieb am zuletzt editiert von mickym
                                          #30

                                          Sorry - für die Verwirrung -

                                          @metaxa Somit kannst Du Deinen Datenpunkt als String direkt der duration Bibliothek übergeben, da dann das Datum aus einem String gebildet wird:

                                          0be459bb-1dc7-4d4f-a721-b699b0c396f4-image.png

                                          Also sorry nochmal. Aber so ist es ja auch noch einfacher und spart sich die Umrechnerei halt komplett. Man muss halt nur darauf achten, dass der String das Format YYYY/MM/DD hat. Ich lerne auch jeden Tag dazu. ;)

                                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                          T metaxaM 2 Antworten Letzte Antwort
                                          1
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          739

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          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