Je pense qu'il vous manque, peut-être, le chemin complet du fichier:
[CODE]tell application "Finder" to set file_name to (name of theFile)[/CODE] → [CODE]tell application "Finder" to set file_name to (POSIX path of theFile)[/CODE] |
Merci RobTrew !
Ta modification marche parfaitement !! Maintenant le document est correctement "embedded" Loyd |
Hello RobTrew !
How can I set a due date to the task generated by your script below ? Thanks in advance for your time Loyd |
[QUOTE=Loyd;127896]How can I set a due date to the task generated by your script below ?[/QUOTE]
The script in post 20 of this thread ? |
Yes please !
|
If you simply wanted the DUE date to be a certain number days after the START date, then you could do something like this:
[CODE]set DAYS_FROM_START to 5 --tell application "Finder" to set theFile to (first item of (selection as list)) as alias tell application "Finder" to set file_name to (POSIX path of theFile) set dteBase to current date set theNote to "Scanned " & (dteBase as string) & " " set projectname to "Factures à Encoder" set ContextName to "En-Ligne" set theTask to "Encoder: \"" & file_name & "\"" tell application "OmniFocus" set task_title to theTask tell default document -- GET A REFERENCE TO AN EXISTING PROJECT (OR NEW) PROJECT set lstProj to flattened projects where name = projectname if lstProj ≠ {} then set oProj to item 1 of lstProj else set oProj to (make new project with properties {name:projectname}) end if -- GET A REFERENCE TO AN EXISTING (OR NEW) CONTEXT set lstContexts to flattened contexts where name = ContextName if lstContexts ≠ {} then set oContext to item 1 of lstContexts else set oContext to (make new context with properties {name:ContextName}) end if -- MAKE A NEW TASK UNDER THE SPECIFIED PROJECT, -- ATTACHING IT TO THE SPECIFIED CONTEXT -- AND STAMPING IT WITH A START DATE set dteStart to dteBase - (time of dteBase) -- zero the time to midnight set dteStart to dteStart + (10 * days) -- and add three days set dteDue to dteStart + (DAYS_FROM_START * days) -- Due N days after start tell oProj tell (make new task with properties {name:task_title, context:oContext, start date:dteStart, due date:dteDue, flagged:true}) set its note to theNote tell its note to make new file attachment with properties {file name:file_name, embedded:true} end tell end tell end tell end tell[/CODE] |
Exactly what I need !!
Great thanks for your prompt answer RobTrew ! |
What about adding a duration to the script?
|
Also, how would you add a Project that is part of a hierarchy? So rather than Finance in David Sparks example, how would you add Finance if it was under Personal projects? "Personal:Finance" does not seem to work.
|
[QUOTE=Mburch;129133]What about adding a duration to the script?[/QUOTE]
In the script you would add an additional condition for the task duration. Example 15 minutes: [CODE]tell (make new task with properties {name:task_title, context:oContext, start date:dteStart, due date:dteDue, flagged:true, estimated minutes:”15”})[/CODE] You can adjust the duration to the length of time you want. [QUOTE=Mburch;129135]Also, how would you add a Project that is part of a hierarchy? So rather than Finance in David Sparks example, how would you add Finance if it was under Personal projects? "Personal:Finance" does not seem to work.[/QUOTE] It is unclear what your hierarchy is. Is “Personal” a project or a folder; and the same with "Finance"? If you have separated "Personal" and "Professional" projects by use of folders and have a "Finance" project within each the script finds the first project matching the name "Finance" and inserts the new task. Regardless, you could state specifically the folder you wish to add a task to the project "Finance". Simple example: [CODE]set theDate to current date set theTask to "New Task" set theDuration to "15" tell application "OmniFocus" tell front document set theContext to first flattened context where its name = "Mac" set theFolder to first flattened folder where its name = "Personal" set theProject to first flattened project of theFolder where its name = "Finance" tell theProject to make new task with properties {name:theTask, estimated minutes:theDuration, context:theContext} end tell end tell[/CODE] |
All times are GMT -8. The time now is 08:54 PM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.