Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst]: Stunde aus Zeitobjekt auslesen

    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]: Stunde aus Zeitobjekt auslesen

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

      Ich möchte gerne die Stunde aus dem Objekt auslesen, dass Datum und Zeit beinhaltet.
      Offensichtlich stimmt der Befehl so nicht, weil er immer 0 ausliest. Eventuell muss man einen String anders auslesen?

      Bildschirmfoto 2024-02-11 um 13.56.25.jpg

      Stunde2 = new Date(getState('0_userdata.0.tibberdata.cheapestNext2Start'/*Start [Text] der nächsten günstigen x Stunden*/).val);
           Speicherladestartstunde = Stunde2.getHours();
           setState('0_userdata.0.Ladescript.Startuhrzeit_2h'/*Startuhrzeit 2h*/,Speicherladestartstunde);
      

      Es wäre supernett, wenn mir jemand helfen könnte.

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

        @pingo sagte in Stunde aus Zeitobjekt auslesen:

        Offensichtlich stimmt der Befehl so nicht, weil er immer 0 ausliest

        ist das wirklich ein Datumsobjekt?

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

          @homoran ich denke ein String-Objekt?
          Ich würde gerne in dem Beispiel die "3" als Zahl auslesen

          Homoran 1 Reply Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @pingo last edited by

            @pingo sagte in Stunde aus Zeitobjekt auslesen:

            ich denke ein String-Objekt?

            dann kannst du keine Datumsbefehle verwenden.
            Dann musst du Zeichenkettenmanipulationen durchführen

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

              @pingo sagte: die Stunde aus dem Objekt auslesen, dass Datum und Zeit beinhaltet.

              Das Datumsformat "DD.MM.YYYY hh:mm:ss" lässt sich nicht in ein date-Objekt wandeln.
              Versuche es mal so:

              const time = getState('0_userdata.0.tibberdata.cheapestNext2Start'/*Start [Text] der nächsten günstigen x Stunden*/).val;
              setState('0_userdata.0.Ladescript.Startuhrzeit_2h'/*Startuhrzeit 2h*/, parseInt(time.split(' ')[1]), true);
              
              P 1 Reply Last reply Reply Quote 1
              • P
                pingo @paul53 last edited by pingo

                @paul53 DANKE!

                Das funktioniert super.

                In der Console kommt eine Warnung wegen der 2.Zeile mit dem "parseInt". Kann ich die ignorieren?

                Bildschirmfoto 2024-02-11 um 20.52.56.jpg

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

                  @pingo sagte in Stunde aus Zeitobjekt auslesen:

                  wegen der 2.Zeile

                  wie kommst du darauf?
                  7:6 ist siebte Zeile, 6. Zeichen

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

                    @homoran Bei mir ist es die 7.Zeile, weil ich vorher noch die Berechnung der billigsten Startzeit starte...Das hat aber keinen Einfluß auf den Fehler.

                    Homoran 1 Reply Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators @pingo last edited by

                      @pingo sagte in Stunde aus Zeitobjekt auslesen:

                      Das hat aber keinen Einfluß auf den Fehler.

                      dann zeig doch das ganze script

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

                        @homoran

                        sendTo('telegram.0', {text:"Neue Startzeiten berechnet"}, function (res) {});
                             setState('0_userdata.0.tibberdata.numHours'/*Anzahl der zusammenhängenden Stunde [h]*/,2);
                             setState('0_userdata.0.tibberdata.startCalc'/*Berechnung starten*/, true);
                        
                             
                             const time = getState('0_userdata.0.tibberdata.cheapestNext2Start'/*Start [Text] der nächsten günstigen x Stunden*/).val;
                             setState('0_userdata.0.Ladescript.Startuhrzeit_2h'/*Startuhrzeit 2h*/, parseInt(time.split(' ')[1]), true);
                             Speicherladestartstunde = getState('0_userdata.0.Ladescript.Startuhrzeit_2h'/*Startuhrzeit 2h*/).val;
                             console.log("Start 2h um " + Speicherladestartstunde);
                        
                        Homoran 1 Reply Last reply Reply Quote 0
                        • Homoran
                          Homoran Global Moderator Administrators @pingo last edited by

                          @pingo sagte in Stunde aus Zeitobjekt auslesen:

                          setState('0_userdata.0.Ladescript.Startuhrzeit_2h'/Startuhrzeit 2h/, parseInt(time.split(' ')[1]), true);

                          existiert der DP ?

                          1. Zeile 6. Zeichen passt gar nicht!
                            hast du globale Skripte?
                          P 1 Reply Last reply Reply Quote 0
                          • P
                            pingo @Homoran last edited by

                            @homoran Der DP existiert und ich denke, dass die Script global sind (woran sehe ich das?)

                            Homoran 1 Reply Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators @pingo last edited by

                              @pingo sagte in Stunde aus Zeitobjekt auslesen:

                              dass die Script global sind

                              hoffentlich nicht!

                              @pingo sagte in Stunde aus Zeitobjekt auslesen:

                              woran sehe ich das?

                              liegen sie im skripte Explorer im Verzeichnis global?
                              das ist nicht ohne Grund nur im Expertenmodus sichtbar

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

                                @homoran Nein den Expertenmodus habe ich nicht an. Die Script sind im Hauptscriptordner.

                                Homoran 1 Reply Last reply Reply Quote 0
                                • Homoran
                                  Homoran Global Moderator Administrators @pingo last edited by

                                  @pingo sagte in Stunde aus Zeitobjekt auslesen:

                                  @homoran Nein den Expertenmodus habe ich nicht an. Die Script sind im Hauptscriptordner.

                                  das passt nicht zu meiner Frage!

                                  mach den Expertenmodus an und sieh nach ob da irgendetwas im Verzeichnis global drin ist.

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

                                    @homoran Global ist leer

                                    Homoran 1 Reply Last reply Reply Quote 0
                                    • Homoran
                                      Homoran Global Moderator Administrators @pingo last edited by

                                      @pingo sehr gut.
                                      nur dann verstehe ich 7:6 nicht

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

                                        @pingo sagte: Warnung wegen der 2.Zeile

                                        Vermutung: Der Datenpunkt ist nicht vom Typ "Zahl"? Im Tab "Protokolle" finden sich mehr Informationen.

                                        P 1 Reply Last reply Reply Quote 1
                                        • P
                                          pingo @paul53 last edited by

                                          @paul53 Du bist genial

                                          Das ist der Datenpunkt. Wie ändere ich ihn bitte auf Typ Zahl?:

                                          {
                                            "common": {
                                              "name": "Startuhrzeit 2h",
                                              "desc": "Manuell erzeugt",
                                              "role": "state",
                                              "type": "array",
                                              "read": true,
                                              "write": true
                                            },
                                            "type": "state",
                                            "native": {},
                                            "from": "system.adapter.admin.0",
                                            "user": "system.user.admin",
                                            "ts": 1707581291812,
                                            "_id": "0_userdata.0.Ladescript.Startuhrzeit_2h",
                                            "acl": {
                                              "object": 1636,
                                              "state": 1636,
                                              "owner": "system.user.admin",
                                              "ownerGroup": "system.group.administrator"
                                            }
                                          }
                                          
                                          P 1 Reply Last reply Reply Quote 0
                                          • P
                                            pingo @pingo last edited by pingo

                                            Ich glaube, ich habe es herausgefunden: type "number" statt "array". Fehlermeldung ist weg! Top

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            895
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            20
                                            456
                                            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