Ich benutze häufig zum Setzen von Tabellen-Variablen die Syntax
set('Variable.Name',Wert) was oft geht, aber manchmal auch zu ungewünschten Ergebnissen führt.
Nachtrag:
Code: Alles auswählen
VAR.soll2_text:set 'Test'
set ('VAR.soll1_text','n/a')
Die erste Zeile geht nicht,[zitat]ERROR: [string "-- 01.01.2013 13:42:01..."]:46: attempt to index global 'VAR' (a nil value)[/zitat] aber die Zweite
Kann mir da jemand den Unterschied erklären?
Code: Alles auswählen
testwert = use 'LCN.output.0.120.1'
function test(x)
print ('Eingang :'..testwert.value)
if testwert.value == 100 then
-- set ('testwert',0)
testwert:set ('0')
else
-- set ('testwert',100)
testwert:set ('100')
end
print ('Ende: '..testwert.value)
end
Die auskommentierten Zeilen funktionieren z.B. nicht, obwol ich z.B. mit set ('VAR.soll1_text', display_regulator(t_eg_soll.value)) die variable im Display anzeigen lassen kann.
Zusätzlich verstehe ich nicht, wieso der 2. Print Wert (Ende) den gleichen Wert anzeigt wie der Eingangswert war. Meine Lampe wird geschaltet und beim nächsten Mal habe ich den richtigen Eingangswert.
Kann mir jemand diese Feinheiten erklären?
Gruß
Florian