Update for script to report across #ProjectOnline Project Sites for #SharePoint list data #PPM #JavaScript #Office365 #REST #OData

June 3, 2017 at 8:58 pm | Posted in Configuration, Customisation, Fixes, Functionality, Information, Reporting | Leave a comment
Tags: , , , ,

I have made a quick change to the example solution starter script to fix a common encoding issue with the EPT names. For example, if your EPT name is “R & D”, the original example solution starter script wouldn’t handle this when querying the Project OData API. It would pass in R & D when querying the OData API but the OData API call fails as it should use R %26 D. I have updated the solution starter code to handle this and encode the EPT name before querying the Project OData API. The solution starter code can be downloaded here:

https://gallery.technet.microsoft.com/Report-on-Online-list-data-f5cbf73f

If you didn’t seen the original post or solution start script before, see the post below:

https://pwmather.wordpress.com/2017/05/05/want-to-report-across-projectonline-project-sites-for-sharepoint-list-data-ppm-javascript-office365-rest-odata/

This script is still a solution starter and should be updated for production use to include the correct data you want, improve error handling, support the REST API pagination, split out HTML, CSS and JavaScript etc.

Advertisements

Want to report across #ProjectOnline Project Sites for #SharePoint list data? #PPM #JavaScript #Office365 #REST #OData

May 5, 2017 at 5:13 pm | Posted in Add-on, Administration, Configuration, Customisation, Functionality, Information, Reporting | 5 Comments
Tags: , , , ,

For those of you that are familiar with Project Server or Project Online, only the default lists and default columns from those lists are synchronised to the database reporting schema. So Project API’s like the OData API (_api/ProjectData) only have data for Risks / Issues and the default columns etc. I have published an example solution starter script that will allow data from any list on the project site to be used.

This is a supporting blog post for the JavaScript solution starter I have published to the Microsoft Gallery, it can be downloaded here:

https://gallery.technet.microsoft.com/Report-on-Online-list-data-f5cbf73f

This solution starter should be updated before production use to include the correct data you want, improve error handling, support the REST API pagination etc. This example uses the Issues list and some example default columns from the Issues list but it can easily be updated to use a custom list on the Project Sites.

There are comments in the script to help update the script for your target Project Site list and columns. Once the script is updated, upload it to a library on the target PWA site. Create a new page on the PWA site to host the JavaScript file. Then add a content editor web part on the new page and reference the JavaScript file, for example:

image

Once added it will look like this (this in on one of my MOD demo tenants):

image

The select menu will contain a list of EPTs:

image

Changing the selection to another EPT will load a SharePoint modal pop up whilst the data loads:

image

If an EPT is selected that doesn’t contain any list items the following will be displayed:

image

There is example conditional formatting on the table:

image

The list item title is a clickable hyper link that will open the list item in a new window:

image

Fully test this on a non-production PWA instance before using in Production, the script is provided As Is with no warranties etc. Try it out and let me know what you think.

Want to capture the last logon time for the #ProjectOnline PWA users? #PPM #JavaScript #Office365 #SharePoint

September 30, 2016 at 2:19 pm | Posted in Add-on, Administration, Configuration, Customisation, Functionality, Information, Reporting | 2 Comments
Tags: , , , ,

This is a supporting blog post for a new JavaScript file I have published to the Microsoft Gallery, it can be downloaded here:

https://gallery.technet.microsoft.com/Capture-Online-user-last-43621a21

Microsoft recently removed the Last Logon details from the Manage Users page in PWA settings for Project Online – Microsoft’s PPM tool. This simple script is an alternative solution that will capture the last logon for the Project Web App users. It wont capture the last logon from Project Professional or if a user accesses the API’s etc., it will only capture the last logon from the page the script is added to. In this example I have added the script to the homepage, so if a user has the Project Center saved as a favourite link and bypasses the PWA homepage then their logon would not be captured. You could add the script to multiple PWA pages if required.

