从 Catalina 开始,Mac OS 支持对某些文件夹的隐私控制。 例如,如果脚本尝试使用以下命令读取桌面上的文件多文件导入,你会得到一个弹出窗口说JMP Pro 16.app 想要访问您桌面文件夹中的文件. 如果您选择好的,一切正常。 但是如果你选择不允许,MFI 指令将失败而不会出现运行时错误,但稍后可能会失败(因为未返回数据表)。 一些示例代码是:
fileList = Pick File( "Choose Insight File(s)", "~/Downloads", {"csvOnly|csv"}, 1, 0, "", "multiple" );
:
Multiple File Import( ... );
dt = Current Data Table();
allCols = dt << Get Column Names( String );在这种情况下,没有当前数据表,因此未定义 dt,并且 Get Column Names 指令失败并显示以下消息:
Send Expects Scriptable Object in access or evaluation of 'Send' , dt << /*###*/Get Column Names( String ) /*###*/
问题是:确定多文件导入命令无法打开和读取文件的推荐方法是什么?
在弹出窗口中选择不允许后,以后就不会再问这个问题了,MFI 就会悄悄地失败。 (请注意,可以随时在系统偏好设置、安全和隐私、隐私、文件和文件夹、JMP Pro 16.app 中更改设置。)
更广泛地说,为什么选择文件命令首先允许导航窗口访问桌面上的文件? 似乎应该在导航窗口中排除私人文件夹。
我还看到这在 JMP 15 中不是问题。因此,尊重文件夹隐私显然是 JMP 16 中添加的内容。(我正在运行 16.2.0。)
你好,
我认为您可能需要联系技术支持(支持@jmp.com ) 使用此查询。
问候,
菲尔