tl;dr – An OSX upgrade to Mavericks caused OmniPlan to export CSV files differently than it previously did. This surprised me so I wrote an entry about it.
I’ve been working with OmniPlan for several years now, but recently have changed our workflow so that we are managing multiple (40+) schedules with it. It works much much better than our agency management software for managing the dynamic schedules endemic to an ad agency.
We have a workflow where we manage shared schedules in OmniPlan, publish the resources and assignments to a shared server and then also export CSVs of the schedules. These CSV files are then parsed server-side by a web app that lets us slice and dice the information in aggregate (and to give useful task lists to others).
I’ve been running nightly builds from OmniGroup to try to deal with some crashing issues that I have been trying to work through with the OmniGroup support humans. They have been helpful, but I’m still having issues when keeping all of my schedules open.
Now, there’s a new issue that has cropped up. When I upgraded to OSX Mavericks, the web app started throwing errors while parsing the newest exported CSV files. It appears that whatever call OmniGroup is using to export to CSV is now inserting a comma between the date and time for exported dates.
An example line from a previous file:
1.1,Job Open,10/9/13 8:00 AM,10/30/13 5:00 PM,3w 1d,2h 45s,25%,,,,,,,8/28/13 8:00 AM,,,,,,
And a current file:
1.1,Job Open,”10/9/13, 8:00 AM”,”10/30/13, 5:00 PM”,3w 1d,2h 45s,25%,,,,,,,”8/28/13, 8:00 AM”,,,,,,
This comma also forces the exporter to, since it is a CSV, put double quotes around the entry as text qualifiers.
My import routine wasn’t built to handle this and therefore threw an error.
We’ve modified the routine to work but now can’t export from Mountain Lion and Mavericks to the same format files.
Per the good folks at OmniPlan support:
“We think the solution is to write to CSV as ISO 8601, which would require us to do this in an upcoming update since it’s not a simple workaround that we can perform with the current version.”
So, we’re stuck with just me outputting the files or writing our import routine the have some better error handling and importing (probably should have been done anyway).