When a user accesses the PWA homepage for the first time that day, an item is created on the SharePoint list in the PWA site, it only captures the logon once per day. See an example on my demo instance:

image

It captures the user name, the logon data and the browser that was used. This list will need to be created manually with the following details:

List Name: PWAUsageList

Columns:

image

The LogonDate column setting defaults to Today:

image

Once the list is set up, upload the JavaScript file to a library on the PWA site then the script can be added to the PWA homepage using a content editor web part:

image

Reference the location of the PWAUsage.js file – in this example I added the JavaScript file to the Shared Document library in the PWA site, also notice the Chrome Type is set to None so nothing is visible on the PWA homepage.

That is it, it will now capture the users who access the PWA homepage. Once you have the data on the list you can then create a report for that data. I will publish a blog post in the next week or so that details this but for now here is an example report screen shot in Power BI:

image

Fully test this on a non-production PWA instance before rolling out to Production, the script is provided As Is with no warranties etc. Try it out and let me know what you think.

#ProjectOnline Project Ideas list view with Project GUID #Office365 #SharePoint #JavaScript #jQuery

July 22, 2016 at 9:14 pm | Posted in Add-on, Administration, Configuration, Customisation, Functionality, Information, Reporting | Leave a comment
Tags: , , , , , ,

For those of you that are familiar with the project ideas lists in Microsoft’s PPM PWA application you might want to skip this first paragraph. Any list you create in the PWA site collection at the top level you will see a button Create Projects, if you are not familiar with this feature take a look at this blog post: https://pwmather.wordpress.com/2012/12/13/creating-and-adding-projects-to-projectserver-2013-ps2013-sp2013-office365-part-1/.

The purpose of this post isn’t to revisit that feature, this post covers getting access to some of the data on that list that is hidden from the views and creating an enhanced view for the Project Ideas type list.

If you look at the view details, you can see below the columns I can add to this view:

image

Yet if I look at the columns available on this list using the REST API I see a few more, a key one being MSPWAPROJUID as seen below:

image

This column gets updated with the Project GUID when you create a project from the list. As this is a hidden column it can’t be added to any views which is a shame as that would be very useful. I thought ok, simple, I will just update the field hidden property false then add it to the view. Whilst that change is very simple with a few lines of code this appears to break the column getting updated with the Project GUID so I don’t recommend doing that currently. If I found a way to get this working I will create a post. So as that didn’t work that lead me on to the next idea, lets build my own view on a page. This can be seen below:

image

I have made the Item Title clickable to open the list item in a new window and where an idea item has been converted into a project, the Project GUID is a clickable link to the view the project. This opens the schedule Project Detail Page. The columns are sortable, by default it is sorted by Item ID, to change this use the arrows in the table column heading. As you can see, I don’t have much data on my test system and only one idea has been created into a project.

I have made the code available on the Microsoft code gallery, it can be downloaded here: https://gallery.technet.microsoft.com/Display-Online-ideas-list-c59c8cc7

To get the script to work for your PWA instance in Project Online you will need to update the listName variable to set the correct list title for your project ideas list:

image

Replace ProjectIdeas with the correct title. Save the JavaScript file in a document library in the PWA site collection then create a web part page in the PWA site collection, for example I created the page and uploaded the script to the Shared Documents library:

image

On the new web page page I added a content editor web part and linked to the JavaScript file:

image

Click Apply then OK and the data should load if the listName variable is correct. You can then add a link to the new page from the PWA quick launch if needed.

A nice simple solution that provides more functionality than the standard SharePoint view.

Want to capture your #Project team / staff morale? #ProjectOnline #ProjectServer / #SharePoint #PPM #JavaScript #jQuery

December 1, 2015 at 8:58 pm | Posted in Add-on, Administration, Configuration, Customisation, Functionality, Information | Leave a comment
Tags: , , , , ,

This is a supporting blog post for a new JavaScript file I have published to the Microsoft Gallery, it can be downloaded here:

https://gallery.technet.microsoft.com/Capture-Morale-in-9702d380 

This script enables you to capture the the team / staff morale each day – your team members just need to click one of the smiley faces:

image

In the example above I am logged in with the tenant admin account called “admin admin”. When a user clicks one of the icons it creates an item in the “ProjectTeamMorale” list in the PWA site:

image

If they click the happy faces it sets the item status to Happy, if they click the sad face it sets the status to Unhappy.

This list will need to be created manually with the following details:

List Name: ProjectTeamMorale

Columns:

image

The Date column setting defaults to Today:

image

Once the list is set up the script can be added to the PWA homepage using a content editor web part:

image

Reference the location of the project_team_morale.js file – in this example I added the JavaScript file to the Shared Document library in the PWA site:

image

That is it. The script can easily be updated to use different images or include more than two statuses etc. In this example I have done this for PWA but this could be added to a SharePoint intranet site to capture the staff members morale rather than just the project team in this example.

You can then generate a report to view the team / staff morale over time.

Try it out 🙂

I am speaking – Project Virtual Conference #ProjectOnline #BI

October 2, 2015 at 12:57 pm | Posted in Information | Leave a comment
Tags: , , , , , ,

Quick post to reference my session for the Project Virtual Conference on 22nd October 2015:

http://projectvirtualconference.com/sessions/project-online-bi-made-easy/

See some of the great reporting options for Project Online.

For the full schedule see: http://projectvirtualconference.com/schedule/

To register for this great free event (no travel expenses either!): http://projectvirtualconference.com/register/

#ProjectOnline / #ProjectServer 2013 update #Project Name description on PDP #JavaScript #jQuery

September 22, 2015 at 3:51 pm | Posted in Add-on, Administration, Configuration, Customisation, Functionality, Information | Leave a comment
Tags: , , , , ,

Some times organisations want to update the Name description on the PDP to something else. This simple script will do that, the example in the script will work for the Enterprise Project EPT but could easily be updated for other EPTs. The script can be downloaded here:

https://gallery.technet.microsoft.com/Online-Server-update-Name-0f8bd826

The script is very similar to the one I created to change the Owner label: https://pwmather.wordpress.com/2015/06/12/projectonline-projectserver-2013-update-owner-label-on-pdp-javascript-jquery/

This code will replace “Specify a name for the Enterprise Project” with “Enter a name for the project” but can easily be updated. All it does is replaces the string, so if you had multiple different EPT’s  where you wanted to update the Name description the script would need to be modified to suit as the EPT name is used in the description.

To get the script to work you will need to download the following jQuery library: jquery-2.1.1.min.js – jQuery download Another 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 Shared Documents library as you can see in the code below:

image

Alternatively you can reference a CDN if preferred.

Once the script is downloaded, upload this to the PWA site collection, in this example it was uploaded to the shared documents library. Select the PDP that has the Name field displayed, then reference the uploaded script using the content editor web part:

image

Once loaded, “Specify a name for the Enterprise Project” with “Enter a name for the project”:

image

This is a very simple script but do test this before rolling out to production etc.

The script is provided “As is” with no warranties etc.

#ProjectOnline / #ProjectServer 2013 update Owner label on PDP #JavaScript #jQuery

June 12, 2015 at 3:41 pm | Posted in Add-on, Administration, Configuration, Customisation, Functionality, Information | 1 Comment
Tags: , , , , ,

A quick post to support a very simple script to change the Owner display label on a Project Detail Page page. Quite often clients request to change the Owner to something else such as Project Manager. The script can be downloaded from the script gallery below:

http://gallery.technet.microsoft.com/Online-Server-update-Owner-7ef2671a

This code will replace “Owner” with “Project Manager” but can easily be updated.

To get the script to work you will need to download the following jQuery library: jquery-2.1.1.min.js – jQuery download Another 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 style library as you can see in the code below:

