Jump to content

Recommended Posts

Posted (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 by gmd
Posted

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.

Posted
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

 

Posted

Hallo Goetz,
kann das bestatetigen .. print  not working in main script .. 
Das kommt jetzt auf die wunschliste :) 
gruss
Gmd

 

Posted (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 by gmd
Posted

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

Posted

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

Posted

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

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...