Is there any tool or VBA routine available to "synchronize" two independant project files? RRS feed

  • Question

  • This is our environment: Project Server 2007 (2010 soon) with a large multiproject on it and clients without any access to this server.

    This is our requirement: Clients should be able to update the schedule on the server without any or only few human interaction.

    The process at the moment: The clients take the MPP (via mail) and modify it, send it back and we either save (overwrite) it on the server, or we transfer the modifications line by line manually. Simply saving may corrupt the multiproject links and also creates massive overhead inside the project server database.

    The question: Is there any tool which allows to "synchronize" two files (the one on the server with the "external" one)? Any suggestions? We already wrote a VBA macro which exports a CSV file and imports it again into the destination - with markers for "Insert-Update-Delete" - but this works not too good because of the links (represented by the UIDs). Biggest problem is, that new entries get a new UID which will be different when created also in the "destination project". The way back after the recalculation of the multiproject is done the same way. And yes, we know this will block out the "real" calculation of the multiproject - but we tried to keep the project "linear" so no circular loop will feed back into former tasks. Any idea?

    Sorry for the complex question - and thanks a lot for any suggestion, hints or help in advance,


    Thursday, August 29, 2013 9:52 AM

All replies

  • One solution is to provide remote access to PWA so they can use Task Updates.

    The second option is to use VBA to update your tasks, not replace them. This maintains Unique IDs and the important (for Project Server) GUIDs.

    Just read the Unique ID, Actual Start, Actual Duration and Remaining Duration (Rem Dur=0 is task complete).

    Rod Gill

    The one and only Project VBA Book

    Rod Gill Project Management

    Thursday, August 29, 2013 9:08 PM
  • Hello Rod, thanks for your answer first ...

    An access to PWA is not possible (secuity reasons) - true, this would be the best way to go.

    Updating tasks is not sufficient - the clients are changing the complete schedule EXCEPT the tasks which are linked into the multiproject. They delete, insert, relink etc. so this is difficult to track. And we want all the information to keep the critical path calculatable.

    At the moment I try to "glue" the uppermost part of the schedule containing the linked tasks, and then delete and insert everything below. As long as the IDs are the same (down to the starting point) this seems to work.

    Do you know any tool or VBA code which I could use? Btw: I like your book, good work!


    Friday, August 30, 2013 10:42 AM
  • I think the simplest solution then is to have a macro that deletes all tasks below your link tasks then copy all tasks (except link tasks) into the schedule.

    Next level up in sophistication is to keep level 1 summary tasks and replace all sub-tasks one level 1 summary task at a time. That way you get to keep level 1 summary task baseline information.
    Or you could store baseline data off line and copy it after refreshing. You would need some way of identifying the correct summary tasks to update.

    Can't think of much more to add without seeing sample files. Hope this is a cost plus project and not fixed cost!

    Thanks for your comments on my book, happy programming!

    Rod Gill

    The one and only Project VBA Book

    Rod Gill Project Management

    Friday, August 30, 2013 10:26 PM