Archive

Author Archive

Getting started with #ProjectOnline Part 9 #PS2013 #Office365 #Project #PPM #SharePointOnline #PM #SP2013

Paul Mather
I am a Project Server and SharePoint consultant but my main focus currently is around Project Server.
I have been working with Project Server for nearly five years since 2007 for a Microsoft Gold Certified Partner in the UK, I have also been awared with the Microsoft Community Contributor Award 2011.
I am also a certified Prince2 Practitioner.

This article has been cross posted from pwmather.wordpress.com (original article)

This is part 9 of the “Getting started with Project Online” series and the final part. This should have been posted months ago but I didn’t realise I missed it, sorry for the delay! In this post we will look at the reporting options for Project Online, specifically Project ODATA and Excel / Excel Web App. The focus will be on the ODATA queries rather than the presentation layer. The post will also touch on other reporting options for Project Online. In the last post we looked at the different places in PWA where data can be viewed and edited. If you missed the last post, see the link below:

http://bit.ly/OuohNu

Firstly a bit of background for Project ODATA. The Project Online / Project Server ODATA feed was introduced by Microsoft to act as an access point to the Reporting schema in the Project Web App database. For those of you who are familiar with Project Server (On-prem) most of the reports would have read data directly from the Reporting tables / views in the Project Server database using T-SQL. When Project Online was introduced as a cloud based solution, direct database access was not possible for many reasons but security / access being the main two. The answer was to build an API that accessed this data, that is where the ODATA feeds come in. ODATA is an open data protocol that provides HTTP/REST access to the Project Online reporting database schema. The Project Online ODATA feed is accessed via the PWA URL, append /_api/ProjectData to the end of the URL. For example http://Server/PWAName/_api/ProjectData – this is known as the service root URI (Uniform Resource Identifier). Project ODATA is available for Project Server 2013 (On-Prem) but you typically wouldn’t use ODATA on-prem for reports as you have the SQL server access. Also Excel reports that use ODATA on-prem will not refresh in Excel Services, they will only refresh the data in Excel. The ODATA feed is permission controlled, to access this API the user will need “Access Project Server Reporting Service” – this should be granted via a Project Server security group / SharePoint security group depending on what permission mode your PWA instance is using.

When building new reports always start in Internet Explorer (or a browser of your choice Smile) to fully test that the ODATA URLs work before taking these to Excel. Now we will move to Internet Explorer to see the data. Starting at the root /_api/ProjectData you will see all of the possible endpoints available:

image

If the user sees the following:

image

Disable the “Turn on feed reading view” in Internet Explorer.

To see all of the properties (fields etc.) available for each endpoint, use the metadata option. Append /$metadata to the URL /_api/ProjectData/$metadata:

image

Using these two URLs will help you build the URLs you need to meet the report requirements.

When querying any data source it is best practice to only return the data you need, filter out the data that is not required. This will make the report more responsive for the end user. The same applies with ODATA. Don’t just add the all of the ODATA endpoints (tables) to Excel and filter in Excel as this will not be efficient. Using this approach, Excel will download all of the data to the client then filter after, you want to filter at the source before the data is in Excel. The key options to use for optimising the ODATA queries are $select and $filter query options. The select query option will be used to select the properties (fields) that you want to use, an example can be seen below:

/_api/Projectdata/Projects?$select=ProjectName,ProjectId,ProjectCost,ProjectWork

To see what this does, see below:

With a select query option:

image

Without a select query option:

image

As you can see, using the select query option less information is returned, you only get the information you want rather than all the details that you probably don’t need. Depending on how much data you have in the PWA instance you will notice how much quicker IE returns the data when using the select query option compared to returning all properties. The next query option to look at is the $filter option. This will be used to filter the data returned. Before we look at the filter query option, there is something else to show for filtering. Some of the ODATA endpoints accept parameters, using the Projects() feed as an example. When loading the Projects() data you will see example URLs to show you how to access data for that particular project, see the line highlighted below:

image

So using /_api/Projectdata/Projects(guid’f68e1341-50b0-e311-942e-00155d1521a1′) only data for that particular project will be returned. You would replace the GUID for the correct Project GUID in your PWA instance:

image

That can then be combined with the $select query option:

/_api/Projectdata/Projects(guid’f68e1341-50b0-e311-942e-00155d1521a1′)?$select=ProjectName,ProjectId,ProjectCost,ProjectWork

image

To filter ODATA queries, the filter query option is used. A common filter would be:

/_api/Projectdata/Projects()?$filter=ProjectType ne 7

This would filter out the timesheet project row. Another examples would be:

/_api/Projectdata/Projects()?$filter=ProjectType ne 7 and ProjectCost gt 15000

This would filter out the timesheet row project but also projects where the cost was less than £15000:

image

For demo purposes so that you could see the projects and select was also added:

/_api/Projectdata/Projects()?$filter=ProjectType ne 7 and ProjectCost gt 15000&$select=ProjectName,ProjectId,ProjectCost,ProjectWork

There are many functions and operators to create the filter logic, see the filter sections on the URLs below for examples:

http://bit.ly/1yw2RAZhttp://bit.ly/1nNTYzc

There are also other query options available to use such as $orderby and $top, you will find details on those in the links above also. Some Project specific examples are below:

/_api/Projectdata/Projects()?$orderby=ProjectWork

/_api/Projectdata/Projects()?$top=5&$orderby=ProjectCost desc

Project ODATA also has navigation properties, for example, you might want to get all risks associated with a particular project:

/_api/Projectdata/Projects(guid’78732475-eaf5-e311-be98-4c809328175b’)/Risks

image

That returns all of the risk properties (fields), to only select the properties you need use the select option:

/_api/Projectdata/Projects(guid’78732475-eaf5-e311-be98-4c809328175b’)/Risks?$select=ProjectId,ProjectName,RiskId,Title,Category,AssignedToResource

image

That should be enough information to get you started on building efficient ODATA queries, for more details see:

http://bit.ly/1yw2SF0
http://bit.ly/1yw2RAZ
http://bit.ly/1nNTXeO
http://bit.ly/1yw2SF5
http://bit.ly/1nNTXv8

Once you are happy that the ODATA queries are efficient as possible and returning the correct data in IE, these can be added to Excel so that you can generate your data models, relationships and reports. I wont cover that part in this post as it has been covered before here:

http://bit.ly/OuoiRB 

Another example is here:

http://bit.ly/1dq1BDq

As well as using Excel for the reports there are other options, for example you could use SSIS to export the data to a SQL database then use SSRS:

http://bit.ly/1jIsq9V

Or you could create reports in SharePoint/PWA pages using JavaScript, some examples here:

http://bit.ly/1hDi3rP

http://bit.ly/1skZxDW

http://bit.ly/1qnKnyI

That brings us to an end of the getting started series, there will be a summary post / quick reference guide following this.

I hope this has proved beneficial for those that are just getting started with Project Online Smile

Categories: Paul Mather, Work Tags:

#ProjectServer and #SharePoint 2013 July 2014 Cumulative Update #PS2013 #SP2013 #MSProject

Paul Mather
I am a Project Server and SharePoint consultant but my main focus currently is around Project Server.
I have been working with Project Server for nearly five years since 2007 for a Microsoft Gold Certified Partner in the UK, I have also been awared with the Microsoft Community Contributor Award 2011.
I am also a certified Prince2 Practitioner.

This article has been cross posted from pwmather.wordpress.com (original article)

The Office 2013 products will now get monthly cumulative updates, the Office 2013 July 2014 Cumulative Updates are now available, please see the links below:

http://bit.ly/1snYFCZ

Project Server 2013 July 2014 Server Roll up package:
http://bit.ly/1snYDuL

Project Server 2013 July 2014 CU:
http://bit.ly/U9NfUc

Project 2013 July 2014 CU:
http://bit.ly/1snYFTg

Also worth noting, if you haven’t done so already, install the March 2013 Public update: http://bit.ly/1lR8IgK or Service Pack 1: http://bit.ly/1snYFTh if installing the July 2014 CU.

As always, test these updates on a replica test environment before deploying to production.

For more details see the following:

http://bit.ly/U9Ngro

http://bit.ly/U9NfUg

Categories: Paul Mather, Work Tags:

#ProjectServer and #SharePoint 2010 / 2013 June 2014 Cumulative Update #PS2010 #SP2010 #PS2013 #SP2013 #MSProject

Paul Mather
I am a Project Server and SharePoint consultant but my main focus currently is around Project Server.
I have been working with Project Server for nearly five years since 2007 for a Microsoft Gold Certified Partner in the UK, I have also been awared with the Microsoft Community Contributor Award 2011.
I am also a certified Prince2 Practitioner.

