Posts Tagged ‘Project Server 2010’

More #SharePoint / #ProjectServer 2010 Service Pack 2 details #SP2010 #PS2010

So I see my fellow bloggers Paul and Khurram posted about Service Pack 2 for SharePoint and Project Server 2010.

Having looked around the blog-o-sphere, I came across some extra information that I believe will be useful to all:

Known issues when you install Office 2010 SP2 and SharePoint 2010 SP2

In particular if you are installing Office 2010 SP2 on Windows Server 2003 (SP2) you will need to install this patch first: 

For SharePoint Server SP2 on Windows Server 2008 R2, you need to be careful of your custom XSL views from SharePoint Designer.  Apparently they break but the fix is already available and it is recommended to install the June 2013 CU (or later) on top of the SP2

Links for June 2013 CU for SharePoint 2010:

The Full Server Packages for June 2013 CU are available through the following links:

After installing the fixes you need to run the SharePoint 2010 Products Configuration Wizard on each machine in the farm.

Locations of all the SP2 download packages around SharePoint, Project Server, FAST, Office Web Apps, Office 2010 products etc…

Next up is that we of course need to consider the different products that we have installed in our farms.  Do we have FAST or Office Web Apps?

This link will help:

Further links are available here, including Office, Project, Visio, SharePoint Designer and the CSOM binaries:

    I haven’t seen a service pack 2 for the language packs yet, but will update if it comes up soon.

Changes for SharePoint / Office 2010 SP2 that are not in Cumulative / Public Updates

Handily Microsoft have also released a spreadsheet detailing the changes and additions as part of Service Pack 2.  Be aware that these are not included in any previous CU / PU.


Ok, hopefully you will all find the above useful.  Till the next time…

Project Server Start Date Reporting Quirk

July 11, 2013 1 comment

I came across a little possible pitfall while generating some reporting for a client, which I thought I should share with the community.


In Microsoft Project, the Start Date in Project Information defaults to the Start Date of the first task in the plan.


Obviously this can be changed in the Project Information so that the Start Date of the Project does not necessarily reflect the Start of the first task in the plan, or the Project Summary task.


So which date does appears in the reporting database? Well, here are the results:

From the MSP_EpmProject_UserView view in the reporting database


As you can see, the date from the MSP_EpmProject_UserView displays whatever is set in the Project Information. This might cause some unexpected information in reports, so we need to expand our query to include the date from the Project Summary task:


So, when writing the specifications for your reports, make sure you’re clear which date the client wants – it’s not unheard of having a plan created a few months in advance of the work being realistically scheduled which might cause this confusion!

Obviously the clear process-driven workaround is to have your Project Managers ensure that the Start Date in Project Information is updated when scheduling the project!

OLAP Cube Error – Cannot process the Project custom field

June 27, 2013 1 comment

Just a quick note to let you know about an error I came across today.

In Project Server 2010, I had a field called “Objective”. This was associated with a lookup table of the same name, which was single-value select. This field was added to the Project OLAP cube, which built successfully. So far so good!

I then changed the field type to multi-select, and left the cube to build overnight. Came back the next day to a failed OLAP build. The exact error I got in the queue was this:

  • CBS message processor failed:
  • CBSMetadataProcessingFailure (17005) – InitCustomFieldDimensions cannot process the Project custom field ‘Objective’. Details: id=’17005′ name=’CBSMetadataProcessingFailure’ uid=’c69b0459-5d1f-4d78-a410-f56cd32eca97′ QueueMessageBody=’Setting UID=00007829-4392-48b3-b533-5a5a4797e3c9 ASServerName=<SQLServer> ASDBName=OLAPCube ASExtraNetAddress= RangeChoice=0 PastNum=1 PastUnit=0 NextNum=1 NextUnit=0 FromDate=10/30/2012 00:00:00 ToDate=10/30/2012 00:00:00 HighPriority=True’ Error=’InitCustomFieldDimensions cannot process the Project custom field ‘Objective”.

