2015-10-15 70 views
1

在Mac OSX上的優勝美地運行的Filemaker 13。 我們有一個quicklook腳本,直到優勝美地,工作沒有問題。通常情況下,它會在容器字段中使用.doc/.docx文件,並在Quicklook中打開它。的Filemaker 13的Quicklook腳本

然而,在優勝美地,它會打開qlmanage,進而導致的Filemaker凍結和崩潰。

Set Variable [ $file ; Value: ${database}::Container Field ] 
Set Variable [ $path ; Value: Get (Temporary Path) & $file ] 
Set Variable [ $script ; Value: 
    Let (
    thepath = Middle($path ; Position ($path ; "/" ; 1 ; 2); Length ($path) ; 
    "set p to POSIX path of " & Quote (thepath) & 
    "¶ do shell script \"qlmanage -p \" & quoted form of p") 
] 
Export Field Contents [Database::Container Field ; "$path" ] 
Perform Applescript [ $script ] 

任何人都可以給我一些關於什麼可能會出錯的想法嗎? 感謝

+0

腳本看起來不錯,但我會通過檢查'$ script'是第三行後的值,並確保它看起來正確的,那麼在確認開始排除故障,通過實際執行在終端中輸入'$ script'代碼。 – Chuck

回答

0

我成功使用的FileMaker Pro高級14.0.2在演示文件下運行OS X Yosemite 10.10.5運行看起來像這樣你的腳本編輯版:

Set Variable [ $_file ; Value: GetAsText (Table::container) ] 
Set Variable [ $_fm_path ; Value: Get (TemporaryPath) & $_file ] 
Set Variable [ $_as_path ; Value: Middle (
    $_fm_path; 
    Position ($_fm_path; "/" ; 1 ; 2) ; 
    Length ($_fm_path)) 
] 
Set Variable [ $_script ; Value: List (
    "set p to POSIX path of " & Quote ($_as_path) ; 
    "do shell script \"qlmanage -p \" & quoted form of p") 
] 

Export Field Contents [ Table::container ; 「$_fm_path」 ] 
Perform AppleScript [ $_script ] 

Exit Script [] 

之間的主要區別這和你顯示的是:

  • 我使用了表名的直接引用。我實際上不確定${database}是指什麼。也許Get (FileName)
  • 我存儲在一個變量的AppleScript的路徑,方便調試。

如果不工作,我會用我提供了關於在測試的$_script內容的執行腳本編輯器建議和外殼的p變量的終端內容合作。