Warum ::labelslist ?Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
labelsList = {"F" = "A", "M" = "B"}; //here namespace
::labelsList = {"F" = "①", "M" = "②"}; // global variable
f = function ({},
{default local},
labelsList = {"F" = "X", "M" = "Y"} ; // local variable
dt:sex << Set Property( "Value Labels", labelsList ) // which variable will JMP pick?
);
f
JMP 19.1: ①,②
JMP 18.2.2 & JMP 20EA: X,Y
Umgehungslösungen:
- use dt:sex <
- use Eval (Eval Expr( ... Expr (labelslist) ))
Automatisierung und Skripterstellung
Betreff: Warum ::labelslist?Weitaus schwieriger zu verstehen war die ursprüngliche Fehlermeldung:

delete symbols (::labelsList);
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
f = function ({},
{default local},
labelsList = {"F" = "X", "M" = "Y"} ;
dt:sex << Set Property( "Value Labels", labelsList )
);
f
Betreff: Warum ::labelslist?„Unbekannt“ bedeutet, dass JMP einen unerwarteten Fehler festgestellt hat und keine genauere Erklärung dafür liefert. Melden Sie den Fehler und beschreiben Sie, wie sich das Programm Ihrer Meinung nach verhalten sollte. Ein Entwickler erhält dann die Möglichkeit, das Problem zu beheben, entweder indem er eine sinnvolle Lösung implementiert oder die Fehlermeldung verbessert.
Betreff: Warum ::labelslist?JMP19 führt die Auswertung möglicherweise in der Datentabelle durch, weshalb ein globaler Wert verwendet wird. Man kann hinterfragen, ob diese Auswertung überhaupt notwendig ist.
Die Spalte speichert die Spalteneigenschaft mit den angegebenen Werten, ohne die übergebenen Argumente auszuwerten oder zu validieren. Um Spalteneigenschaften mit Variablen mithilfe von JSL-Code hinzuzufügen, muss das Skript alle Variablen in ihre tatsächlichen Werte konvertieren. Skripting-Leitfaden > Datentabellen > Mit Spalten arbeiten > Spalteneigenschaften festlegen oder abrufen.
Sie können JMP auch mit JMP19 zum Absturz bringen, wenn Sie Ihre Variable in {} einschließen (JMP18 stürzt nicht ab und Sie erhalten eine Fehlermeldung wegen eines Zuweisungsversuchs ).