Hmmm…OK, must be the change I made to the field. I need this field to be multi-value, but I don’t necessarily need it in the cube for reporting. So, I went to remove the field from the cube but it wasn’t listed. Weird. I thought re-saving the OLAP configuration and re-building it would just flush out the field since it was no longer listed in the cube configuration. I got the same error in the queue again.

The only fix I found for this was to re-create the OLAP cube with all of the same settings as previously, minus the “Objective” field, which I couldn’t add anyway as multi-value fields aren’t available to add to the cube.

Hope this helps you out if you come across this error in the future.


Edit: it seems that this was a known issue back in 2011, which hasn’t yet been fixed. More info on Brian Smith’s blog here:

Retrieving the Project GUID with JavaScript CSOM #PS2013 #PS2010 #MSProject #Office365 #in

July 20, 2012 5 comments

So the Microsoft Office preview is out and unfortunately my colleagues and I are still consulting on current and previous versions, so only limited time around client work allows for play.  Luckily we have had access to earlier versions for several months now so as a company Corporate Project Solutions is prepared for 2013 and we are even running knowledge sessions and upgrade validation checks.

Moving on… whilst in the hotel, we started playing with Napa and the possibilities around what can and can’t be done.

Although this example is not relevant to Napa (due to the environment the apps run in), we did manage to product some code that would be useful for Sandbox Solutions or Composite solutions using the Content Editor Web Part in Project Online, Project Server 2013 and potentially Project Server 2010.

In this example, we use the SharePoint Client Side Object Model to view the property bag within a Project Site to retrieve the following:

  • Internal Project UID
  • Project Wep App URL
  • Project Web App Site UID.

NB: The Project UID is for the plan associated within to the site in Project Server.

The Result


SharePoint CSOM code running within a Project Site in Project Online (Office 365 Preview)



Closer look at the output


So you may be wondering, why we need this information.  Well with the introduction of Project Online / Project Server 2013, the client side object model can interact with the PSI to return Project and Resource data.

In many cases you will need the Project UID as a starting point!

Here are the details of getting things up and running in the IE Development Toolbar Smile and trust me, there is much more CSOM goodness to come.


Final Code Example:

function getWebProperty() {
    var ctx = new SP.ClientContext.get_current();
    this.web = ctx.get_web();
    this.props =  this.web.get_allProperties();

       Function.createDelegate(this, gotProperty), 
       Function.createDelegate(this, failedGettingProperty)

function gotProperty() {
    alert("Project UID: " + this.props.get_fieldValues()["MSPWAPROJUID"]
     + "\nPWA URL: " + this.props.get_fieldValues()["PWAURL"]
     + "\nPWA Site UID: " + this.props.get_fieldValues()["MSPWASITEUID"]

function failedGettingProperty() {


Debug Code Example:

To get this detail out, me and my colleague had to do some digging in the object model using debug code to alert out to the console values at the Web and Property object areas:

function getWebProperty() {
    var ctx = new SP.ClientContext.get_current();
            for(var p in ctx)
                        console.log("T: " + p);
    this.web = ctx.get_web();
    this.props =  this.web.get_allProperties();

       Function.createDelegate(this, gotProperty), 
       Function.createDelegate(this, failedGettingProperty)

function gotProperty() {
            for(var itm in this.web){
            for(var prop in props){
            for(var fv in this.props.get_fieldValues())

function failedGettingProperty() {



Example References

Just in case you need to add sources for JavaScript frameworks.  Here are some references below:

<script type="text/ecmascript" src="/_layouts/SP.Core.js" />

<script type="text/ecmascript" src="/_layouts/SP.Debug.js" />

<script type="text/ecmascript" src="/_layouts/SP.Runtime.Debug.js" />

<script type="text/javascript" 
     src="" />


Presenting and staffing at TechEd Europe 2012 next week #TEE12

Just a quick blog post to say that I will be presenting at TechEd Europe 2012 next week with my slide deck:

Integrating Project Server & SharePoint 2010
 Deployment Approaches, Integration Options
& making the most of the SharePoint Enterprise Features

TechEd Europe 2012

Code: OSP02-LNC

  • Level: 300
  • Category: Office, Office 365 & SharePoint
  • Presenter: Giles Hamson
  • Date: Wednesday, June 27th 2012
  • Time: 13:30 to 14:15 (45 mins)
  • Location: Hall 2

The key focus of this session is to understand three popular approaches to implementing SharePoint and Project Server together and the key benefits to each method.

In addition you will also learn:

  • Understanding how SharePoint and Project Server work together
  • Using the enterprise features of SharePoint to leverage Project Server data
  • How SharePoint and Project Server techniques differ and can cause issues with implementation

I will also be staffing the Microsoft stand to discuss Project Server, Project, SharePoint & Office with anyone who stops by.  So if you have any questions about the product set or you just want to say hello, come along.

My Schedule:

  • Tuesday: Booth 13:30 till 15:30
  • Wednesday: Presentation 13:30 till 14:15 (link)
  • Flight out Wednesday night – Airport for 7pm ish.

Look forward to seeing you there!

Project Conference 2012 video presentations now available #PS2010 #ProjectServer #MSProject #in


Over the past couple of months, you may have seen posts about my presentation at the Project Conference held in Phoenix, AZ.   Now that some time has passed, Microsoft has uploaded all the video presentations to the Project channel on Microsoft Showcase.

The Project team officially announced the availability here.


As part of the Microsoft Project Conference 2012, Corporate Project Solutions (my company) not only sponsored my presentation, but also the client I have been working for over the last couple of years, ARM.

So without further ado, I offer both video presentations for your consideration:





View Ghamson's profile on slideshare

If you would like to skim through the slides, I have uploaded them to SlideShare for your convenience:

Integrating SharePoint and Project Server 2010

8 Billion Reasons… Why ARM Chose Project Server 2010

Enjoy and if you have any questions about the above or would like to know more, please get in contact!

Using the “Inactivate Tasks” functionality

Inactivate task is a new feature for EPM2010; this feature enables the project manager to set certain tasks to inactive rather than deleting the tasks. This functionality is also useful for performing what-if analysis.

The following paragraph from Microsoft explains that intended usage of the inactivate task functionality:

“Microsoft Project Professional 2010 enables you to cancel a task but keep a record of the task in the project plan. This is called inactivating the task. The task remains in the project plan, but does not affect resource availability, the schedule or how other tasks are scheduled. Note: Inactivating a task is a feature available only with Project Professional.
Why would you want to inactivate a task? For one thing, it can help you model the effects of schedule or resource constraints on the project without deleting tasks permanently. Also, inactive tasks remain in the project plan, providing a record of cancelled tasks and enabling you to reactivate them if circumstances change.
Note: Inactivation is nor a good way to archive complete tasks, because it could have unanticipated effects on the remaining schedule. Instead, mark the tasks as completed.”

Please see the following best practise guidelines for using inactive tasks:

  • When in the planning phase, if you decide that a task or tasks are not required, at this stage use the inactivate task feature to set tasks to inactive rather than deleting the tasks. this will give you the option to quickly make these tasks active at a later date if there is a requirement for these tasks.
  • Inactive tasks do not affect resource availability. Baseline values that have already been taken are retained, but any new baselines taken will not include data for inactive tasks.
  • Tasks that have actual work cannot be made inactive.
  • Inactive tasks are not published, so inactive task assignments will not appear on a team member’s task list.
  • Inactive tasks are available to report on via the Project Server OLAP cube, so care should be taken when reporting that these tasks are/aren’t included depending on the figures required. The “Task is Active” field  can be used to include or exclude inactive tasks. If you do not see this field in your OLAP cube, it may be that the EPM administrator has not enabled inactive tasks in the cube.
%d bloggers like this: