<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Array von Struktur erzeugen]]></title><description><![CDATA[<p dir="auto">Hallo, ich habe bis dato im js mit</p>
<pre><code>CreateState 
</code></pre>
<p dir="auto">Standard Typen erzeugt.<br />
Ich würde jetzt gerne ein Array einer Struktur erzeugen.</p>
<p dir="auto">Struktur:</p>
<pre><code>{active,power,controlable,Link}
</code></pre>
<p dir="auto">Array:</p>
<pre><code>Device = [struct1,struct2…..]
</code></pre>
<p dir="auto">Wie bekommt man das hin?</p>
]]></description><link>https://forum.iobroker.net/topic/51501/array-von-struktur-erzeugen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 24 May 2026 23:37:26 GMT</lastBuildDate><atom:link href="https://forum.iobroker.net/topic/51501.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 17 Jan 2022 18:59:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Array von Struktur erzeugen on Wed, 19 Jan 2022 12:56:26 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul53" aria-label="Profile: paul53">@<bdi>paul53</bdi></a> Danke für deine Ausführungen.<br />
Manchmal ist es doch einfacher als geglaubt.</p>
]]></description><link>https://forum.iobroker.net/post/744512</link><guid isPermaLink="true">https://forum.iobroker.net/post/744512</guid><dc:creator><![CDATA[Ben1983]]></dc:creator><pubDate>Wed, 19 Jan 2022 12:56:26 GMT</pubDate></item><item><title><![CDATA[Reply to Array von Struktur erzeugen on Wed, 19 Jan 2022 10:14:12 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ben1983" aria-label="Profile: ben1983">@<bdi>ben1983</bdi></a> sagte: Also wenn ich creatState ans ende setze, dann kann ich ihn doch vorher nicht zuweisen. ???</p>
<p dir="auto">Wenn der Datenpunkt bereits existiert, wird er geschrieben, andernfalls wird er erstellt.</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ben1983" aria-label="Profile: ben1983">@<bdi>ben1983</bdi></a> sagte in <a href="/post/744353">Array von Struktur erzeugen</a>:</p>
<blockquote>
<p dir="auto">Ist es schlimm, wenn ein createSTate ohne deine if abfrage bei jedem Scriptstart aufgerufen wird?<br />
Ich hab nämlich einscript, welches nur createstate Befehle beinhaltet.</p>
</blockquote>
<p dir="auto">Nein, createState() überschreibt in der Form keine existierenden Datenpunkte. Nur wenn dem createState() ein setState() folgt, muss das Skript zweimal gestartet werden, da setState() beim ersten Start noch nicht funktioniert.</p>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ben1983" aria-label="Profile: ben1983">@<bdi>ben1983</bdi></a> sagte in <a href="/post/744353">Array von Struktur erzeugen</a>:</p>
<blockquote>
<p dir="auto">Die Übersicht in den Objekten bekommt man nicht als Array hin?</p>
</blockquote>
<p dir="auto">Ein Array / Objekt wird als JSON in den Datenpunkt geschrieben.</p>
]]></description><link>https://forum.iobroker.net/post/744406</link><guid isPermaLink="true">https://forum.iobroker.net/post/744406</guid><dc:creator><![CDATA[paul53]]></dc:creator><pubDate>Wed, 19 Jan 2022 10:14:12 GMT</pubDate></item><item><title><![CDATA[Reply to Array von Struktur erzeugen on Wed, 19 Jan 2022 08:52:02 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul53" aria-label="Profile: paul53">@<bdi>paul53</bdi></a> OK, aber kann den dann doch trotzdem nicht zuweisen, oder?<br />
Also wenn ich creatState ans ende setze, dann kann ich ihn doch vorher nicht zuweisen. ???</p>
<p dir="auto">Ist es schlimm, wenn ein createSTate ohne deine if abfrage bei jedem Scriptstart aufgerufen wird?<br />
Ich hab nämlich einscript, welches nur createstate Befehle beinhaltet.<br />
Das wird bei jedem iobrokerstart einmal aufgerufen.</p>
<p dir="auto">Habe das auch nur hier so rein kopiert.<br />
Die Werte kommen in Wirklichkeit aus einem anderen Skript.</p>
<p dir="auto">Ps. Die Übersicht in den Objekten bekommt man nicht als Array hin?</p>
]]></description><link>https://forum.iobroker.net/post/744353</link><guid isPermaLink="true">https://forum.iobroker.net/post/744353</guid><dc:creator><![CDATA[Ben1983]]></dc:creator><pubDate>Wed, 19 Jan 2022 08:52:02 GMT</pubDate></item><item><title><![CDATA[Reply to Array von Struktur erzeugen on Tue, 18 Jan 2022 16:31:14 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ben1983" aria-label="Profile: ben1983">@<bdi>ben1983</bdi></a><br />
Habe das Skript kopiert und gestartet. Beim 2. Start wird der Datenpunkt geschrieben (beim 1. Start ist createState() noch nicht fertig).</p>
<p dir="auto"><img src="/assets/uploads/files/1642522056383-js-test.jpg" alt="JS-Test.JPG" class=" img-fluid img-markdown" /></p>
<p dir="auto">Besser createState() am Ende ausführen:</p>
<pre><code>if(existsState(idArray)) setState(idArray, Device, true);
else createState(idArray, Device, {type: 'array', name: 'Device', role: 'list'});
</code></pre>
]]></description><link>https://forum.iobroker.net/post/744036</link><guid isPermaLink="true">https://forum.iobroker.net/post/744036</guid><dc:creator><![CDATA[paul53]]></dc:creator><pubDate>Tue, 18 Jan 2022 16:31:14 GMT</pubDate></item><item><title><![CDATA[Reply to Array von Struktur erzeugen on Tue, 18 Jan 2022 15:37:21 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/paul53" aria-label="Profile: paul53">@<bdi>paul53</bdi></a> Danke.</p>
<p dir="auto">Ich habe es nun so eingefügt:</p>
<pre><code>const idArray = 'javascript.0.Test.Dummy1';
createState(idArray, [], {type: 'array', name: 'Device', role: 'list'});
 
