Task Process Owner

There may be occasions where you assign tasks to a generic active directory account rather than to one specific person so that anyone within that department can deal with the request.

But for this to function as desired you will need to set the ‘TaskProcessOwner” property of the task process in the workflow generating the task. To do this you should right click on the line that generates the task and then set the ‘TaskProcessOwner” property. You may select an individual user or a SharePoint group. This user or group will then be able to complete tasks on behalf of the assignee.

 

Untitled

 

Breadcrumbs

The current University portal uses a common method of navigation, the breadcrumb trail. In SharePoint 2010, the OOB breadcrumb only shows links within its own site, and does not show higher level sites. With some slight modification to the root master page this can be changed to display links right from the root site.

 

SharePoint 2010 Breadcrumb Trail
SharePoint 2010 Breadcrumb Trail

 

To start you should open Microsoft SharePoint designer, and check out the Master Page that your site is using. You should then add the code below to show a full breadcrumb trail.

If you do not want to have the trail to show all links right up to the root, you can change “-1” (default to show all), to what ever you wish.

<asp:SiteMapPath runat=”server” PathSeparatorStyle-CssClass=”breadcrumbdivider” PathSeparator=”” ParentLevelsDisplayed=”-1″ RenderCurrentNodeAsLink=”true”/>

You will need to either remove or comment out (if you like to play things safe) a line of code to avoid repetition in your breadcrumb trail.

<SharePoint:SPLinkButton runat=”server” NavigateUrl=”~site/” id=”onetidProjectPropertyTitle”><SharePoint:ProjectProperty Property=”Title” runat=”server”/></SharePoint:SPLinkButton>

You will finally need to add some custom CSS to style your breadcrumb separators. You should create a CSS class to provide space for the background image to be displayed.

.breadcrumbdivider {

backgound-image:url(”www.example.com/image.png’);

background-repeat:no-repeat;

background-position:1px 8px;

margin-left:4px;

margin-right:4px;

padding:5px;

}

You will need to host your chosen image on the server, and then specify the url in the CSS. Once you have done this, you will have something similar to this.

 

Modified SharePoint 2010 Breadcrumb Trail
Modified SharePoint 2010 Breadcrumb Trail

 

Staff Training Bookings

One of our current processes being developed for the new SharePoint is the Staff Training bookings process. Here we have enhanced the current version on SharePoint 2003, by automating the common actions within the process.

We started by creating a list that would act as a database for all the current courses on offer. These are categorised, so that the list can be filtered by users. The list will be maintained by the Staff Learning & Development team, as it currently is. The next part we enhanced using the new functionality in SharePoint 2010. We created an additional list that will hold users bookings. Users will only be able to see their own bookings, while admins will have access to all bookings for easy management. A user will select the conveniently located “Book Course” button, here a simple form will launch where the user will select their desired course, and in addition to the old system the form will also capture the users objectives to help understand their requirements. This will also help Staff Learning & Development when planning courses for the future. The form will also request that the user agrees to terms and conditions regarding cancelations.

The automated processes will then begin, by sending the user confirmation of the request and notify Staff Learning & Development. The team will them make checks to ensure that the course is suitable for the delegate and then either approve the request or deny it. The automatic process will also handle the number of places left on a course, this will stop a course from over booking, and should the minimum number of delegates not be reached a notification will be sent to the team, to enable them to further advertise the course with the aim to fill the remaining places.

Users also have the ability to manage their bookings. If they need to, they can cancel their place on a course. This process will collect the reason of cancellation from the user and this will be sent to the Staff Learning & Development team. Again the number of places left will automatically be recalculated so that someone else can book a place.

Should a course be fully booked, the user can request to go on the reserve list should someone cancel. These are added to the same booking list, but the status is set to reserve. Should a user cancel, Staff Learning & Development will check the reserve list, should there be any people reserved for a course, they will change the status from reserve to offer place and the system will notify that user and offer them the place.

 

The new Staff Training Development page in early development.
The new Staff Training Development page in early development.

 

Student Withdrawal – Session 2

On our second session working on the withdrawal workflow we first reviewed what we had developed in the first session. This fresh look enabled us to spot any obvious mistakes that we had made, of which there were a couple. We updated these, and then continued with the development.

We had initially used the “assign task” function to assign work to people, but Rob had remembered that the function “collect data from user” may be more appropriate. We replaced one of the assign task functions within the process to test this. Using this function allows the user to complete a task directly in Outlook, they do not have to enter SharePoint at all. If they need a refresher to the work, there is a link supplied within the email. The task form can be customised so that only the fields the user needs to complete are shown. This will make completing tasks much quicker.

We decided that this method was much more efficient for this process and have deployed throughout the workflow, with the exception where there is a task to complete, but not something that needs to be completed on SharePoint.

To keep track of what the workflow is doing, and to help us debug problems, we use the workflow history log to record certain events. It’s with this that we discovered an issue with the transfer of the interviewer field from the task form to the record in the withdrawals list. The interviewer field was being transferred as a number related to the person selected rather than their account name, or other identifier. We looked for resolutions to this problem, but later discovered that the correct data was in fact being transferred  to the withdrawals list , but was just not being recorded in the history log correctly.

Once we had the workflow as complete as we could at this stage, we started to look at customising the input form. This is where the user will initially fill in the details of the request. For the time being we have developed the from using InfoPath and made it more responsive, based on the value of other fields, this will make the form easier to read for the user.

SharePoint 2010 Course

Apologies for the lack of recent blog posts. We have recently been working on a multitude of tasks as the project has been starting up. One of the biggest tasks we have been working on is to map the current Student Withdrawal process that is carried out when a student withdraws from the University. We have been working with other departments within the university including one of the Faculties to carry this out. This will help us work with departments to adapt and refine processes when we re-create them in SharePoint 2010. So far this has been a success, so we will be using this method to map out other workflows that need transferring into SharePoint 2010.

Dave, Robert and I have attended a SharePoint course that was tailored for us. We specifically looked at the new features within SharePoint 2010, Workflows and InfoPath.

Day 1: What’s New.

Here we looked at changes in SharePoint 2010. This mainly involved looking at content types which act as templates that can be used for lists. The benefit of this means that if a change is made to a content type that the changes are pushed to all lists where the content type s being used. Site columns, content types, lists.

Day 2: Workflows & InfoPath.

On day 2 we looked at workflows and InfoPath forms. It was recommended to keep workflows short (to keep them manageable and easier to maintain) and to link them together. We looked at getting the workflow to assign tasks amongst other things. We also took some time to look at InfoPath form, where we concentrated on views and rules to hide controls and create custom submit buttons.

Day 3: Tying things together.

The 3rd day consisted of tying things together. We also looked at list lookups, whereby rather than coding variable items into workflows create lists for these and get the workflows to look up to them. This way will enable fewer amendments to be made to workflows in the future as and when staff change or other potential changes could be made.