Publishing Projects based off a Project Custom Field Value


As part of the development process for the next version of Project, we are heavily relying on Project to manage all the work that is happening across team. As part of the process, we require up to date status reports. All the work is spread across 40 project plans, so we cannot rely on PMs publishing projects daily. To ensure the status reports are up to date, we publish all the projects nightly by running a custom application as a scheduled Windows task:



Since we only want to publish our team's projects and cannot publish other teams projects on the server, we tag all of our team projects with text custom fields that have associated lookup table to ensure that everyone on the team is using the same tags:


To setup the custom field and lookup tables:

  1. Log onto Project Server as an Administrator

  2. Click on "Server Settings" then click on "Enterprise Custom Field Definition"

  3. Scroll to the bottom of the page and click "New Lookup Table". We created a lookup table called "Office Division", which has all the divisions within Office:


  4. Next, create a custom field, which we called "Office Division", and associate it to the lookup table:


The application to publish the projects nightly is attached to this post. It is a fairly simple application. At the top of the program class, we have set a few constants. If you wanted to try out this application, you should just have to change these constants and compile the application. These constraints are self explanatory:

const string ls_projURL = "http://Office/PWA/";     // Server URL
const string ls_CustomField = "Office Division"; // Custom Field
const string ls_LookupTableValue = "Project"; // Value in the lookup table

Once we had the application built, we simple set up a scheduled task in Windows to run the application nightly:


Chris Boyd

Comments (3)

  1. Paul Congdon says:

    Thanks Chris for posting this.  Something we’ve wanted to do but haven’t had time.  By taking this and building on it, we could set up a framework to manage auto-publishing across PWA instances and organizations.  Thanks.

  2. Musaddiq Ahmed Shareef says:


    I am trying to get sharepoint template and need to apply to MS PWA(Project Web Access),

    I have been trying get sharepoint template GUID using MS PSI(Project Server Interface) web services but I am not able to get GUID

    I tried to access from sharepoint object model but was showing GUID is all zeros which is not correct, and

    I am not able to find my sharepoint custom template 12hiv folder but I didn’t see.

    I have tried to hardcode GUID value of particular .stp file(If a .stp file renamed with extension .cab then we can see a manifest.xml)

    I have tried to access Content DB of sharepoint to get any solution but not able find any clue.


Skip to main content