let struct1 = {
   enable: true,
   description: 'Beschreibung',
   value: 100.0
};
 
const arr = [];
arr.push(struct1);

struct1.enable = false;
struct1.value =50.5;

arr.push(struct1);
// usw.
setState(idArray, arr);
</code></pre>
<p dir="auto">Allerdings sieht es dann in den Parametern so aus:</p>
<p dir="auto"><img src="/assets/uploads/files/1642519321977-beb7bc64-cf8f-49f4-a6b2-9e753200b336-image.png" alt="beb7bc64-cf8f-49f4-a6b2-9e753200b336-image.png" class=" img-fluid img-markdown" /></p>
<p dir="auto">Kann man die Struktur im Array nicht auch anzeigen?<br />
Ps. Kann man so auf der Visu damit zugreifen?</p>
<p dir="auto">Edit:<br />
Muss die Structs einzeln erzeugen, sonst nimmt er es nicht. (Sonst steht nachher überall das gleiche drin.<br />
Habe es jetzt so: (Allerdings in den Objekten immer noch das Problem).</p>
<pre><code>const idArray = 'javascript.0.Test.Dummy1';
createState(idArray, [], {type: 'array', name: 'Device', role: 'list'});
 
let Device = [];
let i = 0;

Device[i] = {   enable: true,
                description: 'Beschreibung',
                value: 100.0
            };
 
i = i +1;
Device[i] = {   enable: false,
                description: 'Beschreibung',
                value: 50.5
            };

setState(idArray, Device);
</code></pre>
]]></description><link>https://forum.iobroker.net/post/744013</link><guid isPermaLink="true">https://forum.iobroker.net/post/744013</guid><dc:creator><![CDATA[Ben1983]]></dc:creator><pubDate>Tue, 18 Jan 2022 15:37:21 GMT</pubDate></item><item><title><![CDATA[Reply to Array von Struktur erzeugen on Mon, 17 Jan 2022 19:54:56 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ben1983" aria-label="Profile: ben1983">@<bdi>ben1983</bdi></a></p>
<pre><code>const idArray = 'xyz';
createState(idArray, [], {type: 'array', name: 'Device', role: 'list'});

const sruct1 = {
   enable: true,
   description: 'Beschreibung'
};

const arr = [];
arr.push(struct1);
arr.push(struct2);
// usw.
setState(idArray, arr);
</code></pre>
]]></description><link>https://forum.iobroker.net/post/743610</link><guid isPermaLink="true">https://forum.iobroker.net/post/743610</guid><dc:creator><![CDATA[paul53]]></dc:creator><pubDate>Mon, 17 Jan 2022 19:54:56 GMT</pubDate></item><item><title><![CDATA[Reply to Array von Struktur erzeugen on Mon, 17 Jan 2022 19:10:53 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/ben1983" aria-label="Profile: ben1983">@<bdi>ben1983</bdi></a> oder kann man vielleicht mit createstate nur das Array an sich deklarieren und dann später „einfach“ so zuweisen?</p>
<pre><code>mystruct = {enable,Description};
mystruct.enable = True;
mystruct.Description = „Beschreibung“;
Setstate(idArray,mystruct);
</code></pre>
<p dir="auto">Das wäre wünschenswert.</p>
]]></description><link>https://forum.iobroker.net/post/743597</link><guid isPermaLink="true">https://forum.iobroker.net/post/743597</guid><dc:creator><![CDATA[Ben1983]]></dc:creator><pubDate>Mon, 17 Jan 2022 19:10:53 GMT</pubDate></item></channel></rss>