Using the updated ChangeXML utility for Statusing

The Statusing methods in the Project Server Interface (PSI) in Microsoft Project Server 2010 enable one user to read, submit, and update assignment and task status for another user, without resorting to impersonation. In the Project Server 2007 SDK, the How to: Generate ChangeXML for Statusing Updates article shows how to generate the changeXml parameter…

2

Reading Enterprise RBS values: the Easy Way and the Not-So-Easy Way

There are a couple of ways to programmatically get the Resource Breakdown Structure (RBS) value for a Project Server user. The simplest way is to query the Reporting database, for example: SELECT [ResourceUID] ,[ResourceName] ,[ResourceBookingType] ,[ResourceIsActive] ,[RBS] FROM [ProjectServer_Reporting].[dbo].[MSP_EpmResource_UserView] AS res WHERE res.ResourceName = N’Linda Jones’ The result on my machine is: ResourceUID ResourceName ResourceBookingType…

2

Creating a Web Part that Lists Projects with a Specified Custom Field Value

To list all projects that have a specified value of a custom field, the easiest solution is to develop a PSI extension that queries the Reporting database (RDB) in Project Server 2010. When you install the attached ListProjectsWebPart_JSGrid.zip file, the ListProjectsWebPart_JSGrid\ListProjects_PSIExtension subdirectory includes complete code samples to create and test the ListProjects PSI extension. The…

4

Creating a Project for a Department, and Using the WCF FaultException

When you add a Project Departments custom field to a ProjectDataSet.ProjectCustomFields table, do not set the value of the MD_PROP_ID property. Project Server automatically adds a value when it creates the project. The CreateProject4Department code example shows the data in the ProjectDataSet before and after the call to QueueCreateProject. The WCF-based CreateProject4Department example in the attached…

0

RTM update of the Project 2010 SDK

The Project 2010 SDK download and the MSDN online release are both published, and the Project Developer Center portal is updated. They have the same URLs as previous releases: Project Developer Center: http://msdn.microsoft.com/en-us/office/aa905469.aspx <– This is the place to start. All of the portal pages are updated, including the Videos and Webcasts page. SDK Online:…

0

Custom Field and Lookup Table Webcast

Hello, Attached is my source code and power point presentation of today’s webcast on custom fields and lookup tables: CustomFieldCRUD – This a very simple application that shows how to create, read, update and delete custom field definitions on Project Server 2007 using the PSI. PublishProjects – This is an application that was written for…

6

Reading Assignment Enterprise Custom Field Values with VBA

Hello, There has been a number of people asking how to read assignment enterprise custom field values with VBA. In fact, we ran into this issue internally with our dogfood efforts and fixed it in SP1. So, if you need to get/set assignment custom field values, the first step is to download SP1: http://www.microsoft.com/downloads/details.aspx?FamilyID=cec3e1e2-d802-4a03-bc78-05c48472559b&displaylang=en Once…

3

Reporting Database Extensions: Local Custom Fields Custom Code

Introduction This custom solution builds on the Project Server 2007 server-side event model to cache a report-friendly copy of Project Local Custom Fields in the Reporting database. The following data is cached: Task Text Custom Fields (with and without lookup tables) by Project Lookup table values by Project Task Outline Code values by Project The…

2

Local Custom Fields

Introduction This post contains interim documentation for tables in the Published database of a RTM-edition Project Server 2007 installation. Entities in this schema are subject to change without notice. This documentation is made available on a “best efforts” basis, Microsoft Product Support Services have not been trained in its usage and will not offer technical…

1

Working with the Custom Fields Data Table

There have been a number of inquiries with regards to the custom field column definitions. So here they are: MD_AGGREGATION_TYPE_ENUM: Specifies the roll up type for a custom field. MD_ENT_TYPE_UID: Specifies the type of entity (project, task, or resource) for the custom field. MD_LOOKUP_TABLE_UID: Specifies the GUID of the lookup table to use for the…

1