#ProjectOnline Reporting #OData entity modified dates #PPM #PMOT #O365

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 blog post to highlight a feature in the OData reporting API so that you are aware of how it works. A few months back it was announced that all entities in the OData API would have modified dates. I thought this would be a great addition as those that pulled the data into a SQL database could then just pull down the deltas to minimise the data from Project Online into the database. I for one hadn’t really looking into the new modified date properties as I just assumed they would be true modified dates when those entities where updated. So for example, I thought if I just published a project without changing any task data only the Project Modified Date would change and the Task Modified Dates would remain as the previous dates when those tasks were actually modified. This assumption was incorrect, in that scenario where you only publish the project without making changes to any tasks, all task modified dates are also updated to match the project modified date. See the example below:

The Office 2016 rollout plan on my test Project Online system was created over a month ago as were all of the example tasks. Today I just opened the project and published it without making any changes to any tasks but notice the ProjectModifiedDate and TaskModifiedDates all match:

image

Checking the Task Time phased task modified dates shows the same thing:

image

If I just add a new task then publish the project the same happens, the project modified date is updated as expected but also all tasks are updated to have the same task modified date as the project modified date:

image

image

Here are examples for task data and task time phased data but the same occurs in all feeds such as assignment time phased, assignment baseline time phased etc.

Just something to be aware of if you were wondering why the dates were always being updated – may be you had the same assumption as I did!

I have put an idea on the user voice forum – if you agree it would be good to change these dates to true modified dates – get voting Smile   http://bit.ly/2t3Veav

Categories: Paul Mather, Work Tags:

#ProjectOnline #Project Site settings / location #SharePoint #PPM #O365 #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)

Again, another post that is a bit later than I would normally post about changes but I’m still trying to play catch up at work and home after my vacation, I feel like I need another holiday already! Anyway, further to the announcement the other month regarding the change to support 30,000 project and 30,000 project sites in Microsoft’s Office 365 PPM tool Project Online, the final part of that change is here.

Before we jump in to the detail, a bit of history to show how the Project Product group have done a great job and massively improved the Project Online projects / project sites limit since Project Online was first released.  In the early days Project Online had a limit of 2,000 projects and 2,000 project sites. I think in the first release, both the projects and project sites were both restricted to 2,000 due to the SharePoint Online limit of 2,000 sub sites per site collection, the sub site limit is still a limit today in SharePoint Online. Details here for SharePoint Online limits: http://bit.ly/2stv9Tf. The 2,000 project limit was then raised to 5,000 projects but the project site limit was still limited to 2,000 which meant that 3,000 of your 5,000 projects couldn’t have a project site. Today in Project Online you can have 30,000 projects and each of those projects can have a project site* I have put an asterisk here as there are some configuration / site collection requirements to support this as detailed in this blog post. To have 30,000 project sites you would need 15 Enterprise Project Types (EPTs) and 15 SharePoint site collections including the actual PWA site collection. This is how the Project Product group have worked around the SharePoint Online sub site limitation. Let’s look at how this is set up in PWA.

For the purpose of this blog post I have just two EPTs in my PWA site collection, the default Enterprise Project and one called Product Development. Firstly I will create a new SharePoint Online site collection via the SharePoint Admin Center in Office 365 called ProductDevSites to host the project sites in my new EPT. From the SharePoint Admin Center click New > Private Site Collection and complete the form

image

Click OK. That might take 10 to 15 minutes to provision. Once completed open the PWA site collection and navigate to the PWA Settings page:

image

Nothing different here… Clicking on the following settings will show some differences:

  • Connected SharePoint Sites
  • Manage User Sync Settings
  • Enterprise Project Type

Connected SharePoint Sites:

image

Notice the Settings button is now missing from the menu bar. The settings button here used to allow you to control if / when project sites where created. This has moved to the Enterprise Project Type page.

Manage User Sync Settings:

image

Notice there are two checkboxes missing from the Sync options. Here you could also set the Project Site Sync and the Project Site Sync for SharePoint task list projects. The setting to sync users has moved to the EPT page.

Enterprise Project Type:

image

Notice the three new sections here, Site Creation – this was on the Connected SharePoint Sites page, Site Creation Location – this a new setting and Synchronization – this contains the sync settings. Changing the Site Creation setting to either Automatically create or Allow users to choose will enable the Site Creation Location setting. This defaults to the current PWA site collection URL, for this EPT I will leave that as the location and enable the user permission sync:

image

One thing to note here regarding the synchronization options, both the user sync and the task list sync only work for project sites inside the Project Web App site collection. Save the EPT then open the other EPT/s. In this example I will edit the Product Development EPT and enable site creation but rather than creating sites in the PWA site collection I have selected to create these in the ProductDevSites site collection:

image

I could still create the Product Development project sites and other EPT’s project sites in the Project Web App site collection (PWA2 in this example) if I knew I would never exceed the 2,000 sub site limit. Notice I haven’t enabled the site sync as this would be redundant here as the site creation location is not the Project Web App site collection. Before we create some projects for each EPT, worth noting is that you might not see the same options as displayed on the EPT’s above, you might just see the following:

image

No Site Creation Location and the Sync User Permissions checkbox is disabled, this will be because your Project Web App site collection will be in the SharePoint permission mode so will be limited to up to 2,000 sub sites and the user permission sync to the project sites is not possible.

Creating a project for each EPT and publishing those projects will create the project sites. As you can see below, the project sites are in different site collections based on the EPT settings:

image

So now you can have 30,000 projects and 30,000 project sites!

Brian Smith posted about this change to other day too: http://bit.ly/2t3aJxv

Categories: Paul Mather, Work Tags:

