Ha omitido la línea de cierre en el bloque using terms from...
.
▸ Agregue end using terms from
al final de su script.
Sin embargo, su script encontrará un error, dado que la variable
theAttachment
no está definida.
En notas menos importantes, no necesita declarar attachmentsFolder
como clase Unicode Text
, ya que ya expresó el valor de la variable como una cadena (que es texto Unicode). Como se trata de una carpeta que está especificando, la ruta HFS debería tener un punto final, que ha omitido. Esto podría llevar a otro error cuando lo concatene con el nombre del archivo. De hecho, no es necesario utilizar las rutas HFS en absoluto cuando se proporciona una ruta a la ubicación donde se guardará el archivo adjunto. Una cadena de ruta POSIX es totalmente aceptable, y en realidad es preferible. Entonces, se vería así:
set attachmentsFolder to "/Users/John/Dropbox/John & Julie/Wirecard/"
set savePath to the attachmentsFolder & (the name of theAttachment)
save theAttachment in POSIX file savePath
También diría que el try
... end try
es innecesario, y obstaculiza: si hubo un error en el comando save
(que habrá tal como está actualmente, dado el colon omitido en la cadena de ruta), pasaría desapercibido y su archivo adjunto simplemente no se guardaría, pero no tendría idea de por qué hasta que elimine el try
... end try
enclosure.
Pero la razón por la que realmente no lo necesita es porque no hay razón para silenciar los errores en este punto del script. Es el último comando, por lo que si el script termina debido a un error, no importa. Por lo general, el bloque try
sería útil si hubiera más comandos para seguir después, y no quiso que la falla al guardar el archivo adjunto impida que el resto del script se ejecute.
La implementación de estos cambios daría lugar a esto como un script revisado:
using terms from application "Mail"
on perform mail action with messages theMessages for rule theRule
set attachmentsFolder to "/Users/John/Dropbox/John & Julie/Wirecard/"
tell application "Mail"
set savePath to the attachmentsFolder & the name of theAttachment
with timeout of 1800 seconds -- 30 minutes!
save theAttachment in POSIX file savePath
end timeout
end tell
end perform mail action with messages
end using terms from
(Aunque todavía necesita definir la variable theAttachment
).