Blog

Meet the Project 1.0 Creators

A little while ago the Project development team had the honor of meeting our makers so to say – Brian MacDonald and Jeff Lill. They’re the original creators of the first version of Project for Windows which was released in 1990. They started as two local kids who grew up just a few miles from the Microsoft campus. In high school they thought it was cool how you could program little LED lights to go on and off. This fascination inspired their future in software development. They spent some time attending the University of Washington and while they were there built a spell checker app, Corrector.  Unfortunately it was the third spell checker app to the market and while InfoWorld rated it the best in the industry, they only sold 24 copies. Brian thanks his good spelling today though to having to manually enter the entire dictionary. Jeff even did some internships with Microsoft since they needed money to finance their company. After the spell checker app, they started working on a spreadsheet product for Macs called Crunch. Shortly after that, Microsoft came out with Excel and in Brian’s words “really just crunched ‘Crunch’ “. At this time they had a lot of connections into Microsoft from Jeff’s internships and Brian’s wife working there. They were at a party with Bill Gates and he mentioned they should stop competing and start working together. Microsoft was trying to recruit developers to make GUI (graphical user interface) apps for this new platform called Windows. They already had a spreadsheet and word processor but were looking for developers to create a database application (which would go on to be Access) and a project management application. Brian and Jeff chose the latter. While Brian and Jeff had a lot of passion around software, they didn’t have much project management expertise. As Jeff said though, they were arrogant enough to know they could do it. So they dove in and looked at competitors, did a bunch of customer interviews including with another local company, Boeing, read project management books and attended conferences. It was actually while they were on a site visit to Boeing that a light bulb went off and they came to the decision that they wanted to build a toolkit that had a broad enough appeal that anyone could use it for project management. At the time, most project management applications were built by consultants and the software would back up the methodology that the consultant was selling. Most companies though already had methodologies in place and just wanted software to support it. This decision turned out to be a pivotal one and something we still strongly believe to be correct today. In Project 2010 , you’ll see that you can manage projects how you want to manage them. How does it feel that people are still using the tool you built today for huge projects totaling billions of dollars? It feels great! We had always hoped that would be the case. – Jeff Anything about people’s reactions to it surprise you? Right around the time the second version of Project was coming out, Windows started to just explode in popularity and along with it any software that ran on Windows. We initially saw our audience as people who had “Project Manager” in their title but found that the product had a much broader appeal. People were using it to create schedules/Gantt charts to help show their management/team that they had their acts together and were on top of things.  – Brian That was very exciting for them and helped the product really take off. They also thank this success to their initial goal of being a toolkit instead of specific solution. This is why features such as the ability to re-title columns were available back in the original release. What kinds of improvements did the second version of Project for Windows have over the first? Print preview, support for macros, and improvements to the leveling algorithm were some of the top ones. Yes, leveling was in v1. According to Jeff – “All the software solutions had it and all struggled with making it work how humans would expect”.  We are still trying to make this easier today by adding features like change highlighting in Project 2007 and the Team Planner in Project 2010. What do you think of the current version of Project? It looks great. A lot looks familiar with the overall user interface but it definitely looks more modern (they were happy to hear that we now have more than 16 colors). Per the timeline view, that was what we were trying to achieve with the Gantt chart (sharing the schedule with stakeholders) but has an even broader appeal. – Brian Brian went on then to create Outlook which originally started out with the goal of being a task management application. It was only during coding and after much debate that they decided to add email support to it. We think they made the right decision. Jeff worked on Project a bit longer and then went on to do Team Manager. Today they both work in the Bing organization. Some fun facts: · There isn’t a Microsoft Project 2.0 because someone else had copyrighted Project 2.0 · Bill Gates tried to convince them to re-write Project in BASIC and they said no. · The last bug fixed for Project 1.0 for Windows was around supporting the Gantt Chart view with the Task Form. In short, I would like to thank Brian and Jeff for creating this great product that so many of us use every day and rely on to accomplish a wide range of projects.

Microsoft at the Gartner PPM & IT Governance Summit in London

Following our time in Maryland last month for Gartner’s annual PPM event in the US, the Microsoft Project team will also be sponsoring this year’s Gartner PPM & IT Governance Summit in London. The two day event represents… “Europe’s premier gathering of program and portfolio management executives charged with improving how organizations select, implement and manage IT projects and investments. The Summit will help you anticipate portfolio fluctuations, and adapt your programs with a view to reducing risk and fully realizing the value.” We’re looking forward to hearing from users like yourselves. You can stop by our booth and join us for a panel discussion on Tuesday, plus our presentation on Wednesday. Check back after the Summit for an update and event recap. In the meantime you can follow us on Twitter where we’ll share the activity from London. Tuesday, June 19th Time Place Welcome Keynote 8:45am-9:45am Westminster B & C Solution Snapshot be there at 10:15am, 10:35am-10:55am Showcase floor- Plaza Suites 2 & 3 Panel Session 11:00am-11:30am Main Auditorium – Westbourne B & C Session 12:25pm-12:45pm Showcase floor- Plaza Suites 2 & 3 Wednesday, June 20th Time Place Session 10:15am-11:15am Westminister A Sponsor Session 11:30am-12:00pm Westminister B And if you haven’t already, be sure to check out the exicting announcement of Microsoft’s Surface

