gmd Posted March 15 Posted March 15 (edited) [6:43:29 PM] Ereignisprotokollierung gestartet [6:43:29 PM] Die Ereignisverarbeitung ist aufgrund von Skriptfehlern deaktiviert: Attempt to call a nil value (global 'print') das einzige Lua kommando print ("Start Script") eine komplett neue Anlage .. hat angefangen mit der anlage an der ich bause mit viel script .. print wird nicht erkannt Gruss Gmd Werde mal neu starten .. Auch nach komplettem neustart .. gleiches problem .. neue anlage, ein print kommando bringt den fehler Korrupte installation ? Werde mit 8.5 probieren Weiterer Edit: 8.5 gleiches problem .. jetz bin ich etwas flappergusted. Weiterer Edit: 8.0 bringt keine fehlermeldung aber der string erscheint nicht in der EV protokollierung Edited March 15 by gmd
Goetz Posted March 15 Posted March 15 Hallo Gmd, Neo hatte mir vor einer Weile mal geschrieben, dass die Funktion print() bei Abarbeitung des Hauptskripts leider noch nicht zur Verfügung steht. Meine Vermutung ist, dass es durch ein besonderes Konstrukt ersetzt wird, weil dieses print() ins Ereignisprotokoll schreiben soll.
gmd Posted March 15 Author Posted March 15 5 minutes ago, Goetz said: Hallo Gmd, Neo hatte mir vor einer Weile mal geschrieben, dass die Funktion print() bei Abarbeitung des Hauptskripts leider noch nicht zur Verfügung steht. Meine Vermutung ist, dass es durch ein besonderes Konstrukt ersetzt wird, weil dieses print() ins Ereignisprotokoll schreiben soll. Ok, danke fuer den tip .. print hat funktioniert in event response .. Bin dabei printless zu arbeiten .. im hauptscript. Gruss Gmd
gmd Posted March 15 Author Posted March 15 Hallo Goetz, kann das bestatetigen .. print not working in main script .. Das kommt jetzt auf die wunschliste gruss Gmd
gmd Posted March 15 Author Posted March 15 (edited) Just for info, wem das hilft function debugMessage(msg) if Modul and Modul.variables then Modul.variables["DebugOutput"] = msg -- wird in der eventliste angezeigt end end Modul ist das ereignismodul an dem ich gerade arbeite, kann aber auch jedes andere sein hier ein beispiel: local Modul = layout:getEventsByName("RoLa" )[1] -- das Ereignismodul unter dem alles gespeichert wird Edit: noch ein anwendungsbeispiel: Der nachfolgende aufruf debugMessage(segmentTable .. " - adding segment: " .. KontaktListe[i] .. " -> " .. KontaktListe[i + 1]) erzeugt [9:14:47 PM] Modul-Variable wird gesetzt -> RoLa, "DebugOutput", "RouteTable_4 - adding segment: RolaKEinWarte3 -> RoLaKEinAuswahl" [9:14:47 PM] Modul-Variable wird gesetzt -> RoLa, "DebugOutput", "RouteTable_4 - adding segment: RolaKZuf1 -> RolaKEinWarte4" [9:14:47 PM] Modul-Variable wird gesetzt -> RoLa, "DebugOutput", "RouteTable_4 - adding segment: RolaKEinWarte4 -> RoLaKEinAuswahl" [9:14:47 PM] Modul-Variable wird gesetzt -> RoLa, "DebugOutput", "RouteTable_4 - adding segment: RolaKZuf1 -> RolaKEinWarte5" [9:14:47 PM] Modul-Variable wird gesetzt -> RoLa, "DebugOutput", "RouteTable_4 - adding segment: RolaKEinWarte5 -> RoLaKEinAuswahl" [9:14:47 PM] Modul-Variable wird gesetzt -> RoLa, "RouteTables", {5 Elemente} [9:14:47 PM] Modul-Variable wird gesetzt -> RoLa, "DebugOutput", "RouteTable_5 - adding segment: RoLaKEinAuswahl -> RolaKEinSp2" [9:14:47 PM] Modul-Variable wird gesetzt -> RoLa, "DebugOutput", "RouteTable_5 - adding segment: RoLaKEinAuswahl -> RolaKEinSp1" usw. Gruss Gmd Edited March 15 by gmd
Neo Posted March 15 Posted March 15 Hallo gmd, wie korrekt erkannt, stellt das Studio zur Kompilierzeit ein print noch nicht zur Verfügung (Haupt-Skripte). Das ist kein technisches Problem, das ist einfach noch ein offenes ToDo. Viele Grüße, Neo
EASY Posted March 15 Posted March 15 Hallo, vor 4 Stunden schrieb Neo: wie korrekt erkannt, stellt das Studio zur Kompilierzeit ein print noch nicht zur Verfügung (Haupt-Skripte). Das ist kein technisches Problem, das ist einfach noch ein offenes ToDo. ... ist das auch der Grund warum es mir nicht gelingen mag eine "print" Kommando über die JSON Schnittstelle zu senden? {"jsonrpc":"2.0","method":"layout.invokeScript","params":"print('Hallo Welt')","id":2} ... zeigt (bei mir) im Ereignisprotokoll nichts an. Gruß EASY
Neo Posted March 17 Posted March 17 Hallo EASY, nein, mit der Steuerschnittstelle hat das nichts zu tun, dort kannst du wie auch bei normalen EV-Ereignissen mit print arbeiten (dein Aufruf funktioniert bei mir). Viele Grüße, Neo
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now