Microsoft Entourage Calendar Cache Problem

I’ve noticed that Microsoft Entourage 2008 sometimes falls out of sync with the Exchange server. This results in missing or outdated events on a calendar. When you use multiple computers and webmail this can become annoying. I’ve traced the problem to the cache in Entourage 2008 becoming either corrupt or stale for some unknown reason. Clearing the cache can be done manually (right click on the calendar and go into “Folder Properties” then press “empty cache”) or can be automated.

Obviously I prefer the automated route. Here’s the AppleScript I wrote:

set accountIterator to 1
tell application "Microsoft Entourage"
    repeat
        if (exists Exchange account accountIterator) then
            empty cache of every calendar of Exchange account accountIterator
            set accountIterator to accountIterator + 1
        else
            exit repeat
        end if
    end repeat
end tell

Save it as a script, I’ll call mine clearCal.scpt. Now place it somewhere. I’ll use /Users/me/clearCal.scpt.

Now in terminal open crontab via crontab -e and enter the following obviously adjusting the path to point to the script:

0 8 * * * osascript /Users/me/clearCal.scpt

Save (ctrl-o) and exit (ctrl-x).

This will run the script at 8:00 AM every morning and clear the cache. I’m pretty sure this will only worked if your logged in, which is fine for me.

Warning: Clearing the cache means that if an event wasn’t sync’d to the exchange server it will be lost. In my case I find this to be the lesser evil. Obviously if you use this, it’s at your own risk.