從 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。)
你好,
我認為您可能需要聯繫技術支持( support@jmp.com ) 使用此查詢。
問候,
菲爾