在 JMP 会话之间保存全局变量如何定义 JMP 中记录的变量,以便下次打开它时仍然可以访问它?
例如,全局变量定义为:
::my_global_variable = 42;
回复:在 JMP 会话之间保存全局变量如果值发生更改并需要重新保存,请考虑使用加载项。 插件可以有一个在 JMP 启动时运行的脚本和一个在 JMP 停止时运行的脚本。 加载项不需要在菜单中包含某个项目即可执行此操作。
还可以考虑将值保留在数据表中,每个值有一列。 您可能只需要一行,但第二行可能是一组备用值。 数据表还将提供保存提示,因此可能不需要该加载项。
回复:在 JMP 会话之间保存全局变量我将添加到@马克贝利回复。
JMP 允许在启动时运行脚本。 在脚本编写指南中查看您所使用的 JMP 版本,了解需要放置文件的名称和位置。
这是 JMP 15 的文档
在启动时运行脚本
每次启动 JMP 时都可以运行相同的脚本。 例如,您可以包括
您希望在整个应用程序中可用的一些实用函数或命名空间的定义
JMP 会议。 您还可以在启动脚本中设置一些首选项以保留首选项
持续的。 首选项在 JMP 会话中持续存在,但您可以显式重置某些首选项
首选项,以防它们在上一会话中的某个时刻发生更改。
将脚本命名为 jmpStart.jsl 并将其放置在以下文件夹之一(根据需要)
你的操作系统。 JMP 启动时,JMP 在这些文件夹中查找 jmpStart.jsl 脚本
按照此处列出的顺序。 运行找到的第一个,然后搜索
立即停止。
注意:本节中的一些路径名称指的是“JMP”文件夹。 在 Windows 上的 JMP Pro 中,
“JMP”文件夹名为“JMPPro”。
在 Windows 上:
1. C:/Users/<用户名>/AppData/Roaming/SAS/JMP/15
2. C:/Users/<用户名>/AppData/Roaming/SAS/JMP
在 macOS 上:
1./Users/<用户名>/Library/Application Support/JMP/15
2. /Users/<用户名>/Library/Application Support/JMP
jmpStart.jsl 脚本仅针对计算机上的特定用户运行。 您可以添加脚本
根据您的操作,在以下位置之一命名为 jmpStartAdmin.jsl
系统。 该脚本针对计算机上的每个用户运行。 JMP 首先运行 jmpStartAdmin.jsl,如果
成立。 如果找到,JMP 将运行 jmpStart.jsl。
在 Windows 上:
1. C:/ProgramData/SAS/JMP/15
2. C:/ProgramData/SAS/JMP
在 macOS 上:
1./库/应用支持/JMP/15
2./库/应用程序支持/JMP
注意:对于 JMPPro,对 JMP 的目录路径引用更改为 JMPPro,
在该文件中,您可以放置一行简单的内容:
Try( Include( "Saved Assignment.jsl" ) );
每次 JMP 启动时,它都会查找该文件,如果文件存在则运行它。
回复:在 JMP 会话之间保存全局变量试试这个代码:
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 );
(我没有测试过。)