image

Alternatively you can reference a CDN if preferred.

Once the script is downloaded, upload this to the PWA site collection, in this example it was uploaded to the shared documents library. Select the PDP that has the Owner field displayed, then reference the uploaded script using the content editor web part:

image

In this example it is the Project Information PDP.

Once loaded, Owner will display as Project Manager:

image

This is a very simple script but do test this before rolling out to production etc.

The script is provided “As is” with no warranties etc.

#ProjectOnline / #ProjectServer 2013 Access #SharePoint lists on PDPs #JavaScript #jQuery #Office365

May 12, 2015 at 5:04 pm | Posted in Administration, Configuration, Customisation, Functionality, Information | Leave a comment
Tags: , , , , , ,

A common requirement is to see and access the Issues and Risks lists on the Project Detail Pages in the PWA site for the associated project. Previously I wrote a script that displayed the Issue and Risks data in a table but this was read-only. This can be seen here: https://pwmather.wordpress.com/2014/04/11/want-to-see-risks-and-issues-on-a-projectonline-projectserver-project-detail-page-ps2013-sharepointonline-sp2013-office365-javascript-jquery/ 

This new script will display the Issues and Risks (or any other list for that matter – slight code change / update required) on the PDP but will allow you to create / edit the lists items providing you have the permissions of course. Martin did something similar here. The script can be downloaded from the script gallery below:

 http://gallery.technet.microsoft.com/Online-Server-2013-access-627b10ef

To get the script to work you will need to download the following jQuery library: jquery-2.1.1.min.js – jQuery download Another 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 style library as you can see in the code below:

 image

Alternatively you can reference a CDN if preferred.

Once the script is downloaded, upload this to the PWA site collection, in this example it was uploaded to the shared documents library. Choose what PDP you want the script to be accessed, in this example I created a PDP called SharePoint Data, added a content editor web part on the new page then referenced the uploaded script using the content editor web part:

 image

Once loaded, the page will look like this:

 image

Don’t worry about the message – this is because there is no project UID available here.

Add the new PDP to the require Enterprise Project Types then navigate to the Project Center and access one of those projects from that EPT. Click the new PDP and you should see:

 image

Click one of the buttons and that list should load:

 image

You can also change the behaviour of the list form and use modal pop ups for a better experience:

 image

This currently includes Risks and Issues but can easily be updated to include other SharePoint lists.

The script is provided "As is" with no warranties etc.

#ProjectOnline / #ProjectServer View Resource Calendar Exceptions #JavaScript #jQuery #Office365 #SharePoint

May 1, 2015 at 10:41 am | Posted in Add-on, Administration, Configuration, Customisation, Functionality, Information | 1 Comment
Tags: , , , , , , ,

This script will enable the users to view the resource calendar exceptions for a particular resource. The script can be downloaded from the script gallery below:

https://gallery.technet.microsoft.com/Online-Server-View-20760922

To get the script to work you will need to download the following jQuery library: jquery-2.1.1.min.js – jQuery download Another 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 style library as you can see in the code below:

image

This example script does use the /ProjectServer REST API, so users will need access to that for this to work.

Once the script is downloaded, upload this to the PWA site collection, in this example it was uploaded to the shared documents library. Choose where you want the script to be accessed, in this example I created a new page, added a content editor web part on the new page then referenced the uploaded script using the content editor web part:

image

Once loaded, the page will look like this:

image

If no exceptions are found the table will display “No data available in table”, change the select menu to another resource that does have exceptions in the resource calendar and these will be displayed:

image

This only uses intrinsic fields so should work for any Project Online / Project Server environment but do test it thoroughly first. You might want to improve the error handling etc. before deploying to a production environment. Also remember this does require the user to have access to view resources via the /ProjectServer REST API for this to work.

The script is provided "As is" with no warranties etc.

Next Page »

Create a free website or blog at WordPress.com.
Entries and comments feeds.