#ProjectServer and #SharePoint 2013 / 2016 June 2017 Cumulative Update #PS2013 #SP2013 #PS2016 #SP2016 #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 2016 June 2017 updates and cumulative updates are now available, please see the links below:

http://bit.ly/2rgjAdX

Project 2016 June 2017 update:
http://bit.ly/2szCb8v

SharePoint Server 2016 / Project Server 2016 June 2017 update: 
http://bit.ly/2rgw6tJ & http://bit.ly/2szwkjC

The Office 2013 June 2017 updates and cumulative updates are now available, please see the links below:

http://bit.ly/2rgjAdX

Project Server 2013 June 2017 CU Server Roll up package:
http://bit.ly/2rgGjpY

Project Server 2013 June 2017 update:
http://bit.ly/2szx2NC

Project 2013 June 2017 update:
http://bit.ly/2rgaJcg

Also worth noting, if you haven’t done so already, install Service Pack 1 http://bit.ly/1uorn2C first if installing the June 2017 CU.

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

Categories: Paul Mather, Work Tags:

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

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

http://bit.ly/2pOPGQa

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

http://bit.ly/2pOBFjq

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.

Categories: Paul Mather, Work Tags:

#ProjectServer and #SharePoint 2013 / 2016 May 2017 Cumulative Update #PS2013 #SP2013 #PS2016 #SP2016 #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)

A little later than my normal posts for updates due to vacation but here are the links for the updates. The Office 2016 May 2017 updates and cumulative updates are now available, please see the links below:

http://bit.ly/2smYuLA

Project 2016 May 2017 update:
http://bit.ly/2rNMWE7

SharePoint Server 2016 / Project Server 2016 May 2017 update: 
http://bit.ly/2snceGm & http://bit.ly/2rNzvEm

The Office 2013 May 2017 updates and cumulative updates are now available, please see the links below:

http://bit.ly/2smYuLA

Project Server 2013 May 2017 CU Server Roll up package:
http://bit.ly/2snf5in

Project Server 2013 May 2017 update:
http://bit.ly/2rNQjuU

Project 2013 May 2017 update:
http://bit.ly/2smYw6a

Also worth noting, if you haven’t done so already, install Service Pack 1 http://bit.ly/1uorn2C first if installing the May 2017 CU on 2013.

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

Categories: Paul Mather, Work Tags:

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

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)

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:

http://bit.ly/2pOPGQa

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.

Categories: Paul Mather, Work Tags:

Converting taxonomy field into cascading drop down fields using PnP Branding.JsLink

Managed metadata fields don’t provide the same look and feel as choice field type. It is quick clunky specially when there are a lot of terms displayed.

The requirement cropped up to display the managed metadata fields as drop downs. After googling for a while, stumbled on PnP sample Branding.JSLink  solution which had an example how to achieve it. The solution is a no code sandboxed solution with different examples how to enrich fields. I wanted only the taxonomy to cascading drop down feature.

I copied the file TaxonomyOverrides.js and ManagedMetadata.js only into the “Style Library” library in my test SharePoint Site Collection. I modified the TaxonomyOverrides.js file to refer to the field “DocumentType” I wanted transformed in the fields section.

Type.registerNamespace(‘jslinkOverride’)
var jslinkOverride = window.jslinkOverride || {};
jslinkOverride.Taxonomy = {};

jslinkOverride.Taxonomy.Templates = {
Fields: {
‘DocumentType’: {
‘NewForm’: jslinkTemplates.Taxonomy.editMode,
‘EditForm’: jslinkTemplates.Taxonomy.editMode
}
}
};

jslinkOverride.Taxonomy.Functions = {};
jslinkOverride.Taxonomy.Functions.RegisterTemplate = function () {
// register our object, which contains our templates
SPClientTemplates.TemplateManager.RegisterTemplateOverrides(jslinkOverride.Taxonomy);
};
jslinkOverride.Taxonomy.Functions.MdsRegisterTemplate = function () {
// register our custom template
jslinkOverride.Taxonomy.Functions.RegisterTemplate();

// and make sure our custom view fires each time MDS performs
// a page transition
var thisUrl = _spPageContextInfo.siteServerRelativeUrl + “Style Library/OfficeDevPnP/Branding.JSLink/TemplateOverrides/TaxonomyOverrides.js”;
RegisterModuleInit(thisUrl, jslinkOverride.Taxonomy.Functions.RegisterTemplate)
};

if (typeof _spPageContextInfo != “undefined” && _spPageContextInfo != null) {
// its an MDS page refresh
jslinkOverride.Taxonomy.Functions.MdsRegisterTemplate()
} else {
// normal page load
jslinkOverride.Taxonomy.Functions.RegisterTemplate()
}

The DocumentType is a taxonomy field which has SharePoint OOB look and feel

TaxonomyFieldTermSet.PNG

After referencing the files TaxonomyOverrides.js and ManagedMetadata.js  on the editform page of the document library using a script editor webpart using tags as below.

/Projects/EDRMS/Style%20Library/OfficeDevPnP/Branding.JSLink/Generics/ManagedMetadata.js
/Projects/EDRMS/Style%20Library/OfficeDevPnP/Branding.JSLink/TemplateOverrides/TaxonomyOverrides.js

 

ScriptEditorWebPart

Voila, the taxonomy field is transformed into cascading drop downs.

CascadingDropdown

from reshmeeauckloo http://bit.ly/2qwao8c

Reshmee Auckloo
Reshmee Auckloo – Reshmee is a certified Microsoft professional and has been involved in delivering solutions across a wide variety of industry sectors in a range of assignments from SSRS to Microsoft SharePoint, Project Server development, CRM Dynamics and .Net including business requirements gathering and software quality assurance.

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

%d bloggers like this: