Getting started with #ProjectOnline Part 2 #PS2013 #Office365 #Project #PPM #SharePointOnline #PM
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 is part 2 of the “Getting Started with Project Online” series. If you didn’t see part one see the link below:
In summary this post covered creating the PWA site collection, we went from nothing to having a fully functional Project Online environment in around 45 minutes!
In this post we will look at what to do next now that we have a blank Project Online PWA site collection.
Before we move to the PWA site collection, there is a decision that needs to be made regarding the permission mode. With Project Server 2013 and Project Online there are two permission modes available. Either the SharePoint Permission mode or the Project Permission mode. By default the PWA site collection is provisioned using the SharePoint Permission mode. If you are just starting out with Project Online and you are not familiar with the classic Project Permission mode I would recommend you stick with the SharePoint Permission mode as this will simplify the configuration and administration. We wont go into details on the differences but to help you decide, see the following TechNet link:
Should you wish to change the permission mode if the SharePoint Permission mode doesn’t meet your organisations access security requirements, navigate to the SharePoint Admin Center. If you don’t know the URL the easiest way to access this is from the PWA site, in the top corner you will see an Admin drop down menu when logged in with an Office 365 tenant admin account:
Click SharePoint, that will take you to the SharePoint Admin Center:
From this page, select the PWA site collection (check box next to the PWA site collection) then click the Settings link under the Project Web App menu as displayed below:
This will load the Settings page for the Project Web App site:
As you can see, the SharePoint Permission Mode is already set. For the purpose of these posts, we will leave this set but this is where you can switch your PWA site collection to use the Project Permission mode. You can switch permission modes at any time but bear in mind the settings will be reset so you will need to reconfigure the permissions / add users to the PWA site collection again – best to decide the permission mode from day one to avoid a lot of work on a live system! Also another key piece of information on this page is the Project Database Usage, you get 10GB for Project Online so worth monitoring / checking this.
Now we have covered the permission mode, we can move the the PWA site collection and start the configuration. Load the PWA site collection with the PWA Administrator account that you specified on the site creation and you will see the following site as we saw in the previous post:
The first part of the configuration we need to consider is the PWA custom fields as the other configuration elements require these to be in place so lets find these. To access the PWA custom fields, navigate to the PWA Settings page. Click the settings cog in the top left corner:
Click PWA Settings and you will see the following page:
This page is where you configure all of the PWA settings. So we are looking for custom fields, under Enterprise Data you will see “Enterprise Custom Fields and Lookup Tables”, click that link and you will see the custom field page:
You will notice there are custom fields and lookup tables already in place, these are the default fields that are created with the Project Online / Project Server PWA instance. This doesn’t include the intrinsic fields, for a reference of these fields see the following link:
One thing I will point out at this stage as it is the first time we have seen any locale specific data (Last Updated column), you will notice this has the US date format. To change this to the correct locale for your users, click the settings cog again then Site Settings:
Now click Regional Settings under the Site Administration heading:
On this page select the correct locale and other region specific settings:
Then Click OK and navigate back the PWA Settings page from the site cog menu then click the “Enterprise Custom Fields and Lookup Tables” link and notice the date format is now correct for the UK:
Before we look at creating custom fields lets have an overview of the types of fields available. We can create Project, Resource and Task level fields that are one of the following types of field: Cost, Date, Duration, Flag, Number or Text. You also have Lookup Tables that can be associated with the text based custom fields if required. Customs fields based on lookup tables are used to “tag” the data with a certain value or values, this can then used for grouping, filtering and sorting in views or reports. Other fields can be used for grouping, sorting and filtering but generally the fields based on lookup tables or formulas are used as you know the possible values that are available. You can also create your own calculated fields by choosing the Formula attribute. Also you have other attributes that can be set such as the rollup for summary rows and roll down for assignment rows, this settings is only available for Resource or Task fields. There is also the option to either show the value of the field or display a graphical icon. Graphical icons would only really be set on fields that are either based on a lookup table or a formula as you know all the possible values.
Full details on custom fields can be found here:
We will now walkthrough creating a few custom fields. At this stage I would hold off creating these on your PWA environment as now is a good time to sit down with your peers and discuss / review the fields your organisation needs. The best way to start is to think about what do you want out of the system, what data do you want to capture, what data do you want to report on etc. We will continue here though and create a couple of Project, Resource and Task fields.
We will create the project level fields first, from the custom fields page click the New Field button:
The new field page will look like this:
This field is going to be a “Project Code” field to sort a project code against each of our projects. I have set the following settings:
Name: Project Code
Description: Enter the project code
Entity and Type: Entity: Project Type: Text
Custom Attributes: Single line of text
Department: NA – left empty
Behaviour: Require that this field has information: Yes | Other settings default
Before we move on I just want to mention a couple of the field attributes, Department and Behaviour. The department field is used to departmentalise the configuration and data in PWA. We aren’t going to use this functionality here but it can be very useful if you want to change what custom fields are visible to users / projects as it might be that not all fields are applicable to all users / projects. There are a few blogs out there that cover this topic quite well if you want to look at using this feature. The other attribute is Behaviour, a field can be controlled via a workflow as part of the project lifecycle, we aren’t setting up a project lifecycle workflow so will leave this unchecked.
Once the settings have been completed, click Save on the new custom field page and you will be taken back to the custom field admin page and see your new field:
The next project level field is going to be a text field based on a lookup table, the field is going to be called Programme. When you want to use a lookup table on a field the lookup table needs to be created first. Click the “New Lookup Table” button and the following page will load:
A lookup table as a few attributes, Name, Type, Code Mask and the Lookup Table. Choose the type of lookup table, the options are Cost, Date, Duration, Number and Text. The Code Mask is only applicable for text based lookup tables as these can be hierarchical with different levels, the code mask set the levels available and the separator. For this example I am using a text based lookup table with 2 levels set on the code mask then populated the table with my Programme values:
Use the toolbar functions on the lookup table to outdent, indent, delete and insert rows etc. Once you are happy with the lookup table click save. At this point the lookup table is validated against the code mask, in this example all is fine and saves ok. If you see this error on save, the code mask is not correct for the levels you need or you have enter to many characters as 255 is the limit for one value (row):
“The lookup table could not be saved due to the following reason(s): One or more code values in the lookup table either do not match the mask defined for the code or contain more than 255 characters.”
Now that we have a lookup table we can create the associated project level custom field. Click the “New Field” button. Enter the field name, leave this as a Project Text field. On the custom attributes, check the Lookup Table option:
Change the lookup table to the Programme lookup table we just created, in this example the other options for the lookup table will be left as default. We will set this field to display the data rather than an indicator and leave the behaviour attributes as default so this field is not required. Click Save and you will see the new field on the custom field table:
The final project level field we will create is a Project Status field, this will also use a lookup table. Create a new text based lookup table called “RAG Status” with 3 values Red, Amber and Green. Then create a new field called “Project Status”, in the description state this is a manually set RAG field, set the Lookup table attribute to use the “RAG Status” lookup table that was just created:
Scroll down and set the field to use graphical indicators and you will see another table appear:
Populate the table as follows:
The important part is the Test and the Value, the value must match the value in the associated lookup table otherwise the image will never be displayed. I have also set the data value to be displayed in a tooltip. Once the settings are complete, click Save. We now have 3 custom project level fields.
Next we will look at creating a Task level formula based field called RAG Planned Work, click the New Field button, set the name and select Task then Text. Check the Formula custom attribute then type the required calculation. For this example the nested if statement below will be used:
IIf([Work] = 0, "No Planned Work", IIf([Baseline Work] = 0, "No Baseline Work", IIf([Work] <= [Baseline Work], "Work Within Baseline", "Planned Work Greater Than Baseline")))
If you are new to Project formulas, notice the IIF, it is an immediate if.
This can be seen here:
For this example we will set the summary row calculation to use the formula but the assignment row calculation will be set to none. We will also set this to use graphical indicators as follows:
The values for the graphical indicators match the possible values in the formula. Once completed click Save. At this point the formula will be validated and not let you save the page if there are errors.
The final field we will create is a resource level field called Employee Contract Type, this will use a lookup table. As before, first create a text based lookup table called Contract Type with the contract values. This will include values like Full Time, Part Time, Contractor and 3rd Party as seen below:
Save the new lookup table and click the “New Field” button and set the name, then choose Resource from the Entity menu and Text from the Type menu. On the custom attributes menu select Lookup Table and choose the Contract Type lookup table:
Set the field to be required in the Behaviour section and click Save. We now have our example enterprise custom fields and lookup tables created:
Hopefully now you are comfortable with the options available to create the remaining fields your organisation requires. That brings us to the end of the first part of the configuration, in the next part we will continue with the other elements of the configuration.