Check out my new blog at

Monday, February 01, 2016

Project Server CSOM, REST, oData, and Deployment (2013 & 2016

CSOM, Rest, and oData Support

Starting with SharePoint 2010, a new integration technology was introduced called CSOM, or Client Side Object Model.   The API is an alternative to using web services.  It is a much cleaner API.  Not only can you utilize CSOM in a .NET application such as WinForms or WPF, you can use it in your browser-based apps.  If you prefer REST, you are in luck as it too is supported.

When Microsoft released Project Server 2013, the product group embraced the CSOM model .  It is important to understand what it is capable of and its limitations.   In Project Server 2013, many of the PSI web services you are accustomed to programming against are still available.  Visit this page for the full set of types and examples to get you started.

Project Server 2013 supports both online and on-premise implementations.  Using oData is really the best way to get at data which was once stored in the Reporting Database.  Project Server’s oData reference can be found here.

One thing you will notice right away is that Project Server 2013 ships with a single database.  The drafts, published, archive, and reporting database are combined and schemas are used to separate the various content containers.

The introduction of the Project Calculation Service puts the server-side scheduling engine to closer parity with the scheduling engine implemented in Project Professional.  This a great new feature.  For an overview of Project Server 2013’s architecture, visit this page.

In Project Server 2016, which is heading toward RTM, introduces even more changes.  You can download Beta 2 here.

Project Server 2016 Deployment

In 2016, Project Server is included in the SharePoint install by default—much like the Visio, Excel, and Access services.  You still have to purchase a server license.  Install SharePoint and run the configuration wizard just as you normally would.

To enable Project Server use the SharePoint PowerShell commandlet enable-projectserverlicense Y2WC2-K7NFX-KWCVC-T4Q8P-4RG9W.  This will give you a fully featured 180 trail.

The PWA site provisioning UI is mostly gone.   To create a PWA site, follow the steps below:

  1. Create a site collection for PWA
  2. Using SharePoint PowerShell, execute this command: New-SPSite http://ps2016/pwa –OwnerAlias [DOMAIN]\[USER_NAME] -Name “PWA 2016” -Template “pwa#0”  (note that the server and site collection may be different—that part is up to you.
  3. Also using SharePoint PowerShell, run this command: Enable-SPFeature pwasite -Url http://ps2016/pwa
  4. Optionally, you can enable the security UI in PWA.  Again PowerShell: Set-SPProjectPermissionMode, which will prompt for the PWA URL and the Mode, which is ProjectServer

Credit for the PowerShell commands:


No comments :


Content on this site is provided "AS IS" with no warranties and confers no rights. Additionally, all content on this site is my own personal opinion and does not represent my employer's view in any way.