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 last edited by

      Hallo Zusammen, ich suche nach einem Skript, da mit 3 Datenpunkte heute, morgen und übermorgen im Datums-Format YYYYMMDD ohne Punkt oder Strich ausgibt. Vielen Dank im Voraus.

      Thomas Braun paul53 2 Replies Last reply Reply Quote 0
      • Thomas Braun
        Thomas Braun Most Active @Thorsten4-71 last edited by

        @thorsten4-71

        Und die Ausgangsdaten sehen wie aus?

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

          @thorsten4-71 sagte: Datums-Format YYYYMMDD ohne Punkt oder Strich ausgibt.

          formatDate(new Date(), 'YYYY-MM-DD').replace(/-/g, '')
          
          1 Reply Last reply Reply Quote 0
          • T
            Thorsten4-71 @Thomas Braun last edited by

            @thomas-braun Ich habe keine Ausgangsdaten. Ich habe unter iobroker Forum ein Skript gefunden, das schreibt mit jedoch die Daten DD.MM.YY, das schreibt mit das Datum heute, morgen und übermorgen aber im falschen Format. Ich habe das skript in YYYYMMDD geändert aber das funktionierte leider nicht.

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

              @thorsten4-71 Na dann wärs vielleicht eine Idee - das Skript zu posten - das kann man dann ggf. anpassen.

              T 2 Replies 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'));
                });

                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

                                  819
                                  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