I always tell my Clients/Teach my users to check-in their projects in Project Server, once they have finished working with them. It is OK to purposely keep a project checked-out using the Work Offline method, but it is not OK to leave the project checked out for no real good reason.

So, in this post, I will try to list out all the reasons (that I know of) to discuss 5 reasons as to why you need to Check-in your projects for better functioning of Project Server. Obviously these are not the ONLY 5 reasons, so if you think of more, please leave them in the comments.

1.The Others cannot make changes

As you are probably aware, simultaneous authoring of Project Schedules is not possible in Project Server. So, if you leave the project checked out, it is not available for anybody else to make any changes to it. So what?, you may ask. Consider this example.

In an organization, lets say you are the project manager who plans the project with generic Resources, and now needs the Resource manager to replace those generics with named resources. But you leave the project checked out, and take off for a vacation. Now the resource manager cannot add resources to the project plan until the plan is checked-in.

Granted that the Administrator can Force Check-it in, it is unnecessary effort and also might lead into some data loss.

2. Changing and Restarting of Workflows cannot happen

A few days ago, I had to change the stage of workflow back to a previous state, so I jumped to Server Settings >> Change or restart of workflows. However, try as I might, I could NOT find that specific project in the list of projects to select. After many hops between Project Center and the Server Settings pages, and confirming the project does exist and is valid, I suddenly realized that the project was checked out and hence was not available for changing the workflow. Then I went back to the user and had him check-in the project and changed the workflow stage. Imagine this happening in your process. Depending upon how light/heavy your process, this could mean that a project is sitting in the wrong stage from hours-days.

Save the trouble and check-in the projects.

3. Status Updates cannot be processed*

This should be a well known item. If you are accepting the status updates manually (from PWA), they will not be applied to the project until you have the project checked-in.

*If you have an automatic rule running to approve and publish task updates, the rule will not publish the updates if the project is checked-out at the time of processing. (I believe this is fixed in the April 2012 CU).

4. Possible Corruption

As I mentioned above, if you like to keep the project checked-out for extended period of time, use the Work Offline Option. Remember, if you are connected to the server, and have the project checked-out, there is communication happening between server and your local project cache for every small change. So, if you leave your project checked-out without disconnecting, and move around where your network connection falters, it could lead up corruption/other issue with the project schedule. I am not saying this will ABSOLUTELY happen, but there is a good potential, and I have seen it happen a few times.

This is also applicable when there is maintenance work being done on the Servers, like installing of Cumulative Updates, upgrades etc., It is a good idea to have all projects checked-in before you make major changes to the system.

5.Deletion of Projects cannot happen

You might know this one already: If the project is checked-out, it cannot be deleted. This again will lead into a follow-up with the concerned person, (or a force-check-in) which I think is a unnecessary waste of time.

There you have my 5 reasons.