Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Datenpunkt zu anderer Instanz verschieben möglich?

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    16
    1
    320

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.8k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

Datenpunkt zu anderer Instanz verschieben möglich?

Scheduled Pinned Locked Moved Skripten / Logik
33 Posts 9 Posters 4.6k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Offline
    P Offline
    pandel
    wrote on last edited by
    #16

    vordiestirnklopp das ist so simpel, dass ich danach nie gesucht hätte. :shock: :oops: Besten Dank!

    Und er legt die dann automatisch unterhalb der Instanz des javascript-Adapters an, unterhalb der sich das Skript befindet?

    1 Reply Last reply
    0
    • dslraserD Offline
      dslraserD Offline
      dslraser
      Forum Testing Most Active
      wrote on last edited by
      #17

      @pandel:

      vordiestirnklopp das ist so simpel, dass ich danach nie gesucht hätte. :shock: :oops: Besten Dank!

      Und er legt die dann automatisch unterhalb der Instanz des javascript-Adapters an, unterhalb der sich das Skript befindet? ` im Feld Name legst Du den Speicherort fest…

      1 Reply Last reply
      0
      • dslraserD Offline
        dslraserD Offline
        dslraser
        Forum Testing Most Active
        wrote on last edited by
        #18

        Importiere mal das Blockly und lasse es wie es ist. Dann probiere es einfach aus und schau Dir den erstellten Datenpunkt an (kannst ja anschließend den Datenpunkt wieder löschen), aber dann siehst Du wie es funktioniert.

        1 Reply Last reply
        0
        • P Offline
          P Offline
          pandel
          wrote on last edited by
          #19

          Ihr habt recht :oops: - werde ich heute Abend mal ausprobieren!

          1 Reply Last reply
          0
          • padrinoP Online
            padrinoP Online
            padrino
            Most Active
            wrote on last edited by
            #20

            @dslraser:

            Importiere mal das Blockly und lasse es wie es ist. Dann probiere es einfach aus und schau Dir den erstellten Datenpunkt an (kannst ja anschließend den Datenpunkt wieder löschen), aber dann siehst Du wie es funktioniert. `

            Ah ja, die Magie steckt im "hier ist JS drin" ;)

            Kann man denn Datenpunkte auch eine Ebene höher anlegen?

            Das Sctipt baut sich ja seine Struktur in javascript.0.

            Habe meinenen eigenen "Baum" auf der gleichen Ebene, würde gerne dort (zustaende.0) anlegen.

            Sehe ich code leider nirgends den Hinweis auf javascript.0, denke daher das anlegen geschieht "relativ"?

            CU,

            padrino

            1 Reply Last reply
            0
            • dslraserD Offline
              dslraserD Offline
              dslraser
              Forum Testing Most Active
              wrote on last edited by
              #21

              @padrino:

              @dslraser:

              Importiere mal das Blockly und lasse es wie es ist. Dann probiere es einfach aus und schau Dir den erstellten Datenpunkt an (kannst ja anschließend den Datenpunkt wieder löschen), aber dann siehst Du wie es funktioniert. `

              Ah ja, die Magie steckt im "hier ist JS drin" ;)

              Kann man denn Datenpunkte auch eine Ebene höher anlegen?

              Das Sctipt baut sich ja seine Struktur in javascript.0.

              Habe meinenen eigenen "Baum" auf der gleichen Ebene, würde gerne dort (zustaende.0) anlegen.

              Sehe ich code leider nirgends den Hinweis auf javascript.0, denke daher das anlegen geschieht "relativ"?

              CU,

              padrino `

              Ich verstehe nicht so ganz was Du meinst ? Wie soll denn der komplette Pfad aussehen ? Die Datenpunkte sind dann unter javascript.0

              Ich habe bei mir so angefangen….

              Im Blockly unter Name steht der Pfad. Die Punkte dazwischen bestimmen die Struktur.
              3822_bildschirmfoto_2019-01-09_um_22.26.55.png
              3822_bildschirmfoto_2019-01-09_um_22.27.35.png

              1 Reply Last reply
              0
              • padrinoP Online
                padrinoP Online
                padrino
                Most Active
                wrote on last edited by
                #22

                Ich würde gerne da rein… ;)

                8705_zustand.png

                1 Reply Last reply
                0
                • dslraserD Offline
                  dslraserD Offline
                  dslraser
                  Forum Testing Most Active
                  wrote on last edited by
                  #23

                  hm, sorry….da weiß ich nicht wie und ob das geht

                  1 Reply Last reply
                  0
                  • paul53P Offline
                    paul53P Offline
                    paul53
                    wrote on last edited by paul53
                    #24

                    @padrino:

                    Ich würde gerne da rein…

                    In Javascript funktiert es so:

                    const id = 'zustaende.0.geraet1.kanal1.dp_13';
                    
                    const obj = {
                      "type": "state",
                      "common": {
                        "name": "Datenpunkt 1.3",
                        "role": "switch",
                        "type": "boolean",
                        "read": true,
                        "write": true,
                        "desc": "per Javascript erzeugt",
                        "def": false
                      },
                    };
                    
                    setObject(id, obj, function() {
                        setState(id, obj.common.def, true); // Initialisierung
                    });
                    

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    1 Reply Last reply
                    0
                    • dslraserD Offline
                      dslraserD Offline
                      dslraser
                      Forum Testing Most Active
                      wrote on last edited by
                      #25

                      @paul53:

                      @padrino:

                      Ich würde gerne da rein… `
                      In Javascript funktiert es so:

                      const id = 'zustaende.0.geraet1.kanal1.dp_13';
                      
                      const obj = {
                        "type": "state",
                        "common": {
                          "name": "Datenpunkt 1.3",
                          "role": "switch",
                          "type": "boolean",
                          "read": true,
                          "write": true,
                          "desc": "per Javascript erzeugt",
                          "def": false
                        },
                      };
                      
                      setObject(id, obj, function() {
                          setState(id, obj.common.def, true); // Initialisierung
                      });
                      
                      ```` `  
                      

                      Hallo paul53,

                      verstehe ich das richtig das dann der Datenpunkt schon vorhanden sein muss und dann dorthin verschoben wird, oder wird der mit dem Script angelegt ?

                      1 Reply Last reply
                      0
                      • paul53P Offline
                        paul53P Offline
                        paul53
                        wrote on last edited by paul53
                        #26

                        @dslraser:

                        oder wird der mit dem Script angelegt ?

                        Ja, wenn nicht vorhanden.

                        Man kann auch Objekte per Skript kopieren (Dst wird erzeugt, wenn nicht vorhanden).

                        const idSrc = "Messwerte.0.Solaranlage.Momentanwerte.Leistung_DC_aktuell";
                        const idDst = "datenpunkte.0.Messwerte.Solaranlage.Momentanwerte.Leistung";
                        
                        function copyObject() {
                            var obj = getObject(idSrc);
                            setObject(idDst, obj, function() {
                                if(obj.type === 'state') {
                                    var init = null;
                                    if(obj.common.def == undefined) {
                                        if(obj.common.type === 'number') init = 0;
                                        if(obj.common.type === 'boolean') init = false;
                                        if(obj.common.type === 'string') init = '';
                                    } else init = obj.common.def;
                                    setState(idDst, init, true); 
                                }
                            });
                        }
                        
                        copyObject();
                        

                        Habe ich gerade getestet.

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        1 Reply Last reply
                        0
                        • dslraserD Offline
                          dslraserD Offline
                          dslraser
                          Forum Testing Most Active
                          wrote on last edited by
                          #27

                          @paul53:

                          @padrino:

                          Ich würde gerne da rein… `
                          In Javascript funktiert es so:

                          const id = 'zustaende.0.geraet1.kanal1.dp_13';
                          
                          const obj = {
                            "type": "state",
                            "common": {
                              "name": "Datenpunkt 1.3",
                              "role": "switch",
                              "type": "boolean",
                              "read": true,
                              "write": true,
                              "desc": "per Javascript erzeugt",
                              "def": false
                            },
                          };
                          
                          setObject(id, obj, function() {
                              setState(id, obj.common.def, true); // Initialisierung
                          });
                          
                          ```` `  
                          

                          Hallo Paul53,

                          erstmal danke für Deine Beispiele.

                          Ich habe es heute mal probiert und es funktioniert prima. Wie und ob man das in Blockly verwursten könnte, da fehlt mir leider die Idee. Es wäre schön wenn man immer in einer Form bleiben könnte, dann kann man alles in einem Blockly oder eben in einem Javascript aufbauen.

                          Jetzt noch eine Frage zum Script.

                          Die erstellten Datenpunkte lassen sich nicht in den iot Adapter einfügen. Das geht nur wenn ich das hier

                          "desc": "per Javascript erzeugt",

                          auskommentiere oder lösche. Wofür ist der Punkt wichtig ?

                          1 Reply Last reply
                          0
                          • paul53P Offline
                            paul53P Offline
                            paul53
                            wrote on last edited by paul53
                            #28

                            @dslraser:

                            "desc": "per Javascript erzeugt",

                            auskommentiere oder lösche. Wofür ist der Punkt wichtig ?

                            common.desc (Beschreibung) ist nicht wichtig.

                            @dslraser:

                            Wie und ob man das in Blockly verwursten könnte,

                            Es hat einen berechtigten Grund, dass setObject() nicht in Blockly verfügbar ist, denn damit kann man schnell viel kaputt machen.

                            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                            1 Reply Last reply
                            0
                            • padrinoP Online
                              padrinoP Online
                              padrino
                              Most Active
                              wrote on last edited by
                              #29

                              @dslraser

                              Kannst Du mir sagen, wieso man in Deinem Blockly den Wert für type nicht (z.B. auf number) ändern kann?

                              Das Skript endet dann mit einem "wrong type error" und legt nichts an.

                              CU,

                              padrino

                              1 Reply Last reply
                              0
                              • iomountainI Offline
                                iomountainI Offline
                                iomountain
                                wrote on last edited by
                                #30

                                @pandel:

                                Bei den zugehörigen Blocklies ist das ja kein Problem. Skripte exportieren, Suchen&Ersetzen, Skripte wieder importieren fertig. Habe ich schon für anderes gemacht und geht. Nur bei den Datenpunkten bin ich mir eben nicht sicher… `

                                Hallo Holger

                                unter Objekte deinen obersten Datenpunkt/Knoten auswählen, als JSON Datei downloaden, im Texteditor öffnen und dann wie du schon gesagt hast: Suchen&Ersetzen, JSON Datei wieder importieren fertig

                                Grüße

                                1 Reply Last reply
                                0
                                • dslraserD Offline
                                  dslraserD Offline
                                  dslraser
                                  Forum Testing Most Active
                                  wrote on last edited by
                                  #31

                                  @padrino:

                                  @dslraser

                                  Kannst Du mir sagen, wieso man in Deinem Blockly den Wert für type nicht (z.B. auf number) ändern kann?

                                  Das Skript endet dann mit einem "wrong type error" und legt nichts an.

                                  CU,

                                  padrino `

                                  Dann lösche den Datenpunkt und nehme das hier oder ändere es Dir so ab wie Du es brauchst. Das hier geht z.B. für Number

                                  ! ````
                                  <xml xmlns="http://www.w3.org/1999/xhtml"><block type="procedures_defcustomnoreturn" id="ORmhM@AO~Vbt~j|cDEnt" x="-188" y="63"><mutation statements="false"><arg name="ID"></arg>
                                  <arg name="Name"></arg>
                                  <arg name="Einheit"></arg>
                                  <arg name="Min"></arg>
                                  <arg name="Max"></arg></mutation>
                                  <field name="NAME">newNumberDP</field>
                                  <field name="SCRIPT">Y3JlYXRlU3RhdGUoSUQsIHsKICAgIHR5cGU6ICdudW1iZXInLAogICAgbmFtZTogTmFtZSwKICAgIHVuaXQ6IEVpbmhlaXQsCiAgICBtaW46IE1pbiwKICAgIG1heDogTWF4Cn0pOw==</field>
                                  <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment></block>
                                  <block type="procedures_callcustomnoreturn" id="id:rx-b:Kgpji.O_Wp?*" x="-187" y="137"><mutation name="newNumberDP"><arg name="ID"></arg>
                                  <arg name="Name"></arg>
                                  <arg name="Einheit"></arg>
                                  <arg name="Min"></arg>
                                  <arg name="Max"></arg></mutation>
                                  <value name="ARG0"><block type="text" id="+t4:h)4W#f_wYxYh9+6Q"><field name="TEXT">Eigene_Datenpunkte.OrdnerXX.DatenpunktYYZ</field></block></value>
                                  <value name="ARG1"><block type="text" id="f[rkb0.G[*H9[vT:#n!/"><field name="TEXT">Test2</field></block></value>
                                  <value name="ARG2"><block type="text" id="Cx3/BP4N],HF;V[o,btx"><field name="TEXT">°C</field></block></value>
                                  <value name="ARG3"><block type="text" id="]/9o}32pEVp@:I+pgfCE"><field name="TEXT">-100</field></block></value>
                                  <value name="ARG4"><block type="text" id="l%Zg[G8@hkN{5/CH{Sfm"><field name="TEXT">100</field></block></value></block></xml>

                                  
                                  Das ist der Inhalt vom Blockly:
                                   ![3822_bildschirmfoto_2019-02-02_um_17.47.51.png](/assets/uploads/files/3822_bildschirmfoto_2019-02-02_um_17.47.51.png) 
                                   ![3822_bildschirmfoto_2019-02-02_um_17.48.02.png](/assets/uploads/files/3822_bildschirmfoto_2019-02-02_um_17.48.02.png) 
                                   ![3822_bildschirmfoto_2019-02-02_um_17.50.57.png](/assets/uploads/files/3822_bildschirmfoto_2019-02-02_um_17.50.57.png) 
                                   ![3822_bildschirmfoto_2019-02-02_um_17.51.20.png](/assets/uploads/files/3822_bildschirmfoto_2019-02-02_um_17.51.20.png) 
                                  1 Reply Last reply
                                  0
                                  • P Offline
                                    P Offline
                                    pandel
                                    wrote on last edited by
                                    #32

                                    @iomountain:

                                    @pandel:

                                    Bei den zugehörigen Blocklies ist das ja kein Problem. Skripte exportieren, Suchen&Ersetzen, Skripte wieder importieren fertig. Habe ich schon für anderes gemacht und geht. Nur bei den Datenpunkten bin ich mir eben nicht sicher… `

                                    Hallo Holger

                                    unter Objekte deinen obersten Datenpunkt/Knoten auswählen, als JSON Datei downloaden, im Texteditor öffnen und dann wie du schon gesagt hast: Suchen&Ersetzen, JSON Datei wieder importieren fertig

                                    Grüße `

                                    Danke! Dann werde ich mich das beim nächsten Mal mal trauen :mrgreen: ;)

                                    1 Reply Last reply
                                    0
                                    • C Offline
                                      C Offline
                                      cadmando
                                      wrote on last edited by
                                      #33

                                      Ich häng mich hier mal dran, da ich das ausprobieren wollte bzw. habe.

                                      Dabei ist mir aufgefallen das die Werte für "ts", "object" und "state" übernommen werden.

                                      D.H. bei mir habe ich jetzt mehrere Objekte bei denen diese Werte gleich sind.

                                      Macht das nichts? Ist das so okay, oder fällt mir das irgendwann auf die Füße?

                                      Danke und Gruß

                                      Dietmar

                                      1 Reply Last reply
                                      0
                                      Reply
                                      • Reply as topic
                                      Log in to reply
                                      • Oldest to Newest
                                      • Newest to Oldest
                                      • Most Votes


                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      433

                                      Online

                                      32.7k

                                      Users

                                      82.5k

                                      Topics

                                      1.3m

                                      Posts
                                      Community
                                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                      ioBroker Community 2014-2025
                                      logo
                                      • Login

                                      • Don't have an account? Register

                                      • Login or register to search.
                                      • First post
                                        Last post
                                      0
                                      • Home
                                      • Recent
                                      • Tags
                                      • Unread 0
                                      • Categories
                                      • Unreplied
                                      • Popular
                                      • GitHub
                                      • Docu
                                      • Hilfe