A couple years ago, when Project Server 2010 was first released, I was sitting in a room with a member of the product team and I asked him what he felt was the most powerful feature of Project Server. With very little hesitation, his response was that Project Server enabled personal and personalized views of key data. With Project Server, it was relatively easy to to generate my own personal dashboard with information that I care about.
Fast forward a couple of years, and that’s still a feature that is very much underutilized in my opinion. Seeing as Mike McLean and I had to gin up a demo of this for the recent Project Conference, I figured I’d go ahead and blog it up.
First off, I will be building off of the two reports that I created in this post. In those two reports, you’ll note that I added the Resource List as background item. This will allow me to hook the SharePoint Current User filter Webpart into the reports.
I am using the dashboard we created in the last post – although a full dashboard is probably not strictly required.
Choosing a Filtering Technique
First off, you are faced with a decision of which filtering technique you’d like to use. There are two that I’ve identified: Customizing the MDX query and using default SharePoint functionality.
To implement MDX filtering, go back to the data source you’re using for your report. Set the connection to include the current user account.
Now go to the report in Dashboard Designer. Click on the Query tab and you should see the MDX query underlying the report.
In theory, at this point, you should be able to edit the MDX query to filter the results on the current user data in the connection string. Here’re the instructions on how to do that in general – although I must admit my MDX skills are not up to the challenge. If anyone wants to try this out and post back the results though, it would be welcome.
The second filtering technique is more my speed, as it doesn’t require any customization. In this example, we’ll use the out of the box Current User Filter functionality. This functionality is dependent on the User Profile Service being active and running.
Applying the Current User Filter
Going back to the dashboard I created in the previous post, I remove the filter that I’d created and redeploy to my SharePoint site.
From here, I select Site Actions and choose to Edit the Page. Then I add the Current User Filter Webpart.
The system is looking for “[Carol Troup]” not “Carol Troup” or “Contoso\CarolT.” To support this output, we need to make two minor adjustments to the settings for the Webpart: Set the output to the resource name, and make sure to add square brackets around the name.
From there, click the filter Webpart dropdown and add the connections to the two reporting Webparts on the page.
Once you’ve completed that, exit from the Edit Page interface and test the results. Here’s what it looks like when I’m logged in as the Administrator.
…and when I log back in as Carol Troup….