Archive

Posts Tagged ‘Project Server’

#ProjectServer / #ProjectOnline custom PWA homepage #PS2013 #PS2010 #SharePoint #HTML #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)

This post covers an example landing page for PWA using HTML and an image. Firstly select your chosen image and add on containers, other images, text etc. – anything you want really to define the image hotspots. These hotspots will become links. See my example below:

Image for PWA homepage example

This was a picture taken from a recent trip to Venice Smile

Upload the image to the PWA site collection.

Once you have the chosen / updated image you need to create the hotspots or image maps.There are plenty of tools available or online sites that do this. I have used the following site:

http://bit.ly/1rGlz4T 

Upload your chosen image then add the image maps as shown below:

image

Once all the maps are added update the other properties such as Href, Alt and the target.

Scroll down and you will see the code, copy and past this into notepad or your favourite HTML editor:

image

Now you need to update the HMTL to add the image reference and tag the map to the image, see the first line:

image

Navigate to you PWA homepage and add a script editor or content editor web part then paste the HTML code in:

image

I used a script editor web part in this example.

Now the image will be loaded to PWA with clickable links on the image maps Smile

image

This was just an example so I didn’t spend much time on the image but with a creative mind you could really liven up your PWA homepage, Project Sites or any SharePoint landing page etc.

Categories: Paul Mather, Work Tags:

#ProjectServer2013 RollUp Formula field Calculation Issue #PS2013 #ProjectServer

OK this post is actually about sharing an issue i came across lately, with the hope to get a fix through any of the coming CUs. And the hope is high, with the recent news of getting scheduled CU more frequently now :)

Out of lot of improvements we are enjoying with Project Server 2013, one of them is having a scheduling capabilities built within  PWA, and now PWA schedule webpart do all the formula processing as well without open/publish the same project from Ms Project. Unlike its predecessor, where any formula field requires MS Project push to get populated, and hence we had dependency to Ms Project even in the presence of web client and it was nightmare sometimes to explain to end user that why they need to buy more Ms Projects licenses to cope up with web based client limitations.

But recently i found that ‘Task level number type roll up formula field, if copied to Project level number type formula field – doesnt work’ :(

Now let me try to illustrate above through an example to make it more clearer:
And before i start, note that my server is patched with SP1 (re-released) + Jul 2014 CU.

1. Create a task level number type field, lets name it: %Weight
2. Create a task level number type formula field, with roll up Sum calculation for summary rows:

           Lets name it:  %WeightedProgress = ([% Complete] * [%Weight]) / 100

Here %complete is a default field, and %Progress will be manually updated by users.

3. Create a project level number type formula field:

          Lets Name it %ProjectProgress =  %WeightedProgress

As you can see, i am only copying data of task level formula field to project level field in order to show the data in project center.

Using PWA web scheduler:

1. I have entered %Weight for following 2 tasks, %Weighted Progress is 0 for each task because %Complete is 0, and hence at project level roll up value is also 0.

2. Update %Complete of first task with 50%, and %Weighted Progress will be calculated using formula and became 10 at task level and Project roll up level. Publish project.

 3. Open Project Center and observe % Weighted Progress, its showing 0 which was the task roll up at project level before we have made any changes.

4. Open project, and update %Complete of 2nd task with 50% and that will change %Weighted Progress value to 25. Publish project.

5. Open Project Center, and observe %Weighted Progress, its showing 10 which was the task roll up at project level before we have made change to 2nd task.

By now you may have learnt that its following a unique pattern while updating project level custom field. That its showing you previous value at project center level once you publish your project, although at Project level it updates at the same time.

So the first time when at Project level it was 0, in Project Center it was appearing blank.
Second time when at Project level it was 10, in Project Center it was appearing 0.
Third time when at Project level it was 25, in Project Center it was appearing 10.

Lets update our project plan one more time to assure our conclusion.

6. Open project, and update %Complete of Task A with 100% and that will change %Weighted Progress value to 35. Publish project.

7. Open Project Center, and observe %Weighted Progress, its showing 25 which was the task roll up at project level before we have made change to Task A.

So Fourth time when at Project level it was 35, in Project Center it was appearing 25.

I hope an issue is clear, now a workaround to this is to open/publish using Ms Project and everything will work like a charm, just like old times (Project Server 2010).

Though its not workable in my current scenario because not all the end user have Ms Project on their PCs.

With the hope that we get fix to this issue soon :), see ya next time.

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

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)

Getting started with #ProjectOnline Round up #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)

Hopefully some of you would have seen that I finished the final post on the “Getting started with Project Online” series last week. I realised that there were quite a few posts (9 altogether) so thought some sort of summary would be beneficial for all. Below you will find a summary for all the posts I created in the series with links to each post.

Part 1 – Project Online creation
http://bit.ly/1iXYneH
This post focused how to create the Project Online instance on the Office 365 tenant

Part 2 – Project Online permission mode and Enterprise Custom fields
http://bit.ly/1fF6miS
This post focused what to do first after creating the Project Online tenant, it starts with the permission mode then moves on the Enterprise Custom fields

Part 3 – Project Professional Enterprise Global
http://bit.ly/1aIV2ea
This post focused on creating Project Professional Enterprise Global views

Part 4 – Project Web App (PWA) views
http://bit.ly/1jGgmqo
This post focused on creating PWA views

Part 5 – EPTs and PDPs
http://bit.ly/1aCeU8q
This post focused on what Enterprise Project Types (EPT) and Project Detail Pages (PDP) are and how to create them

Part 6 – Project plan and project site templates
http://bit.ly/1bPjJWB
This post focused on how to create plan templates as well as custom project site templates

Part 7 – Adding resources / data to Project Online
http://bit.ly/LHGQfq
This post focused on how to populate the resource pool and creating projects in Project Online

Part 8 – Using Project Web App for viewing / editing data
http://bit.ly/OuohNu
This post focused on the different areas in the Project Web App where you can view and edit data

Part 9 – Reporting / ODATA
http://bit.ly/1nNTWra
This post focused mainly on the ODATA feed and how to create efficient ODATA queries for use in Excel

Hopefully you have found this series interesting and I hope that you are getting the most out of your Project Online and Office 365 tenants. Smile

For help and advice don’t forget the Project TechNet forums for any Project, Project Online or Project Server related query:

http://bit.ly/1r37huO 

Or speak with a Project and Portfolio Management certified partner:

http://bit.ly/Wxyn3O

Categories: Paul Mather, Work Tags:

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:
Follow

Get every new post delivered to your Inbox.

Join 1,655 other followers

%d bloggers like this: