A partir de Catalina, Mac OS brinda soporte para controles de privacidad en ciertas carpetas. Si, por ejemplo, un script intenta leer un archivo en el Escritorio con Importación de múltiples archivos , obtendrás una ventana emergente diciendo que JMP Pro 16.app desea acceder a los archivos en su carpeta de escritorio . Si selecciona DE ACUERDO , todo funciona bien. Pero si selecciona no permitir , la instrucción MFI fallará sin un error de tiempo de ejecución, pero podría fallar más tarde (ya que no se devolvió una tabla de datos). Algún código de ejemplo es:
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 );En este caso, no hay tabla de datos actual, por lo que dt no está definido y la instrucción Obtener nombres de columna falla con el siguiente mensaje:
Send Expects Scriptable Object in access or evaluation of 'Send' , dt << /*###*/Get Column Names( String ) /*###*/
La pregunta es: ¿Cuál es la forma recomendada de determinar que el comando Importación de archivos múltiples no pudo abrir y leer un archivo?
Después de seleccionar No permitir en la ventana emergente, la pregunta no se hará en el futuro y MFI simplemente fallará silenciosamente. (Tenga en cuenta que la configuración se puede cambiar en cualquier momento en Preferencias del sistema, Seguridad y privacidad, Privacidad, Archivos y carpetas, JMP Pro 16.app).
En términos más generales, ¿por qué el comando Seleccionar archivo permitió que la ventana de navegación accediera a archivos en el escritorio en primer lugar? Parece que las carpetas privadas deberían excluirse en la ventana de navegación.
También veo que esto no es un problema en JMP 15. Entonces, respetar la privacidad de la carpeta aparentemente es algo que se agregó en JMP 16. (Estoy ejecutando 16.2.0).
Hola,
Creo que es posible que desee ponerse en contacto con el soporte técnico ( support@jmp.com ) con esta consulta.
Saludos,
phil