This post is another very specific one, related to a strange phenomenon in Project Server reports that I wanted to dive into and solve. If you do not experience the Unassigned Resource mystery yourself, but found my blog because you are interested in Project Online (for instance) maybe these posts will be of interest to you: The book reviews, The Project Virtual Conference, The Project Corner OneDrive or the other “About posts”.
If you are experiencing the Unassigned Resource situation, you might want to stick around, it’s going to be a bumpy ride!
The case of the unassigned resource
I frequently create reports for my clients. In Project Online I use the OData feeds, and when I’m on a “On Prem” environment I like to use direct access to the SQL reporting DB tables (or database when I’m on an older system).
On occasions I will create a report related to resource assignments and I will come across a mysterious resource called “Unassigned Resource”.
Sometimes this resource will show up on a Milestone or Task and will not have any hours assigned to it. But in other cases the Unassigned Resource will actually have work assigned to a project. What’s going on? Who is this Unassigned Resource and how did it get work?
Here is a TechNet forum post describing the issue in more detail:
A short but powerful blog about the GUID’s of the resources. Useful when searching for these resources in a report or database:
8847397E-B724-4EBA-949A-DBE03842CF2A Generic Local Resource
B067CE64-9588-4B18-BF54-3491F76419C9 Unassigned Resource
The only post I found on the Unassigned Resource in combination with Project Server 2013:
Stating: “When creating a project from a template (with templated tasks) in PWA, if you assign resources to those tasks via PWA, the assignments appear in the Reporting Database as Unassigned Resource”.
I will be putting this to the test below.
Project Server 2007
Here are some of the quotes I found related to the Unassigned Resource. It’s strange that the most search results relate to Project Server 2007. The sources of the conversations are below.
“It uses the Unassigned Resource item to document Fixed Costs.”
“It is likely that the task [resource] name was manually typed and assigned to the task, hence making it an “Unassigned resource” in RDB. So you would have Joe Bloggs entered twice in the resource sheet where one of them would be generic and not enterprise.”
“Unassigned resource is used by the system to maintain referential integrity for assignment records that have no associated resource. Similar to Generic Local Resource, it can help you find certain conditions in your plans”
“So is one possible explanation (and maybe only explanation) that these were real users (ie Enterprise Resources) but they were deleted from the system?”
Most frustrating quote, at the end of the longest discussion I could find:
“But what circumstances could make it happen?
“It does not happen as a result of deleting a resource (via delete system object) – I tried it this morning in our dev environment. You get a pointer to “Generic Local Resource””
Testing on my own PWA
Here we go, how will we tackle this problem? First we must create a situation where the Unassigned Resource occurs. Most of the links above state that the issue arises with a Microsoft Project template on the Enterprise Project Type that includes resource assignments. I use my Project Online testing environment.
Setting the stage
Create a EPT without an MPT. I’ll call this one “EPT 1”.
Create a EPT with an MPT but no resources in the team. I’ll call this one “EPT 2”.
Create a EPT with an MPT with resources in the team but no assignments. I’ll call this one “EPT 3”.
Create a EPT with an MPT with Resources and assignments. I’ll call this one “EPT 4”.
Here are all my EPT’s currently available in my test environment:
Create 2 projects for every EPT, one without changing the schedule, one with new and (where available) changed assignments. Calling them “Project 1”, “Project 2” etc. Here is the resulted Project Center view:
Create a report
A report that filters on the EPT Names and adding the resource names and assignments.
Analysis of the results
Here is the resulting report, and we are presented with a conclusion on when the Unassigned Resource appears:
After deleting Albert-Jan from the Project Online environment:
Looking just at the Resources their ID and their work:
The fixed cost example
There is a quote at the beginning of the post stating that the Unassigned Resource is also linked to fixed costs, let’s have a look.
I create “Project 9 – Fixed costs” and have two tasks, one without a resource and a fixed cost of 2500 dollars. And a task with a resource, and a fixed cost of 2500 dollar. The second task has a higher total cost because the resource Erik van Hurck has a standard hourly rate.
Here’s a screenshot of the project:
And here is the report based on the project:
Theory confirmed it seems! This is also the reason why a milestone gets the Unassigned Resource, because you do not want to have work assigned to a zero duration task, but it can happen that you want to associate an amount of costs to a certain moment in time. It all fits, lovely!
Final notes and conclusions on the unassigned resource
Awesome, you are still here! Let’s wrap up this post with a couple of conclusions.
Most striking conclusion would be: I was unable to reproduce the situation as described in the first TechNet article, therefore I must conclude that Microsoft has done some bug fixing.
Here are some other things we can take away from the post:
- The Unassigned Resource occurs on every task (and milestone) that doesn’t have a resource assigned to it. And if you have work on that task without a resource, that Unassigned Resource gets that work, just have a look at “task without a resource but with work” in the screenshot above.
- The GUIDs for the Unassigned and Generic Local resources haven’t changed since 2007. That is good, because you can create reports locating these buggers through all versions of Project Server.
- The Unassigned Resource is something completely different from the “Generic Local Resource”. This resource can appear when a resource isn’t in the enterprise anymore because it got deleted, or because the resource wasn’t there in the first place. The last example can happen when PM’s don’t use the “build team” functionality to gather resources, or needs to add a local contractor resource for instance.
- And the last conclusion we got, fixed costs are indeed linked to the Unassigned Resource.
Now for some practical use of the Unassigned Resource:
You can use the resource to locate tasks that don’t have a resource but do have work on them. If a Project Manager starts his projects in draft mode, assigning work but not resources is a great method, but when that manager forgets to assign a resource, as the project progresses, you want to know about it.
I can also see an interesting report where there is time phased data and if the next month still has Unassigned Resources with work assigned there would be red conditional formatting. Now keep in mind, tasks that are inactivated are also linked to the Unassigned Resource when they don’t have a resource assigned.
Another situation is linked to the fixed costs. If you want to know the total fixed costs of an project, just look for the costs of the Unassigned Resource. I already contacted a client of mine that needs this overview, so I’ve learned something during this exploration of the Unassigned Resource.
Last thing I would like to note: if your experience is different from mine, please let me know in the comments and if you do, please tell us what version of Project Server you are using.
I would be grateful if this post becomes the definite and complete guide on the Unassigned Resource, and with more useful comments that can happen.
And with that, I would like to thank you for reading, you stuck around till the end, you are awesome! Tired of reading? Then take some time viewing awesome video’s (no cats sorry). See you around in the next post.