This article has been cross posted from pwmather.wordpress.com (original article)

The Office 2013 June 2014 Cumulative Updates are now available, please see the links below:

http://bit.ly/1lpfwAX 

Project Server 2013 June 2014 Server Roll up package:
http://bit.ly/1mL5VBn

Project Server 2013 June 2014 CU:
http://bit.ly/1lpfuJ4 & http://bit.ly/1mL5W8d

Project 2013 June 2014 CU:
http://bit.ly/1lpfwRh

Also worth noting, if you haven’t done so already, install the March 2013 Public update: http://bit.ly/1lR8IgK if installing the June 2014 CU.

The Office 2010 June 2014 Cumulative Updates are now available, please see the links below:

http://bit.ly/1mL5W8f

Project Server 2010 June 2014 Server Roll up package:
http://bit.ly/1mL5W8h

Project Server 2010 June 2014 CU:
**** No individual Project Server 2010 packages for June 2014 ***

Project 2010 June 2014 CU:
http://bit.ly/1lpfwRn
Remember SP1 or SP2 is a pre-requisite for the Office 2010 June 2014 CUs.

As always, test these updates on a replica test environment before deploying to production.

For more details see the following webcast on June 24th 2014:

http://bit.ly/1mL5VRG

Categories: Paul Mather, Work Tags:

Supporting post for #ProjectServer 2013/ #ProjectOnline project fields displayed on project site #JavaScript #jQuery

Paul Mather
I am a Project Server and SharePoint consultant but my main focus currently is around Project Server.
I have been working with Project Server for nearly five years since 2007 for a Microsoft Gold Certified Partner in the UK, I have also been awared with the Microsoft Community Contributor Award 2011.
I am also a certified Prince2 Practitioner.

This article has been cross posted from pwmather.wordpress.com (original article)

As mentioned when I published the JavaScript code that displays project level information on the project site, here is the supporting blog post. The quick post that references the script is below:

http://bit.ly/1p1Se4p

The script can be downloaded from the Microsoft Script Gallery below:

http://bit.ly/1wWzbNv

Firstly, as with the other JavaScript files I have published you will need jQuery:

jquery-1.8.3.min.js – jQuery download

A later version of this library may work but this was the one I used / tested with.

Upload this library to your PWA site collection then update the script file with the correct location. I uploaded this file to the site assets library as you can see in the code below:

image

Like the Project Milestone JavaScript file I wrote, you will also notice the reference to the default SharePoint JS files and the two references to the Data tables CSS and JS files. I just referenced the hosted files but you could download these and host them yourself – if hosting the data table files yourself you will need more than just the two files reference here. For a production environment I would probably recommend downloading and hosting the jQuery data tables locally.

Once the script has been downloaded you will notice that I have used 6 default project level fields and 2 custom fields. The two custom fields are Programme and RAGPMStatus. These can be seen on the select below:

image

Programme and RAGPMStatus are custom to my test environment but I added these to show that default and custom project level fields can easily be added. To get the script to work you can either add these fields to your configuration – probably fine for a test environment, or modify the script to remove the custom fields or add your own. Here I will assume you want to add 2 of your own project level custom fields. Below are parts of the script that will need to be modified to accept your own 2 project level custom fields. For simplicity we will assume that the two new fields are Project Location and Project RAG. Project RAG is associated to a lookup table with the following 3 values: Green, Amber, Red.

Starting from the top of the script file here are all the places you will need to modify to get the two new fields in the code.

  • In the table, update the two column headers, replace Programme with Project Location and replace RAG Status with Project RAG.
  • Update the select query, replace Programme with ProjectLocation and replace RAGPMStatus with ProjectRAG.
  • On the first if statement replace Programme with ProjectLocation and replace RAGPMStatus with ProjectRAG.
  • In the data table processing section, replace Programme with ProjectLocation and replace RAGPMStatus with ProjectRAG for the aoColumns parameter
  • In the data table processing section for the aoColumnDefs parameter update the fnCreatedCell if statement with the correct lookup table values for the Project RAG field. So in this example replace On schedule [Green] with Green and Slipping but can mitigate [Amber] with Amber. You might also want to change the cell and font colors.

