Jump to content

Empfohlene Beiträge

Geschrieben (bearbeitet)

[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

Bearbeitet von gmd
Geschrieben

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.

Geschrieben
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

 

Geschrieben

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

 

Geschrieben (bearbeitet)

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

Bearbeitet von gmd
Geschrieben

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

Geschrieben

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

Geschrieben

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

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto besitzen, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen.

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...