Reporting Solution Packages on the TechNet Gallery: "Project Burn and Forecast Report" and the "Project Spend Report"

Just wanted to make you aware to two recently release solution packages that are available on the Microsoft TechNet Gallery: I am pleased to announced the release of two Microsoft Project Server 2010 reporting solutions on TechNet Gallery: Project Burn and Forecast Report and Project Spend Report . Both solutions can be deployed and tested with the Microsoft Project Server 2010 v2 Demo Virtual Machine . These reporting solutions leverages Microsoft SQL Server 2008 R2 Reporting Services and were created by Emmanuel Fadullon, a Principal Consultant for Microsoft Consulting Services (MCS). The User Guide for the Contoso Project Burn and Forecast Report demonstrates how to use the Project Burn and Forecast Report to estimate the projected spend rate (“Average Monthly Burn Rate”) based on the current spend plan, and it also allows you to forecast a spend plan based on a what-if spend rate in a budget-reduction scenario. The Contoso Project Spend Report User Guide walks you through using the Project Spend Report particularly the use of a key concept — a unifying Expense Code, to track Project Total Actual Cost.  The Total Actual Cost is then categorized into its component costs by project work alongside sustainment and common services activities maintained in associated projects in lieu of Administrative Time and Timesheet entries in order to facilitate cost categorization by Expense Code.  Please note that these reporting solutions are not supported by Microsoft Premier Support and instead are meant to demonstrated the rich reporting capabilities of Project Server 2010. We recommend working with Project & Portfolio Management (PPM) Partners or MCS to modify these solutions to meet your specific reporting needs.

Microsoft Project & Project Server Presence at TechEd North America & Europe 2012

Please find below a summary of the Microsoft Project and Project Server presence at both the upcoming Microsoft TechEd North America 2012 in Orlando June 11-14 and at Microsoft TechEd Europe 2012 in Amsterdam June 26-29. Beside sessions listed below, yes we will have a Project booth staffed by product experts so don’t be shy and ask questions about your favorite Project Portfolio Management (PPM) solution at the booth. Title Description Speaker OSP301 – Turning Project Data into Real-World Reports: An Overview of Business Intelligence Options Learn how Microsoft Project Server 2010 leverages existing SharePoint BI tools to provide elegant reporting options to the enterprise. Attend this presentation to see how Project Server data may be surfaced using such tools as Business Connectivity Services, Visio Services, Excel Services, PerformancePoint and the REST API. Specific reporting examples are provided that may be easily reused at any level of organizational project management maturity. Andrew Lavinsky OSP332 – Best Practices for Deploying Microsoft Project Server 2010 on a SharePoint Farm Are you interested in deploying Microsoft Project Server 2010, but don’t know where to start? In this session we provide you with an overview on how to deploy Project Server 2010 in a SharePoint 2010 Farm. Specifically, we discuss how to deploy Project Server in an existing or separate farm, asses the proper capacity planning, and how to tackle upgrading and migration. Gary Crich AAP313 – Scrum Under a Waterfall It would be so easy if everyone at our companies just used Scrum—or at least Agile. No one would lean on the team for dates and deadlines, and everyone would know that change is a good thing. It’d be one great big happy project management family. But let’s face it—an all-Agile organization isn’t always possible. Maybe you have a Project Management Office (PMO). Maybe you work for a government contractor. Maybe you have regulatory requirements. Maybe you’re the first Scrum/Agile project at your company. Maybe your company simply *likes* it this way. Whatever the reason, Agile teams frequently report into Waterfall organizations. Your team thinks “backlog” and your bosses think “project plan.” How do you make it work? How do you ensure communication and foster trust between the two groups? How do you bridge the project management impedance mismatch? Enter Team Foundation Server (TFS) and Project Server. The chocolate and peanut butter of the project management world. These products integrate and replicate so that the Agile/Scrum and Waterfall groups can work with the tools they want to work with, play nice together, and get what they need to do their jobs. In this session, we not only discuss how to use the TFS-to-Project Server integration but we also talk about strategies to improve communication between the two constituencies. Along the way we discuss some of the difficulties with making Scrum/Agile work in a Waterfall-centric organization and what you can do to minimize the headaches. Benjamin Day OSP02-LNC – Integrating SharePoint and Project Server 2010 – Deployment Approaches, Integration Options and making the most of the SharePoint Enterprise Features 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 Giles Hamson   PS: I’ll personally be attending TechEd Europe.

Now Available: Microsoft Project Server 2010 Upgrade SuperFlow

We recently released the new Microsoft Project Server 2010 Upgrade SuperFlow on the Microsoft TechNet Gallery. The Microsoft Project Server 2010 Upgrade SuperFlow is a special kind of help file that provides you with information that you need to upgrade to Microsoft Project Server 2010. It provides information that is common to each upgrade path – planning, preparation, and specific procedures for each supported upgrade method.  This guide also provides you with information about how to download and use the Microsoft Project Server 2010 virtual migration environment – the recommended method for upgrading your Microsoft Office Project Server 2003 data to Office Project Server 2007 (which you can then upgrade to Project Server 2010). The Microsoft Project Server 2010 Upgrade SuperFlow MSI file can be downloaded from the Microsoft TechNet Gallery and installed to your Windows computer.  .NET Framework 3.5 is required for installation. Feel free to install it, look through it, and give us any feedback you may have! Thanks!  

