This blog focuses on customizations and programming for Project Web App, Project Server, Project Professional and Project Standard. Includes User Interface (UI) customizations, Project Server Interface (PSI) and Visual Basic for Applications (VBA) Programming. It also covers Business Intelligence.
The MSDN Webcast: Understanding Project Server Interface (PSI) in Project Server 2010 (Level 300) presentation is available for download, when you register for the event. Several of the sample applications that were demonstrated in the webcast are available in the Project 2010 SDK download. The TimesheetSamples.zip file that is attached to this blog post includes the two example solutions for timesheets. (Steven Haden and Olivier Laymand, Microsoft Corporation, did the webcast and created the sample code.)
The Project 2010 SDK download and the MSDN online release are both updated. The updates have the same URLs as previous releases:
New conceptual / how-to topic:
·Topic updates for MSDN online, since the last update on March 7, 2011: 20 conceptual and how-to topics have updates. Most changes are relatively minor; the Change History table at the bottom of each topic shows significant changes.
600 managed code types (classes that include new descriptions for one or more properties, methods, and events) are updated. There are new code samples for the following PSI methods:
New / updated items in the Project 2010 SDK download, which was last updated March 7:
Just to highlight a webcast not to miss…
Starts: Thursday, June 23, 2011 8:00 AM, Time zone: (GMT-08:00) Pacific Time (US & Canada) Duration: 90 Minutes
This webcast helps you understand the changes and new features of Project Server Interface (PSI) in Microsoft Project Server 2010. We cover the following topics: dual interface ASMX and WcfImpersonation with WCFTimesheet, event handlers with impersonation, Single Entry Mode (SEM), and using a Project Web App (PWA) web part in other Microsoft SharePoint sites. Presenters: Steven Haden, Senior Consultant, Microsoft Corporation and Olivier Laymand, Senior Consultant, Microsoft Corporation Steven Haden is a senior consultant working for Microsoft Services in France. He is involved in large Microsoft Project Server and Microsoft SharePoint deployments. Steven is interested in both the architecture and the development of solutions. He is the author of the white paper "Hitchhiker's Guide to Demand Management"; to download it, visit http://go.microsoft.com/fwlink/?LinkId=200608. Olivier Laymand is senior consultant from Microsoft Services working on large SharePoint and Project Server deployments. He is involved in solution architecture definitions, development best practices and governance.
More details and registration.
Service Pack 1 (SP1) for Project Server 2010 enables you to use the UpdateStatus method to edit timephased data for manually scheduled tasks. Before SP1, you could update status only for automatically scheduled tasks. The attached UpdateStatus_ManualTasks.zip file contains the Visual Studio 2010 solution that will be included in the next update of the Project 2010 SDK download.
The UpdateStatus_ManualTasks example is a test application that does the following, for a manually scheduled task or an auto-scheduled task:
Parses the project name, task name, number of hours worked, the optional assigned resource, and an optional status comment.
If no resource is specified, assumes the application user is assigned to the task.
Gets the GUID for the user assigned to the specified task.
Gets and validates the assignment data. Assumes only one resource is assigned.
Creates the changeXml string for the UpdateStatus method. For a simple test, converts reported hours to percent complete (maximum 100). If the application user specifies a different resource, adds the ResID attribute to the Assn element in the changeXml string.
Calls UpdateStatus, and then calls SubmitStatusForResource, for the single assignment.
Calls ReadStatusForResource to get an updated StatusingDataSet.
The application also writes the datasets and the changeXml value to XML files, for use in testing.
Note: Until you install SP1, the UpdateStatus test application will work only with automatically scheduled tasks. SP1 will be available the end of June, 2011.
To use the UpdateStatus test application, do the following:
Use Project Professional to create a test project, add two manually scheduled tasks, set the task duration and start date, and then add yourself and one other user as resources. Assign one task to you and the other task to the other user.
For example, name the project Test project, name the tasks T1 and T2, and then set the duration of each task to three days. Assume your user name is User 1, and the other user is User 2. Assign T1 to User 1 and assign T2 to User 2.
In the app.config file, change the WCF endpoint address for the Project Web App instance you are using.
Run tests, using various parameters. See the Usage method in the attached Program.cs file for parameter information. For example, run the following tests in a Command Prompt window:
After each test, check the Approval Center in Project Web App for status updates.
When you add a manually scheduled task that does not have a start date or duration, the default is eight hours of work. You can still assign a resource to the task and update the status.
For example, if a task T3 has no start date or duration, and you use the UpdateStatus test application to set six hours of work for the assigned resource, Project Server sets the start date for T3 to the project start date, and then adds six hours of actual work. After accepting the status update, you can add the Actual Work column and the Remaining Work column to the Gantt Chart view in Project Professional . The work for T3 is eight hours, actual work is six hours, and remaining work is two hours.
If you add the Actual Work row to the Details pane in the Resource Usage view or the Task Usage view, you can also see the six hours of actual work.
For more information about changes in SP1, see Announcing Service Pack 1 for Microsoft Project & Project Server 2010 in the Project team blog.