Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Admin5: Ich kann keine Objekte mehr manuell anlegen

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Admin5: Ich kann keine Objekte mehr manuell anlegen

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @Homoran last edited by

      @homoran sagte: Aber kannst du manuell noch Folder->State -> state anlegen?

      Warum nicht? Mit folder als Ausgangspunkt sollte es gehen.

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

        @paul53 sagte:

        Warum nicht?

        weil ich dachte dass ein state immer nur am "Ende der Kette" sein kann

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

          @homoran sagte: ein state immer nur am "Ende der Kette" sein kann

          ... sein sollte.

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

            @paul53 sagte:

            ... sein sollte.

            OK!
            Das ist neu für mich. Auch bei manueller Anlage?

            Das ist ja, was @klassisch möchte, dass er eine Struktur hat, in der die "Channels" (jetzt "folder") auch Daten enthalten können. Dazu müssten es ja stets sein

            paul53 2 Replies Last reply Reply Quote 0
            • paul53
              paul53 @Homoran last edited by

              @homoran sagte: in der die "Channels" (jetzt "folder") auch Daten enthalten können

              Channels und Folder können keine Daten enthalten, sondern nur Datenpunkte.

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

                @paul53 sagte:

                sondern nur Datenpunkte.

                und die könnte @klassisch weiterhin verschachtelt anlegen.

                Dann ist ja jeder glücklich

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

                  @homoran sagte: Auch bei manueller Anlage?

                  Habe unter Ordner erst einen Datenpunkt "ebene1.ebene2" erstellt und den Namen geändert:

                  DPebene2.JPG

                  und anschließend den Datenpunkt "ebene1":

                  DPebene1.JPG

                  Das sollte aber bitte keiner nachmachen!

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

                    @paul53 DANKE!

                    @paul53 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                    Das sollte aber bitte keiner nachmachen!

                    👍

                    1 Reply Last reply Reply Quote 0
                    • K
                      klassisch Most Active @Homoran last edited by klassisch

                      @homoran sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                      und die könnte @klassisch weiterhin verschachtelt anlegen.

                      Nunja, das hätte ich von Anfang an tun können. Habe ich aber bewußt nicht getan. Denn dann muß man immer eine Stufe weiter runter klicken, um die Zahlen zu sehen, während man so alles auf einen Blick sieht

                      c592b9cc-9bbc-45d9-b56f-75ea40c8237a-grafik.png

                      Und nur wenn man die Statistik sehen möchte muß man tiefer klicken. Also praktisch und übersichtlich.

                      1 Reply Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @paul53 last edited by mickym

                        @paul53 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                        @homoran sagte: Auch bei manueller Anlage?

                        Habe unter Ordner erst einen Datenpunkt "ebene1.ebene2" erstellt und den Namen geändert:

                        DPebene2.JPG

                        ...

                        Das sollte aber bitte keiner nachmachen!

                        Na ja - so gings halt vorher und war auch praktisch, aber ist halt nicht mehr gewünscht. Ich hab es verstanden!

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

                          @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                          aber ist halt nicht mehr gewünscht.

                          das stimmt nicht so

                          nur weil es ging...
                          @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                          so gings halt vorher und war auch praktisch,

                          war es nicht gewünscht und schon gar nicht als korrekt dokumentiert.

                          mickym 1 Reply Last reply Reply Quote 0
                          • mickym
                            mickym Most Active @Homoran last edited by

                            @homoran OK. 🙂 Verstanden!

                            1 Reply Last reply Reply Quote 0
                            • F
                              fastfoot @mickym last edited by fastfoot

                              @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                              Und ja wenn so ein Script von @Dutchman "Nicht existierenden Objekten" den Typ "folder" spendiert ist es ja gut.

                              @Dutchman kann das sicher besser, aber das hier funktioniert auch. Dennoch, beim Rumfummeln am System empfiehlt sich immer ein Backup

                              Vorraussetzung: In den Settings der Javascript-Instanz muss setObject erlaubt sein

                              • Das Setzen des Stammordners erfolgt in Zeile 12
                              • Als Stammordner werden javascript.x und 0_userdata.0 unterstützt, man könnte oder sollte es evtl. noch auf alias.0 erweitern(Zeile 17)

                              /**
                              * Zweck:       Korrigiert übergeordnete Ordnerstrukturen eines Datenpunkts
                              * Datum:      07.08.2021
                              * Autor:       @fastfoot
                              */
                              
                              //              In den Settings der Javascript-Instanz muss setObject erlaubt sein!!!
                              
                              let arr = [],
                                 id = '';
                              
                              const ids = $('0_userdata.0.*');
                              ids.each(idTmp => {
                                 arr=idTmp.split('.');
                                 arr.splice(arr.length-1);
                                 id=arr.join('.');
                                 if(arr[0] === '0_userdata' || arr[0] === 'javascript'){
                                     correctObject(id, arr);
                                 }
                              })
                              
                              function correctObject(id,arr){
                                 if(arr.length === 2) return;
                                 if(!existsObject(id)){
                                     let obj = {};
                                     obj = {
                                         type: 'folder',
                                         common:{
                                             name: arr[arr.length - 1]
                                         }
                                     }
                                     extendObject(id, obj, e => {
                                         if (e) log('Fehler beim Schreiben des Objektes: '+ id + ' ' + e);
                                     })
                                 }
                                 arr.splice(arr.length - 1);
                                 id = arr.join('.');
                                 correctObject(id, arr);
                              }
                              

                              sigi234 mickym paul53 R M 5 Replies Last reply Reply Quote 6
                              • sigi234
                                sigi234 Forum Testing Most Active @fastfoot last edited by sigi234

                                @fastfoot
                                0_userdata.0 hat einwandfrei funktioniert ! 👍

                                javascript.x nicht.

                                So Richtig?

                                Screenshot (4109).png

                                F 1 Reply Last reply Reply Quote 0
                                • cash
                                  cash Most Active @apollon77 last edited by

                                  @apollon77 said in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                  If Du keinen stift hast dann existiert das Objekt nicht ... daher musst du es "initial" anlegen (sorry ... )

                                  Dann gibt es bei mir viele Instanzen die es eigentlich nicht gibt und das sogar sehr bekannte wie die Homematic Instanzen 🙂 Und selbst meine Javascript Instanzen gibt es nicht.

                                  Bildschirmfoto 2021-08-07 um 22.23.36.png

                                  apollon77 1 Reply Last reply Reply Quote 0
                                  • F
                                    fastfoot @sigi234 last edited by fastfoot

                                    @sigi234 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                    So Richtig?

                                    javascript.0Punkt*. Müsste ohne eig. auch gehen, habe aber javascript auch getestet

                                    Edit: Nach dem Test hatte ich erst Zeile 17 eingebaut und dort auf javavascript geprüft. Ist korrigiert

                                    sigi234 1 Reply Last reply Reply Quote 0
                                    • sigi234
                                      sigi234 Forum Testing Most Active @fastfoot last edited by sigi234

                                      @fastfoot sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                      @sigi234 sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                      So Richtig?

                                      javascript.0Punkt*. Müsste ohne eig. auch gehen, habe aber javascript auch getestet

                                      Leider Nein

                                      Aha Zeile 17

                                      Geht jetzt 😀

                                      1 Reply Last reply Reply Quote 0
                                      • mickym
                                        mickym Most Active @fastfoot last edited by mickym

                                        @fastfoot Also auch von mir herzlichen Dank.

                                        Ich habe es neben 0_userdata, über alias, javascript und mqtt Instanzen gejagt. Und das Script hat nun überall Folder Objekte daraus erstellt. 😉 - Das war eine Superidee, das so zu implementieren.

                                        Danke schön!!!!!!!!!!! 👍 👍 👍 👍 👍

                                        Sowas in das Update gebaut - und .... 😉

                                        sigi234 1 Reply Last reply Reply Quote 0
                                        • sigi234
                                          sigi234 Forum Testing Most Active @mickym last edited by

                                          @mickym sagte in Admin5: Ich kann keine Objekte mehr manuell anlegen:

                                          Sowas in das Update gebaut - und ....

                                          Ja, und das mit nur 39 Zeilen und in 1 Sekunde fertig. Wahnsinn.

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

                                            @fastfoot sagte: das hier funktioniert auch.

                                            Etwas abgewandelt für eine Struktur folder.device.channel.state bzw. nur der hintere Teil, wenn die Struktur kürzer ist:

                                            // In den Settings der Javascript-Instanz muss setObject erlaubt sein!!!
                                            const ids = $('javascript.1.*'); // Anpassen!!
                                            
                                            var arr = [];
                                            
                                            function correctObject(id, arr, level){
                                               if(arr.length === 2) return;
                                               let type = 'folder';
                                               if(level == 1) type = 'device';
                                               else if(level == 0) type = 'channel';
                                               if(!existsObject(id)) {
                                                   const obj = {
                                                       type: type,
                                                       common:{
                                                           name: arr[arr.length - 1]
                                                       },
                                                       native: {}
                                                   }
                                                   setObject(id, obj, e => {
                                                       if (e) log('Fehler beim Schreiben des Objektes: '+ id + ' ' + e);
                                                   })
                                               }
                                               arr.pop();
                                               id = arr.join('.');
                                               level++;
                                               correctObject(id, arr, level);
                                            }
                                            
                                            ids.each(id => {
                                               arr = id.split('.');
                                               arr.pop();
                                               id = arr.join('.');
                                               if(arr[0] === '0_userdata' || arr[0] === 'javascript' || arr[0] === 'alias') {
                                                   correctObject(id, arr, 0);
                                               }
                                            });
                                            
                                            F 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            476
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            36
                                            466
                                            60379
                                            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