执行 AppleScript (macOS)
将 AppleScript 命令发送至其他应用程序。
选项
- “计算得到的 AppleScript”指定一个算式以用作 AppleScript 文本。
- “本机的 AppleScript”是 AppleScript 的文本(最多 30000 个字符)。不支持对重复循环和条件语句进行缩进。
兼容性
产品 | 是否支持 |
FileMaker Pro | 是 |
FileMaker Go | 否 |
FileMaker WebDirect | 否 |
FileMaker Server | 否 |
FileMaker Cloud | 否 |
FileMaker Data API | 否 |
自定义 Web 发布 | 否 |
原始版本
6.0 或更低版本
说明
可以创建一个算式以生成要发送的 AppleScript 命令,也可以在“本机的 AppleScript”文本区域中直接键入命令。
对于计算脚本和存储在 FileMaker Pro 字段中的脚本,每次执行该脚本时都将编译 AppleScript 命令。如果在“本机的 AppleScript”文本区域中键入脚本,FileMaker Pro 将编译该脚本并检测任何脚本或系统错误。(每次编辑之后脚本都将重新编译。)
注释
- 由于 AppleScript 是一个 macOS 功能,因此如果在 Windows 计算机上运行一个包含“执行 AppleScript”脚本步骤的脚本,该脚本步骤将被忽略。(将生成一个可以使用 Get (上一个错误)函数捕获的错误代码。)
用法提示
- FileMaker Pro 可以使用“执行 AppleScript”脚本步骤向自身发送 Apple 事件,或者将其发送至其他计算机上运行的 FileMaker Pro 软件。要使 FileMaker Pro 接收 Apple 事件,用户的权限集必须启用 fmextscriptaccess 扩展权限。请参阅为权限集编辑扩展权限。
- 使用“执行 AppleScript”可在 FileMaker Pro 与其他应用程序之间传递图像数据。使用 AppleScript,可以将存储在容器字段中的图像传递到其他应用程序或将图像传递到 FileMaker Pro 容器字段中。
- 可以使用“执行 AppleScript”与 applet 以及其他可以编写脚本的应用程序通信。例如,如果您创建了一个带有子例程的 AppleScript applet,则可以使用“执行 AppleScript”命令调用处理程序,如下所示:
执行 AppleScript ["通知应用程序 "My Applet" 以执行我的例程()"]
示例 1
打开当前 macOS 用户的“文稿”文件夹。
复制
执行 AppleScript ["tell application "Finder" (*输入换行符*) activate (*输入换行符*) set x to path to documents folder (*输入换行符*) open x (*输入换行符*) end tell"]
示例 2
将“文稿”窗口的边界设置为指定大小。在此脚本运行前“文稿”文件夹必须处于打开状态。
复制
执行 AppleScript ["tell application "Finder" to set bounds of window "文稿" to {170, 70, 1000, 600}"]
示例 3
计算并执行 AppleScript 以安装网络打印机。"\" 指示 FileMaker Pro 将后面的符号识别为字符而不是算式运算符。
复制
执行 AppleScript ["do shell script \"lpadmin -p " & 打印机::名称 & " -E -vlpd://"& 打印机::IP 地址 & " -P /Library/Printers/PPDs/Contents/Resources/" & Substitute (打印机::驱动程序名称 ; " " ; "\\\ ") & ".gz -D \\\"" & 打印机:: 描述 & "\\\"\""]