Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Datums-Format YYYYMMDD

    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

    Datums-Format YYYYMMDD

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      Thorsten4-71 @mickym last edited by

      @mickym ```
      const idHeute = 'Datum.Heute';
      const idMorgen = 'Datum.Morgen';
      const idUebermorgen = 'Datum.Uebermorgen';

      createState(idHeute, "", {type: 'string'});
      createState(idMorgen, "", {type: 'string'});
      createState(idUebermorgen, "", {type: 'string'});

      schedule('1 0 * * *', function() {
      var date = new Date();
      setState(idHeute, formatDate(date, 'DD.MM.YY'));
      setState(idMorgen, formatDate(date.setDate(date.getDate() + 1), 'DD.MM.YY'));
      setState(idUebermorgen, formatDate(date.setDate(date.getDate() + 2), 'DD.MM.YY'));
      });

      1 Reply Last reply Reply Quote 0
      • Codierknecht
        Codierknecht Developer Most Active @Thorsten4-71 last edited by

        @thorsten4-71

        function format(date) {
            return formatDate(date, 'YYYY-MM-DD').replaceAll('-', '');
        }
        
        log(format(new Date()));
        
        1 Reply Last reply Reply Quote 0
        • T
          Thorsten4-71 @mickym last edited by

          @mickym

          const idHeute = 'Datum.Heute';
          const idMorgen = 'Datum.Morgen';
          const idUebermorgen = 'Datum.Uebermorgen';
           
          createState(idHeute, "", {type: 'string'});
          createState(idMorgen, "", {type: 'string'});
          createState(idUebermorgen, "", {type: 'string'});
           
          schedule('1 0 * * *', function() {
          	var date = new Date();
          	setState(idHeute, formatDate(date, 'DD.MM.YY'));
          	setState(idMorgen, formatDate(date.setDate(date.getDate() + 1), 'DD.MM.YY'));
          	setState(idUebermorgen, formatDate(date.setDate(date.getDate() + 2), 'DD.MM.YY'));
          });
          
          
          mickym 1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @Thorsten4-71 last edited by mickym

            @thorsten4-71 Mit dem Code von @Codierknecht sollte es eigentlich gehen:

            bed3b325-fbad-43c3-b370-00486c474b32-image.png

            Also:

            var date = new Date();
            console.log(formatDate(date,'YYYY-MM-DD').replaceAll("-",""));
            console.log(formatDate(date.setDate(date.getDate() + 1),'YYYY-MM-DD').replaceAll("-",""));
            console.log(formatDate(date.setDate(date.getDate() + 1),'YYYY-MM-DD').replaceAll("-",""));
            

            Auf Deinen Code angewandt sollte es dann so aussehen:

            const idHeute = 'Datum.Heute';
            const idMorgen = 'Datum.Morgen';
            const idUebermorgen = 'Datum.Uebermorgen';
             
            createState(idHeute, "", {type: 'string'});
            createState(idMorgen, "", {type: 'string'});
            createState(idUebermorgen, "", {type: 'string'});
             
            schedule('1 0 * * *', function() {
            	var date = new Date();
            	setState(idHeute, formatDate(date, 'YYYY-MM-DD').replaceAll("-",""));
            	setState(idMorgen, formatDate(date.setDate(date.getDate() + 1),'YYYY-MM-DD').replaceAll("-",""));
            	setState(idUebermorgen, formatDate(date.setDate(date.getDate() + 1), 'YYYY-MM-DD').replaceAll("-",""));
            });
             
            
            

            Wobei Dein Code fehlerhaft ist, da morgen in date gespeichert ist und deshalb darf man bei übermorgen nur 1 zu morgen dazuzählen.

            T 1 Reply Last reply Reply Quote 1
            • T
              Thorsten4-71 @mickym last edited by

              @mickym vielen Dank aber ich bekomme keine Daten
              c9ffaf79-393b-4b3d-a7ca-d7a974807a8c-image.png

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @Thorsten4-71 last edited by

                @thorsten4-71 sagte: ich bekomme keine Daten

                Ist denn schon 0:01 Uhr?

                T 1 Reply Last reply Reply Quote 1
                • T
                  Thorsten4-71 @paul53 last edited by

                  @paul53 Sorry, kenne mich mit Skript nicht so gut aus, ok ich schaue morgen nach. Vielen Dank.

                  Codierknecht mickym 2 Replies Last reply Reply Quote 0
                  • Codierknecht
                    Codierknecht Developer Most Active @Thorsten4-71 last edited by

                    @thorsten4-71

                    Ändere doch Testweise den CRON Ausdruck zu * * * * *
                    Dann hast Du zur nächsten vollen Minute Werte.

                    1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active @Thorsten4-71 last edited by

                      @thorsten4-71 Wie gesagt, Du musst den Code ändern und nur 1 zu morgen dazuzählen. Um das Ganze ohne scheduler zu testen, nimm einfach den Scheduler weg.

                      const idHeute = 'Datum.Heute';
                      const idMorgen = 'Datum.Morgen';
                      const idUebermorgen = 'Datum.Uebermorgen';
                       
                      createState(idHeute, "", {type: 'string'});
                      createState(idMorgen, "", {type: 'string'});
                      createState(idUebermorgen, "", {type: 'string'});
                       
                      
                      var date = new Date();
                      setState(idHeute, formatDate(date, 'YYYY-MM-DD').replaceAll("-",""));
                      setState(idMorgen, formatDate(date.setDate(date.getDate() + 1),'YYYY-MM-DD').replaceAll("-",""));
                      setState(idUebermorgen, formatDate(date.setDate(date.getDate() + 1), 'YYYY-MM-DD').replaceAll("-",""));
                      
                       
                       
                      
                      
                      T 1 Reply Last reply Reply Quote 1
                      • T
                        Thorsten4-71 @mickym last edited by

                        @mickym hat funktioniert, super vielen Dank an Euch Allen. Wünsch Euch einen schönen Abend.
                        67abdc67-1568-419c-8942-df8f336421d0-image.png

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        467
                        Online

                        31.8k
                        Users

                        80.0k
                        Topics

                        1.3m
                        Posts

                        5
                        15
                        285
                        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