来自 Python 的 .jsl 脚本调用我在 python 中准备了数据,并从 python 调用 jsl 脚本,并再次使用 python 中的输出。 我怎样才能做到这一点。
回复:来自 Python 的 .jsl 脚本调用尝试这个:
>>> import subprocess
>>> subprocess.call(['C:\\space\\SAS\\JMP\\15\\jmp.exe', 'C:\\Users\\v1\\Desktop\\test.jsl'])
test.jsl 文件应该
- 读取 Python 程序在调用获取数据之前编写的文件
- 过程
- 写一个答案文件
- 辞职();
Python 程序可以在调用返回后读取该文件。 您可能想在两个方向上使用 CSV 文件; JMP 和 Python 可以读取和写入它们。
回复:来自 Python 的 .jsl 脚本调用在这里添加并投票: https://community.jmp.com/t5/JMP-Wish-List/idb-p/jmp-wish-list
回复:来自 Python 的 .jsl 脚本调用+ 1 我也希望添加此内容。
回复:来自 Python 的 .jsl 脚本调用请将此请求添加到 JMP 愿望清单回复:来自 Python 的 .jsl 脚本调用谢谢@保罗·尼尔森。
我希望这可以成为未来从 python 调用 JMP 的增强功能。回复:来自 Python 的 .jsl 脚本调用如前所述,使用自动化驱动 JMP。 您需要从 Python 加载 Python to COM 包之一,以允许与 JMP 的 COM 自动化层进行互操作。 其次,是从 Python 启动 JMP 流程,就像从命令行启动一样,使用 .jsl 脚本作为命令行参数(我相信这应该可行,但尚未测试)。 最后,您可以编写一个 JSL 脚本来侦听套接字并允许您通过套接字向 JMP 发送命令。 但是,您不能只发送 JSL,因为 JSL 不是多线程的,并且是您的脚本维护套接字。 您的套接字处理脚本将解析接收到的数据并从其脚本内发出 jsl 命令。
Python 支持目前只是一种方式。 JMP 可以访问 python 模块并将数据传递到正在运行的 python 脚本并检索该数据,因为它正在访问 JMP 启动的 python 解释器中的数据。 目前还没有
导入jmp
允许您从单独启动的 Python 实例调用 JMP 的功能。
回复:来自 Python 的 .jsl 脚本调用谢谢@tx尼尔森。
这是关于 OLE 自动化的详细文档,但我仍然无法运行我的 jsl 脚本。
我有一个 jsl 脚本,它将生成绘图并保存到特定位置。 我想从 python 调用此脚本,并在后端调用该脚本,它将在 JMP 中运行该脚本并保存绘图。 可以告诉我 python 中相同的命令。
谢谢回复:来自 Python 的 .jsl 脚本调用OLE Automation 上的 JMP 文档指向一个 .PDF 文件,该文件记录了从外部程序调用 JMP 的示例。 可以在 PDF 中找到 JMP 安装的安装目录结构
……JMP/14/文档