Project Server 2007: Reporting (Project Publish) queue job fails to complete

This is an issue that several of my readers raised in response to the posting about the orphan baseline posting a few weeks ago, and we know that this is something that more and more customers are now hitting.  The problem was introduced with the February 2012 Cumulative Update for Project Server 2007, and was also present in the April CU too – so if you have installed either of these and have started seeing Reporting (Project Publish) queue job fails to complete then read on. The symptoms are that a project will successfully save and publish, but the Reporting (Project Publish) job will fail to complete, and the error will look something like this (truncated – but the ReportingProjectChangeMessageFailed piece will be repeated based on your queue setting for the retry limit. Error summary/areas: Reporting message processor failed ReportingProjectChangeMessageFailed Queue GeneralQueueJobFailed Error details:                                 The issue occurs because we are missing a NULL check when accessing the task baseline cost – so if it is NULL we get the “Object reference not set to an instance of an object” message.  We are working on a hotfix to correct this behavior, but we also have a workaround that can provide some immediate relief.  This is a macro that can be run on affected project and will set a zero (non-NULL) assignment baseline fixed cost in place of the NULL we are tripping up on.  Below is the macro code that will need to be added to Project in the macro editor, and executed against the plan.  DISCLAIMER: As with any macro code you should review and understand exactly what this code is doing and that you are comfortable to run this on your own plans (and read the disclaimer) – and should also execute this in a test environment first.  It would also be good practice to take an Administrative Backup in your production system to ensure you have good backup copies of your plans (in addition to any normal SQL Server backup).  Also worth mentioning at this point that you should really have the number of project administrative backups set to give you several versions of your plan (Project Retention Policy (versions) – under Server Settings, Database Administration, Schedule Backup. ‘DISCLAIMER OF WARRANTY ‘ ‘THIS FIX CODE IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND. ‘MICROSOFT FURTHER DISCLAIMS ALL IMPLIED WARRANTIES INCLUDING WITHOUT ‘LIMITATION ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR OF FITNESS ‘FOR A PARTICULAR PURPOSE. THE ENTIRE RISK ARISING OUT OF THE USE OR ‘PERFORMANCE OF THE CODE REMAINS WITH YOU. ‘ ‘IN NO EVENT SHALL MICROSOFT OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES ‘WHATSOEVER (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF ‘BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, ‘OR OTHER PECUNIARY LOSS) ARISING OUT OF THE USE OF OR INABILITY TO USE ‘THIS MACRO, EVEN IF MICROSOFT HAS BEEN ADVISED OF THE POSSIBILITY OF ‘SUCH DAMAGES. BECAUSE SOME STATES DO NOT ALLOW THE EXCLUSION OR ‘LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES, THE ‘ABOVE LIMITATION MAY NOT APPLY TO YOU.   ‘This macro attempts to work around the reporting publish failure that occurs when there are tasks ‘with baselines and where the BaselineCost contour is NULL. The symptoms that you see in the queue ‘for the “Reporting (Project Publish)” job has details similar to: ‘ ‘ ‘ ‘This code simply walks through the tasks in the tasks in the project and if there are ‘baseline(s) set, then the code sets a time scaled baseline cost = 0 on the day prior to ‘where the baseline start is scheduled.  This sets the baseline contour so that the ‘”Object reference not set to an instance of an object” problem can be overcome during the ‘reporting publish job. Sub FixPublish() Dim t As Tasks Dim tsv As TimeScaleValues Dim i As Long Dim bCalc As Boolean On Error Resume Next ‘get the current application calculation state bCalc = Application.Calculation ‘set calculation to manual (helps with performance while the code runs) Application.Calculation = pjManual Set t = ActiveProject.Tasks ‘walk through the tasks in the project. If a task as a baseline(s) then set a timescaled baselinecost = 0 For i = 1 To t.Count     If Not t(i) Is Nothing Then         If t(i).BaselineStart “NA” Then             Set tsv = t(i).TimeScaleData(t(i).BaselineStart – 1, t(i).BaselineStart – 1, pjTaskTimescaledBaselineCost, pjTimescaleDays)             If tsv(1).Value = “” Then                 tsv(1).Value = 0             End If         End If         If t(i).Baseline1Start “NA” Then             Set tsv = t(i).TimeScaleData(t(i).Baseline1Start – 1, t(i).Baseline1Start – 1, pjTaskTimescaledBaseline1Cost, pjTimescaleDays)             If tsv(1).Value = “” Then                 tsv(1).Value = 0             End If         End If         If t(i).Baseline2Start “NA” Then             Set tsv = t(i).TimeScaleData(t(i).Baseline2Start – 1, t(i).Baseline2Start – 1, pjTaskTimescaledBaseline2Cost, pjTimescaleDays)             If tsv(1).Value = “” Then                 tsv(1).Value = 0             End If         End If         If t(i).Baseline3Start “NA” Then             Set tsv = t(i).TimeScaleData(t(i).Baseline3Start – 1, t(i).Baseline3Start – 1, pjTaskTimescaledBaseline3Cost, pjTimescaleDays)             If tsv(1).Value = “” Then                 tsv(1).Value = 0             End If         End If         If t(i).Baseline4Start “NA” Then             Set tsv = t(i).TimeScaleData(t(i).Baseline4Start – 1, t(i).Baseline4Start – 1, pjTaskTimescaledBaseline4Cost, pjTimescaleDays)             If tsv(1).Value = “” Then                 tsv(1).Value = 0             End If         End If         If t(i).Baseline5Start “NA” Then             Set tsv = t(i).TimeScaleData(t(i).Baseline5Start – 1, t(i).Baseline5Start – 1, pjTaskTimescaledBaseline5Cost, pjTimescaleDays)             If tsv(1).Value = “” Then                 tsv(1).Value = 0             End If         End If         If t(i).Baseline6Start “NA” Then             Set tsv = t(i).TimeScaleData(t(i).Baseline6Start – 1, t(i).Baseline6Start – 1, pjTaskTimescaledBaseline6Cost, pjTimescaleDays)             If tsv(1).Value = “” Then                 tsv(1).Value = 0             End If         End If         If t(i).Baseline7Start “NA” Then             Set tsv = t(i).TimeScaleData(t(i).Baseline7Start – 1, t(i).Baseline7Start – 1, pjTaskTimescaledBaseline7Cost, pjTimescaleDays)             If tsv(1).Value = “” Then                 tsv(1).Value = 0             End If         End If         If t(i).Baseline8Start “NA” Then             Set tsv = t(i).TimeScaleData(t(i).Baseline8Start – 1, t(i).Baseline8Start – 1, pjTaskTimescaledBaseline8Cost, pjTimescaleDays)             If tsv(1).Value = “” Then                 tsv(1).Value = 0             End If         End If         If t(i).Baseline9Start “NA” Then             Set tsv = t(i).TimeScaleData(t(i).Baseline9Start – 1, t(i).Baseline9Start – 1, pjTaskTimescaledBaseline9Cost, pjTimescaleDays)             If tsv(1).Value = “” Then                 tsv(1).Value = 0             End If         End If         If t(i).Baseline10Start “NA” Then             Set tsv = t(i).TimeScaleData(t(i).Baseline10Start – 1, t(i).Baseline10Start – 1, pjTaskTimescaledBaseline10Cost, pjTimescaleDays)             If tsv(1).Value = “” Then                 tsv(1).Value = 0             End If         End If     End If Next ‘fix the project summary task With Activ
eProject.ProjectSummaryTask     If .BaselineStart “NA” Then         Set tsv = .TimeScaleData(.BaselineStart – 1, .BaselineStart – 1, pjTaskTimescaledBaselineCost, pjTimescaleDays)         If tsv(1).Value = “” Then             tsv(1).Value = 0         End If     End If     If .Baseline1Start “NA” Then         Set tsv = .TimeScaleData(.Baseline1Start – 1, .Baseline1Start – 1, pjTaskTimescaledBaseline1Cost, pjTimescaleDays)         If tsv(1).Value = “” Then             tsv(1).Value = 0         End If     End If     If .Baseline2Start “NA” Then         Set tsv = .TimeScaleData(.Baseline2Start – 1, .Baseline2Start – 1, pjTaskTimescaledBaseline2Cost, pjTimescaleDays)         If tsv(1).Value = “” Then             tsv(1).Value = 0         End If     End If     If .Baseline3Start “NA” Then         Set tsv = .TimeScaleData(.Baseline3Start – 1, .Baseline3Start – 1, pjTaskTimescaledBaseline3Cost, pjTimescaleDays)         If tsv(1).Value = “” Then             tsv(1).Value = 0         End If     End If     If .Baseline4Start “NA” Then         Set tsv = .TimeScaleData(.Baseline4Start – 1, .Baseline4Start – 1, pjTaskTimescaledBaseline4Cost, pjTimescaleDays)         If tsv(1).Value = “” Then             tsv(1).Value = 0         End If     End If     If .Baseline5Start “NA” Then         Set tsv = .TimeScaleData(.Baseline5Start – 1, .Baseline5Start – 1, pjTaskTimescaledBaseline5Cost, pjTimescaleDays)         If tsv(1).Value = “” Then             tsv(1).Value = 0         End If     End If     If .Baseline6Start “NA” Then         Set tsv = .TimeScaleData(.Baseline6Start – 1, .Baseline6Start – 1, pjTaskTimescaledBaseline6Cost, pjTimescaleDays)         If tsv(1).Value = “” Then             tsv(1).Value = 0         End If     End If     If .Baseline7Start “NA” Then         Set tsv = .TimeScaleData(.Baseline7Start – 1, .Baseline7Start – 1, pjTaskTimescaledBaseline7Cost, pjTimescaleDays)         If tsv(1).Value = “” Then             tsv(1).Value = 0         End If     End If     If .Baseline8Start “NA” Then         Set tsv = .TimeScaleData(.Baseline8Start – 1, .Baseline8Start – 1, pjTaskTimescaledBaseline8Cost, pjTimescaleDays)         If tsv(1).Value = “” Then             tsv(1).Value = 0         End If     End If     If .Baseline9Start “NA” Then         Set tsv = .TimeScaleData(.Baseline9Start – 1, .Baseline9Start – 1, pjTaskTimescaledBaseline9Cost, pjTimescaleDays)         If tsv(1).Value = “” Then             tsv(1).Value = 0         End If     End If     If .Baseline10Start “NA” Then         Set tsv = .TimeScaleData(.Baseline10Start – 1, .Baseline10Start – 1, pjTaskTimescaledBaseline10Cost, pjTimescaleDays)         If tsv(1).Value = “” Then             tsv(1).Value = 0         End If     End If End With             ‘set the application calculation state back the way it was Application.Calculation = bCalc             End Sub To use this macro you can follow these steps: 1. Open Project Professional 2007 and connect to your server instance having the problem. 2. Go to Tools > Macro > Security . 3. Note the Security Level . 4. Set Security Level to Low or Medium .  This will allow the macro to run. 5. Go to Tools, Macro, Visual Basic Editor (or alt+F11) 6. Copy the text from the macro above, from the first line of the disclaimer to the End sub line 7. Double click ThisProject in the Visual Basic Editor, and paste in the macro to the window that opens (probably titled Project1 – ThisProject(Code) 8. Save this plan as a file if you need to use again, as FixPublishError.mpp, and return to the normal Microsoft Project view (Alt+F11) 9. Open the plan whose Reporting (Project Publish) job fails. 10. Go to Tools > Macro > Macros… 11. Select the FixPublishError.mpp!FixPublish macro. 12. Click Run . It will take a few seconds to a minute for the macro to run. 13. Save and publish the plan. 14. Monitor the queue by going to PWA > Personal Settings > My queued jobs. 15. Confirm that the jobs related to your plan complete successfully. 16. Reset Security Level to what is was before changing it to Low. There is one condition that currently isn’t resolved by the macro, and that relates to hitting the NULL value for any ghost tasks you might have in your plan (these can exist due to dependencies on tasks from other plans).  It is possible that this will be resolved if the source project has already been fixed up – we are still reviewing this. Thanks to Adrian for the fix up macro, Sriram for helping get this blog post out and for DFS and Christoph for the posts on my blog raising the issue. Sorry for the inconvenience this issue has caused you, and I will update this post as we get more information regarding a more permanent fix. Finally here are some lines from the ULS logs that relate to this problem – just to ensure that the search engines have something to digest and to help those searching on these terms. 05/23/2012 10:38:09.29    Microsoft.Office.Project.Server (0x0AE4)    0x0EE8    Project Server    Project Server Reporting    9e09    High    PWA:https://servername/PWA, SSP:SharedServices1, User: DOMAINUser, PSI:   [RDS] ReportProjectPublishMessage for project 0b9e52ec-6bb6-4ca3-823b-d7561d821d1c failed. Error: System.NullReferenceException: Object reference not set to an instance of an object.     at Microsoft.Office.Project.DataEdit.Reporting.ReportingData.GetTaskBaselineCoreTimephasedDataSet(BaselineEntity[] baselineEntityArray, Int32 nIntervalLengthMinutes)     at Microsoft.Office.Project.Server.DataAccessLayer.ReportingProjectDal.TransferTimephasedData[T](Guid projectUID, TimephasedTransferInfo transferInfo, ReportingData timephasedReportingData, ProcessSourceData`1 processSourceData, GenerateTimephasedDataSet`1 generateTimephasedData, Int32 pageSize, LogStatsMethod logStats)     at Microsoft.Office.Project.Server.DataAccessLayer.ReportingProjectDal.UpdateTasksTimephasedData(Guid projectUID, ReportingProjectData projectData, ReportingData timephasedReportingData, Int32 pageSize, String& transferPhase, LogStatsMethod logProjStats)     at Microsoft.Office.Project.Server.BusinessLayer.ReportingLayer.ProjectPublishMessageProcessor.SaveProjectTimephaseData(String& transferPhase)     at Microsoft.Office.Project.Server.BusinessLayer.ReportingLayer.ProjectPublishMessageProcessor.runRDSTransformation(ReportProjectPublishMessageEx projectChangeMessage). Phase: SetAssignmentBaselineTimephasedFixedCost    3ff34f2c-815e-4f95-9798-7f17dc5737db 05/23/2012 10:38:09.29    Microsoft.Office.Project.Server (0x0AE4)    0x0EE8    Project Server    Project Server Reporting    9e05    Critical    Standard Information:PSI Entry Point:   Project User: DomainUser Correlation Id: 3ff34f2c-815e-4f95-9798-7f17dc5737db  PWA Site URL: https://servername/PWA  SSP Name: SharedServices1  PSError: ReportingProjectChangeMessageFailed (24006) RDS: The request to synchronize change(s) to project Project UID=’0b9e52ec-6bb6-4ca3-823b-d7561d821d1c’. PublishType=’ProjectPublish’ failed.  Message: ‘ReportingProjectChangeMessageFailed’  Error:Object reference not set to an instance of an object.    3ff34f2c-815e-4f95-9798-7f17dc5737db 05/23/2012 10:38:10.30    Microsoft.Office.Project.Server (0x0AE4)    0x0D18    Project Server    Project Server Queue    7h5x    Medium    PWA:https://servername/PWA, SSP:SharedServices1, User: DOMAINSSPAdmin, PSI:   [QUEUE] ProjectQ: Group  d4364343-3402-45ef-afd0-f84c8834e5d3 type = ReportingProjectPublish aborted at Message 1    e45e8c63-38fa-49d8-9555-710851b22c90

ANNOUNCING: Microsoft Project Server 2010 Burn & Forecast and Spend Report Solutions

I am pleased to announced the release of two Microsoft Project Server 2010 reporting solutions on TechNet Gallery: Project Burn and Forecast Report and Project Spend Report . Both solutions can be deployed and tested with the Microsoft Project Server 2010 v2 Demo Virtual Machine . These reporting solutions leverages Microsoft SQL Server 2008 R2 Reporting Services and were created by Emmanuel Fadullon, a Principal Consultant for Microsoft Consulting Services (MCS). The User Guide for the Contoso Project Burn and Forecast Report demonstrates how to use the Project Burn and Forecast Report to estimate the projected spend rate (“Average Monthly Burn Rate”) based on the current spend plan, and it also allows you to forecast a spend plan based on a what-if spend rate in a budget-reduction scenario. The Contoso Project Spend Report User Guide walks you through using the Project Spend Report particularly the use of a key concept — a unifying Expense Code, to track Project Total Actual Cost.  The Total Actual Cost is then categorized into its component costs by project work alongside sustainment and common services activities maintained in associated projects in lieu of Administrative Time and Timesheet entries in order to facilitate cost categorization by Expense Code. Please note that these reporting solutions are not supported by Microsoft Premier Support and instead are meant to demonstrated the rich reporting capabilities of Project Server 2010. We recommend working with Project & Portfolio Management (PPM) Partners or MCS to modify these solutions to meet your specific reporting needs. PS: while on the reporting topic, I also recommend to check Alex Burton’s recent post: SQL Server 2012 & Project Server, Part 2– Business data visualisation with PowerView

100 hours of free Microsoft PPM Content from customers, partners, MVPs and Microsoft!

Following yesterday’s announcement on the main Microsoft Project blog: Microsoft Project Conference 2012 Session Recordings Are Live! please find below the full list of sessions (by code, presenter’s company and title). I have also attached an Excel spreadsheet with this list to this post (navigate to the end). Grab you favorite beverage and snacks and enjoy the shows! PS: there are four outstanding recordings we are still in the process of publishing and I will update this list once they are live. PC200, AMD Corp,Detangling project demand, resource supply and capacity with Project Server PC201, AXTEL, X-treme EPMO:   Creating the Enterprise Project Management Office and Culture at AXTEL PC202, Exxaro, Exxaro Resource: Project 2010 Case Study in Mining Industry PC203, Kemira Oyj, Rapid Implementation of the Microsoft PPM solution and SAP-integration in a global Chemical company PC204, Marquette University, Project and Project Portfolio Management that Works PC205, Pioneer Hybred, Doing More with Less: Effective Capacity Planning and Reporting PC206, Shire, Microsoft Project replaces Primavera:   Why Shire made the switch and trusts Microsoft Project Server 2010 to manage $300M PC207, U.S. Environmental Protection Agency, EPM@EPA: Accelerating Maturity in the Cloud PC208, Verizon Communications, How Verizon saved millions with Microsoft PPM: Turning data into useful information PC210, Project Step by Step, Care and Feeding of the Zealots: Why Project users are disproportionately invested in their product, and how you can help spread the love PC211, Applepark Ltd, Project Server REAL LIFE (not Second Life!) customer case studies PC212, Advisicon, Landing Strategy in 3 Steps PC213, BrightWork, The Phoenix Shoot Out – Which is the best solution for Project Management – Excel or SharePoint or Project Desktop or Project Server? PC214, FOXit (Pty) LTD, Extending PPM to more than project and portfolio management, operationalize your business PC215, Innovative-e, Deliver SharePoint Success: Key Steps to Reap The Business Benefits PC216, Novant Health, Portfolio Management – Just what the Doctor Ordered PC217, SharkPro Software, Microsoft PPM Total Cost and Benefit Workshop – Finding YOUR ROI PC218, SharkPro Software, Moving on Up!   Migrating from other PPM tools to Microsoft Project Server 2010 PC219, The Project Group, 10 “Golden Rules” to work with Microsoft Project! PC220, The Project Group, Leveraging Microsoft PPM for Capital Project Management within the Utility and Construction Industries PC221, Tribridge, Achieve Complete Project Cost Planning & Insight: Integrating Microsoft Project Server 2010 with financial systems like Dynamics AX PC222, UMT, Quickly Build Governance Workflows & Effectively Control Financials with UMT Project Essentials Pro   PC223, UMT, Gartner Perspectives – Going Beyond PPM – Effectively Manage Your Entire IT Portfolio Decisions with Project Server 2010 PC224, SBS Group, The Integration of ProjectManagement and Project Accounting with Dynamics SL PC226, Gartner, The Gartner perspective: PPM Industry Trends and Adoption Best Practices PC227, Microsoft, The 411 on Office 365 PC228, Microsoft, Cloud Bursting Techniques with SharePoint Online PC229, Microsoft, Microsoft Project 2010 Desktop Overview PC230, Microsoft, Microsoft Project Server 2010 Overview PC231, Microsoft, Tracking a Microsoft Project Release Using Project PC232, Microsoft, Microsoft Project 2010 Desktop Reporting Overview PC233, Jornata, Critical Success Factors for a Successful SharePoint Deployment PC234, Jornata, Managing and Finding Content in SharePoint 2010 PC235, LehnertCS, LLC, A Successful implementation with Microsoft Project Server is more than technical? PC236, msProjectExperts, Microsoft Project 2010 Mania PC237, Projectum, Manage your resources without Excel – yes it is possible! PC238, The Versatile Company, Modeling Traditional, Serial and SCRUM Techniques in Project 2010 PC239, Innovative-e, Leveraging Project 2010 with Office 365 for Project Management Success PC240, PlanFurther LLC, The painters, the policemen and the Pope… understanding task movement in   Microsoft Project 2010 PC241, PMP Specialists, Resource Management – Putting the Puzzle Pieces Together! PC242, PTC, Maximize Visibility & Accountability in New Product Development Portfolios PC300, Ameren, YOU CAN DO IT: How to Implement Project 2010 Server Yourself (with Little or NO Consulting $$) PC301, ARM, 8 Billion Reasons why ARM chose ProjectServer 2010 PC302, AT&T Business Services, Pearls and Pitfalls – Realizing Real Business Benefits with Microsoft Project Server and SharePoint PC303, Microsoft, Leverage the capabilities of SharePoint to light up Microsoft Project Server PC304, Ingersoll-Rand, Across Divisions, IT, Engineering and the World; a true Enterprise-wide PPM client case study with Ingersoll Rand PC305, WilmerHale, Critical Chain Project Management using Microsoft Project Professional 2010 and Prochain: Implementing Project Portfolio Management PC307, Microsoft, Lessons learned implementing Enterprise Innovation Programs PC308, Bogdanov & Associates, Delivering Microsoft EPM Success: Essential Steps to Map People, Process and Tools PC309, Campana & Schott, 3 steps to cut the Gordian knot in resource management PC310, Campana & Schott, Deliver successful program results in matrix organizations PC311, Expit, Bridging Project Management and IT Service Management domains using Microsoft Project Professional 2010 PC312, msProjectExperts, Implementing PMI’s Practice Standard for Scheduling in Microsoft Project PC313, Pcubed, Project Scheduling Revisited: Performance Tuning Your Scheduling Practices PC314, Revlon, Practical TFS and Project Server integration in mid size enterprise PC315, Meijer, Journey from 2007 to 2010 PC316, Microsoft, Migration Best practices from Project Server previous versions PC317, Microsoft, Everything you want to know about designing and implementing Project Server Security Model PC318, Microsoft, Take Control of the Timesheet and Tasks Updates in your Project Server 2010 Environment PC319, Microsoft, Best Practices Troubleshooting Project 2010 Deployments – Part 1 PC320, Microsoft, Getting up to speed with Project2010 Extensibility PC321, Microsoft, Exploring Project Server Technical Content PC322, Advisicon, Integrating Data from External LOB Systems (SAP, ClickSoft, etc.) for Strategic Resource Planning & Forecasting PC323, PMO Logistics Inc., Everything You Wanted To Know About Administering Project Server 2010 But Were Afraid To Ask PC324, Corporate Project Solutions, Integrating SharePoint and Project Server 2010 – Deployment Approaches, Integration Options and making the most of the SharePoint Enterprise Features. PC325, FluentPro, Project Server 2010 configuration management, migration, merge and documenting PC327, Project Hosts, Going online with PPM — what you need to know PC328, Microsoft, Project Server and Dynamics AX – Completing the Lifecycle from Project Estimation to Revenue Recognition PC329, Microsoft, Take Your Project Reporting To The Next Level: Dashboards And Other Tools PC330, SOLVIN, Breaking the Boundaries of Time Tracking in Project Server: TrackTimesheet a seamlessly integrated extension for time reporting PC331, msProjectExperts, Tips, Tricks, and Best Practices for Using Project Server 2010 PC332, Nintex, Building advanced Project Server workflows with Nintex Workflow for Project Server PC333, ProjectPro Corporation, Critical Path 2.0 PC334, UMT, Turning Project Data into Real World Reports: An Overview of Business Intelligence Options PC335, UMT, Unleashing the Value of Earned Value: Applying Schedule and Cost Controls to Measure ProjectPerformance PC336, Advisicon, Making the Most of Project Professional When Managing Multiple Projects PC337, Agora Consulting Partners, Be Loved By Your Development Teams: Using the Team Foundation Server – Project Server Connector PC338, SharePoint911, SharePoint Governance isn’t just for Grandma PC339, EPM Architects, Managing Resource Supply and Demand with Microsoft Project Server 2010 PC341, QuantumPM, Plannin
g Innovation Adoption with IPM : Tips for a Successful Pilot PC342, Milestone Consulting Group, YJTJ (Your Job Tool’s Job)™ – Working in Concert with Microsoft Project PC343, Symnoian, LLC, Closing the Status Loop with Windows 8 Metro and Project Server’s Task Update Feature PC349, Microsoft, Best Practices Troubleshooting Project 2010 Deployments – Part 2 PC400, Allianz Life, Bean Counting in the Cloud: Merging hosted EPM and internal GL data to optimize financial reporting. PC401, Ubisoft, Tracking Historical Project Activity Data using the Microsoft Business Intelligence Suite PC402, DeltaBahn, Planning and Executing a Multi-Instance, Multi-Version Project Server Migration PC403, Milestone Consulting Group, Extending and Customizing the Project Server 2010 Timesheet to Drive Adoption and Achieve Business Results

Project 2010: Problems since the February CU if you have a semi-colon (;) as your list separator

In the February Cumulative Update for Project 2010 we fixed an issue described as: You create an .mpp file that was saved from a Project server by using the Save for Sharing command. When you try to resave the .mpp file back to the Project server in Project 2010, the save process fails, and you receive the following error message: Project Server was unable to find the specified resource. If the problem continues, contact your server administrator. This issue occurs when the list separator character that is contained in resource names within the .mpp file on the client differs from the list separator character on the server. We are now finding that in fixing this, we broke a couple of other things that you may be running into if you are using a list separator that is a semi-colon (;).  This is most likely in Europe or Canada, but I’m sure there are plenty of other places that could see this too.  The issues are all related and we are working on a fix for them all, but just wanted to share some workarounds in case you are hitting these.  The different scenarios I have seen so far are:   Using Task Information dialog to remove or add resource assignments to a task Using the Assign Resources dialog to add multiple resource assignments Using the Task Information Dialog to set predecessors or successor information So here are some examples of what can go wrong – and these examples need certain settings to be in place before you would ever see them, so don’t feel left out if you don’t experience any of these issues. This first example assumes you have the semi-colon as list separator and also this is used in your resource names as a separator between first and last names.  So you have a task that is already assigned to Smith; Brian and Jenkins; Adrian, and you want to add Fiessinger; Christophe.  So initially your Task Information dialog looks like this: Then you add Fiessinger; Christophe – and click OK – then you will see this: That doesn’t look quite right?  Opening up the Task Information dialog again I see: It has split each name in two, and created 6 new local resources – and assigned them.  A couple of things here – it will not lose actual work – any assignments that already have work will be OK – and will not get un-assigned – but the extra local resource will still get created.  Undo will also put things right.  The same thing can occur even if you are removing a resource using this same dialog.  If I removed Jenkins; Adrian, it would create Smith and  Brian as two local resources.  The workaround here is to use the Resource Names column in one of the views such as the Gantt view – and select/deselect from the drop down. The second issue is with the Assign Resources dialog (which is why it isn’t a good workaround for the first issues) and it has a couple of different scenarios depending on your use of the list separator in the resource names.  If you do have the separator – like the example above – then you cannot assign from the Assign Resources dialog – the Assign button is disabled – as I show here.   However, if I choose a resource with no list separator in the name the Assign button is active: The further issue with the Assign Resources comes when you make multiple selections that do not contain the list separator, such as the following: When I click Assign – I see an extra resource in my list, with a very cool name – “adrian jenkins;brian smith;christophe fiessinger” – and he/they has/have been assigned to the task. If I look at the resource sheet I can see “adrian jenkins;brian smith;christophe fiessinger” has been added as a new local resource.  The workaround here, assuming you do not have the list separator in the name, is to assign one at a time, or of course the Resource Name column in the Gantt view can be used as for the previous example. The last scenario is back to the Task Information dialog, but this time we are looking at the Predecessors tab.  Say we have 3 tasks, T1, T2, and, you guessed it, T3.  We open the Task Information dialog for T3, go to the Predecessors tab and enter either the IDs of the first two tasks, or select them in the drop down like this, then press OK, we get the following error message.  There is a problem with the predecessor information. The workaround for this one is to go to a view such as the Gantt view, and use the Predecessors column, and enter 1,2. For each of these you could also work around them by setting your list separator to not be the semi-colon – but I appreciate that might give you some issues elsewhere – as it is a global setting on your PC.  If you wish to try this you can go to Control Panel – Clock, Language and Region – Change the date, time or number format, then select Additional Settings then change the List Separator from a semi-colon to a comma, for example.  Sorry for any inconvenience this problem has caused you – and I will update this posting once I find out when a fix will be coming along – and potentially any other scenarios that I am made aware of where this bug rears its ugly head, and thanks to the customers that have quickly brought this to our attention.

If you didn’t get to Phoenix…

Brian Ru just published a blog post over on the main Project blog announcing the release of all the recorded content from the Project Conference 2012 – on the Project Channel of Microsoft Showcase .  So if you didn’t get to Project Conference 2012 this is a great chance to catch up with all the great content.  For good support topics see PC319 and PC349 – as recently “leaked” on this very blog… Enjoy!