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] mehrere Datenpunkte mit Js erstellen

    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] mehrere Datenpunkte mit Js erstellen

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

      Hallo,
      für meine Vis möchte ich mehrere Datenpunkte für die FarbBindings erstellen...
      Meine Datenpunkte im allgemeinen erstelle ich nur noch über Scripte oder Blocklies, um im Falle eines Falles das System schnell wieder herstellen zu können.
      Nun bin ich aber auch von Natur aus faul.
      Mein Plan war:

      var objectInstanz = '0_userdata.0.';
      var objectName = 'Vis.Test.';
      var objects1 = 'Ausprobieren'
      var objects2 = 'Rumspielen'
      var objects3 = 'Firlefanz'
      createState(objectInstanz + objectName + objects? + '_Button', 'unbenutzt', {type: 'string',name: objects? + '_Button',read: true,write: true,role: 'string',desc:"von Script erstellt"});
      createState(objectInstanz + objectName + objects? + '_Rand', 'unbenutzt', {type: 'string',name: objects? + '_Rand',read: true,write: true,role: 'string',desc:"von Script erstellt"});
      createState(objectInstanz + objectName + objects? + '_Text', 'unbenutzt', {type: 'string',name: objects? + '_Text',read: true,write: true,role: 'string',desc:"von Script erstellt"});
      
      

      Statt dem Fragezeichen bräuchte ich halte einen anderen Platzhalter, der alle objects von 1-3 durchläuft?
      Danke!

      1 Reply Last reply Reply Quote 0
      • bahnuhr
        bahnuhr Forum Testing Most Active last edited by bahnuhr

        @tcfigge

        mach es so:

        var Zimmer = ["Arbeitszimmer","Bad_EG","Bad_OG","Buero","Fitnessraum","Hobbyraum","Sauna","Schlafzimmer","Wohnzimmer"];
        Zimmer.forEach(count_anlegen);
        function count_anlegen(item) {
            createState('javascript.0.System.Countdown.Heizung_Boost.'+item+'.countTrigger', false, {type: 'boolean',name: 'Heizung_Boost_'+item+' countTrigger',read: true,write: true,role: 'per Script'});
            createState('javascript.0.System.Countdown.Heizung_Boost.'+item+'.countdown', 0, {type: 'number',name: 'Heizung_Boost_'+item+' countdown',min: 0,max: 300,unit: 'Sekunden',read: true,write: true,role: 'per Script'});
        }
        

        oder so:

        for (z = 0; z <= 9; z++) {
            createState('javascript.0.System.Code.Taste_'+z, false, {type: 'boolean', name: 'Code_Taste_'+z, read: true, write: true, role: 'per Script'});
        }
        

        je nachdem wie die Ausgangslage ist.

        T 1 Reply Last reply Reply Quote 2
        • T
          tcfigge @bahnuhr last edited by

          @bahnuhr
          Danke!!!
          Variante 1 läuft super!

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

          Support us

          ioBroker
          Community Adapters
          Donate

          588
          Online

          31.8k
          Users

          80.0k
          Topics

          1.3m
          Posts

          2
          3
          233
          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