Speichern globaler Variablen zwischen JMP-SitzungenWie kann ich eine Variable definieren, die in JMP aufgezeichnet wird, damit ich beim nächsten Öffnen immer noch Zugriff darauf habe?
Globale Variablen sind beispielsweise wie folgt definiert:
::my_global_variable = 42;
Betreff: Globale Variable zwischen JMP-Sitzungen speichernWenn sich die Werte geändert haben und erneut gespeichert werden müssen, sollten Sie die Verwendung eines Add-Ins in Betracht ziehen. Add-Ins können über ein Skript verfügen, das ausgeführt wird, wenn JMP gestartet wird, und über ein Skript, das ausgeführt wird, wenn JMP beendet wird. Dazu muss das Add-in keinen Eintrag im Menü haben.
Erwägen Sie auch, die Werte in einer Datentabelle mit einer Spalte für jeden Wert aufzubewahren. Sie benötigen wahrscheinlich nur eine einzelne Zeile, aber eine zweite Zeile könnte ein alternativer Wertesatz sein. Die Datentabelle bietet auch eine Speicheraufforderung, sodass das Add-In möglicherweise nicht benötigt wird.
Betreff: Globale Variable zwischen JMP-Sitzungen speichernIch werde ergänzen @Mark_Bailey Antwort.
JMP ermöglicht die Ausführung eines Skripts beim Start. Suchen Sie im Skripthandbuch für die von Ihnen verwendete JMP-Version nach dem Namen und dem Speicherort, an dem Sie die Datei ablegen müssen.
Hier ist die Dokumentation für JMP 15
Führen Sie beim Start ein Skript aus
Sie können bei jedem Start von JMP dasselbe Skript ausführen. Beispielsweise könnten Sie Folgendes einschließen
Definitionen einiger Dienstprogrammfunktionen oder eines Namespaces, die überall verfügbar sein sollen
JMP-Sitzung. Sie können auch einige Einstellungen in einem Startskript festlegen, um die Einstellungen beizubehalten
konsistent. Die Einstellungen bleiben über alle JMP-Sitzungen hinweg bestehen, Sie können einige jedoch explizit zurücksetzen
Einstellungen für den Fall, dass sie irgendwann in der vorherigen Sitzung geändert wurden.
Benennen Sie das Skript jmpStart.jsl und platzieren Sie es je nach Bedarf in einem der folgenden Ordner
Ihr Betriebssystem. Wenn JMP gestartet wird, sucht JMP in diesen Ordnern nach dem Skript jmpStart.jsl
in der Reihenfolge, in der sie hier aufgeführt sind. Der erste gefundene Eintrag wird ausgeführt und die Suche gestartet
stoppt sofort.
Hinweis: Einige Pfadnamen in diesem Abschnitt beziehen sich auf den Ordner „JMP“. Unter Windows ist in JMP Pro die
Der Ordner „JMP“ heißt „JMPPro“.
Unter Windows:
1. C:/Users//AppData/Roaming/SAS/JMP/15
2. C:/Users//AppData/Roaming/SAS/JMP
Auf macOS:
1. /Benutzer//Library/Application Support/JMP/15
2. /Benutzer//Library/Application Support/JMP
Das Skript jmpStart.jsl wird nur für einen bestimmten Benutzer auf einem Computer ausgeführt. Sie können ein Skript hinzufügen
mit dem Namen jmpStartAdmin.jsl an einem der folgenden Orte, je nach Ihrem Betrieb
System. Dieses Skript wird für jeden Benutzer auf einem Computer ausgeführt. JMP führt zuerst jmpStartAdmin.jsl aus, wenn
gefunden. Dann führt JMP jmpStart.jsl aus, wenn es gefunden wird.
Unter Windows:
1. C:/ProgramData/SAS/JMP/15
2. C:/ProgramData/SAS/JMP
Auf macOS:
1. /Library/Application Support/JMP/15
2. /Bibliothek/Anwendungsunterstützung/JMP
Hinweis: Für JMPPro ändern sich die Verzeichnispfadverweise auf JMP in JMPPro.
In diese Datei könnten Sie eine einfache Zeile einfügen:
Try( Include( "Saved Assignment.jsl" ) );
Bei jedem Start von JMP suchte es nach der Datei und führte sie aus, wenn die Datei vorhanden war.
Betreff: Globale Variable zwischen JMP-Sitzungen speichernProbieren Sie diesen Code aus:
Names Default to Here( 1 );
save assignment = Char( ::my_global_variable = 42; );
Save Text File( "Saved Assignment.jsl", save assignment );
// either immediately execute
Include( "Saved Assignment.jsl" );
// or save character string before executing or furthe processing
save assignment = Load Text File( "Saved Assignment.jsl" );
Parse( save assignment );
(Ich habe es nicht getestet.)