Once updated, add the script to your PWA site collection, I uploaded this to the Style Library. Then add a content editor web part to the project site and reference the uploaded project information JS file. If you want this to be on all project sites then you would need to create a new project site template with the JS file added.

Once added to a project site the project information will be visible for that project:

image

Categories: Paul Mather, Work Tags:

CPS’ #ProjectServer Plus solution is an Award Finalist at the #Microsoft Partner Awards #WPC14 #ProjectOnline

Paul Mather
I am a Project Server and SharePoint consultant but my main focus currently is around Project Server.
I have been working with Project Server for nearly five years since 2007 for a Microsoft Gold Certified Partner in the UK, I have also been awared with the Microsoft Community Contributor Award 2011.
I am also a certified Prince2 Practitioner.

This article has been cross posted from pwmather.wordpress.com (original article)

I am pleased to announce that CPS’s Project Server Plus solution was an Award Finalist in the recent Microsoft Partner of the Year Awards 2014 in the Project and Portfolio Management Competency.

clip_image002

http://bit.ly/1hvTq0n 

For a full list of winners and finalists see:

http://bit.ly/1hVYNAB

Categories: Paul Mather, Work Tags:

#ProjectServer 2013 / #ProjectOnline project fields displayed on project site #JavaScript #jQuery

Paul Mather
I am a Project Server and SharePoint consultant but my main focus currently is around Project Server.
I have been working with Project Server for nearly five years since 2007 for a Microsoft Gold Certified Partner in the UK, I have also been awared with the Microsoft Community Contributor Award 2011.
I am also a certified Prince2 Practitioner.

This article has been cross posted from pwmather.wordpress.com (original article)

Just a quick post to highlight a new script I have published this evening. This displays project fields on the associated project site. A full blog post will be coming soon that explains how to use the script and what would need modifying for your environment (custom fields etc.). The script can be downloaded below:

http://bit.ly/1wWzbNv

A screen shot of the output is below:

image

The RAG Status background colour and font colour update based on the custom field value.

Categories: Paul Mather, Work Tags:

Increase the width of a #ProjectServer text field on a PDP #PS2013 #ProjectOnline #JavaScript #jQuery #SharePoint

Paul Mather
I am a Project Server and SharePoint consultant but my main focus currently is around Project Server.
I have been working with Project Server for nearly five years since 2007 for a Microsoft Gold Certified Partner in the UK, I have also been awared with the Microsoft Community Contributor Award 2011.
I am also a certified Prince2 Practitioner.

This article has been cross posted from pwmather.wordpress.com (original article)

While working on a client site today the client wanted to increase the input box for a single line of text field on the PDP to help when typing data / viewing what you have already typed. As the box is quite small the text at the start of the box disappears as you type. See below:

image

Text entered:

“This is a new comment in a single line of text field. As I type the text disappears from view making it difficult to review”

One option is to increase the width of the input box. You can do this with JavaScript / jQuery. The jQuery to do this is below. As you can see you will need the input box id.

1 <script type="text/javascript" src="/PWA/SiteAssets/jquery-1.8.3.min.js"></script> 2 <script> 3 $(document).ready(function(){ 4 $("#idCF_41396333-22dd-e311-9430-00155d15d1fe").width(750); 5 }); 6 </script>

To get the ID, use the browser dev tools and select the correct element:

image

In the highlighted html you will see a property called ID, shown below in bold:

<input name="ctl00$ctl40$g_e2fda013_167b_4aa4_96c8_3c3437803054$ctl00$pfp_Repeater$ctl24$idCF_41396333-22dd-e311-9430-00155d15d1fe" title="Test Single Lint of Text" id="idCF_41396333-22dd-e311-9430-00155d15d1fe" type="text" size="50" maxlength="255" GUID="41396333-22dd-e311-9430-00155d15d1fe"/>

Copy the ID value and update the script below with the correct ID:

<script type="text/javascript" src="/PWA/SiteAssets/jquery-1.8.3.min.js"></script>

<script>

$(document).ready(function(){

$("#idCF_41396333-22dd-e311-9430-00155d15d1fe").width(750);

});

</script>

Add to the script to the correct PDP either using a script editor web part directly or save the js file, upload to PWA and reference the file using a content editor web part. The script will also need access to the jQuery library. Once complete you will see the wider input box:

image

Categories: Paul Mather, Work Tags:

#ProjectServer #project milestones on the project site #ProjectOnline #PS2013 #SharePoint #JavaScript #jQuery #SP2013 #Office365

Paul Mather
I am a Project Server and SharePoint consultant but my main focus currently is around Project Server.
I have been working with Project Server for nearly five years since 2007 for a Microsoft Gold Certified Partner in the UK, I have also been awared with the Microsoft Community Contributor Award 2011.
I am also a certified Prince2 Practitioner.

This article has been cross posted from pwmather.wordpress.com (original article)

This is another script I have written and published yesterday. It will display any project milestones on the associated project site. This JavaScript file can be downloaded from the Microsoft Script gallery:

http://bit.ly/1iJDdTn

To get the script to work you will need to download the following jQuery library:

jquery-1.8.3.min.js – jQuery download

A later version of this library may work but this was the one I used / tested with.

Upload this library to your PWA site collection then update the script file with the correct location. I uploaded this file to the site assets library as you can see in the code below:

image

Also notice the reference to the default SharePoint JS files and the two references to the Data tables CSS and JS files. I just referenced the hosted files but you could download these and host them yourself – if hosting the data table files yourself you will need more than just the two files reference here.

Add the script to your PWA site collection, I uploaded this to the Style Library. Then add a content editor web part to the project site and reference the uploaded project milestones JS file. If you want this to be on all project sites then you would need to create a new project site template.

Once added to a project site the milestones will be visible for that project:

image

The table can be sorted using the controls on the table.

If no milestones exist in the associated project then the table displays the default no data available message:

image

Create a milestone in that project and you will see that appear on the associated project site after publishing:

image

A nice simple script to allow your users to see project milestones on the Project Site. Download today and try it Smile

Categories: Paul Mather, Work Tags:

Most Business Value #App for #Office #Project 2013 just got better #Office365 #ProjectOnline

Paul Mather
I am a Project Server and SharePoint consultant but my main focus currently is around Project Server.
I have been working with Project Server for nearly five years since 2007 for a Microsoft Gold Certified Partner in the UK, I have also been awared with the Microsoft Community Contributor Award 2011.
I am also a certified Prince2 Practitioner.

This article has been cross posted from pwmather.wordpress.com (original article)

CPS’ free Task Auditor App for Project 2013 just got better. The App that won 1st place for Most Business Value in the recent App Awards now supports Dutch and Swedish locales. Download today:

http://bit.ly/1jeaOQV

See the blog post below for details on the app:

http://bit.ly/1dlln6y

Categories: Paul Mather, Work Tags:

#ProjectServer and #SharePoint 2013 SP1 re-released #ps2013 #sp2013 #office2013

April 29, 2014 Leave a comment
There is lot of noise over the web related to Service Pack 1 of MS Office 2013 products, it was released with much of an applaud then deactivated due to issue and then re-released with lot of clarifications 🙂 because in between deactivation and re-release of SP1, April 2014 CU for Project Server and SharePoint 2013 was also released.

So let me kill all this unnecessary noise with the final announcement that Service Pack 1 is now available to download, and all the clarifications in a nut shell is that Just apply this SP1 to your environment even if you have applied the previously released SP, and also feel free to apply this SP1 if you have April 2014 CU in place.  don’t forget to  run the configuration wizard in the end 🙂

Also do not forget that unlike old times, this SP1 is not a roll up package, which mean you should install SharePoint 2013 SP1 + Project Server 2013 SP1 and then run the configuration wizard in the end.

Download links for updated SP1:

For details please see Brian Smith post, you can find details of almost all the queries in your mind on his blog post.

Also see Stefan Bogner’s post for details related to Service Pack 1 release announcement and clarifications.

As always try any patches in your test environment prior to apply to production.

Happy patching 😀

via All about Enterprise Project Management (EPM) http://bit.ly/1nYGfDy

Khurram Jamshed
The author of the blog has an extensive experience of working as an EPM Consultant. Currently he is located in Dubai, UAE and working for Microsoft partner organization as Project Server specialist. He has a thorough experience of providing Project Management technical/functional consultancy to all sort of organizations. He is a certified PMP, a Project Server MCITP, and also received a MS community contributor award 2011.

This article has been cross posted from khurramjamshed.blogspot.com/ (original article)

Design a site like this with WordPress.com
Get started