Reservation of resources in SharePoint 2013 and SharePoint 2013 Online in Office 365

CodeProjectSharePoint 2010I suppose, many of you know about a great calendar feature in SharePoint 2010 called resource reservation. It enables organization of meetings in useful interface that allows to select multiple resources such as meeting rooms, projector and other facilities and required pa

SharePoint 2010

I suppose, many of you know about a great calendar feature in SharePoint 2010 called resource reservation. It enables organization of meetings in useful interface that allows to select multiple resources such as meeting rooms, projector and other facilities and required participants, and next the time frame that is free for all participants and facilities in the calendar view. You can switch between week and day views. Here is a screenshot of the calendar with resource reservation and member scheduling features:

You can change resources and participants in the form of your meeting, find free time frames in the diagram and check double booking:

There are two ways to add the resource reservation feature into SharePoint 2010 calendar:

SharePoint 2013 on-premise

After migration to SharePoint 2013 I discovered that these features were excluded from the new platform and saved only as backward compatibility. So, you can migrate your application with installed booking calendar from SharePoint 2010 to SharePoint 2013 and you will keep functionality of resource reservation but you cannot activate it on a new SharePoint 2013 application through default interface.

First, I found a solution for SharePoint 2013 on-premise. It is possible to display the missing site templates including 'Group Work Site'. Then you just need to create a site based on this template and you will get the calendar of resources.

Go to C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\TEMPLATE\1033\XML, open WEBTEMP.XML file, find an element with 'Group Work Site' title attribute and change its Hidden attribute from FALSE to TRUE.

SharePoint 2013 Online in Office 365

Perfect, now we can use free SharePoint booking system based on the standard calendar. But what about SharePoint Online in Office 365? We do not have an access to WEBTEMP.XML in its file system.

After some research I developed a sandbox solution that enables hidden 'Group Work Lists' feature and adds calendar with resource reservation and member scheduling features. Please, download it and follow the instructions to install:

Go to the site collection settings.

Open 'Solutions' area from 'Web Designer Galleries' section.

Upload CalendarWithResources.wsp package and activate it.

Now, navigate into the site where you wish to add the calendar with the enabled resource reservation feature.

Open site settings -> site features.

Activate 'Calendar With Resources' feature.

Great, now you have Group Calendar with an ability to book resources and schedule meetings. This solution works for SharePoint 2013 on-premise as well, so you can use it instead of WEBTEMP.XML file modification.

The form of the meeting:

How it works

I have attached source project to this entry. CalendarWithResources feature is dependent on feature with GUID: 9c03e124-eef7-4dc6-b5eb-86ccd207cb87. This is 'Group Work Lists' web feature that exists for backward compatibility but is hidden from the list of features. So, it is the only way to enable it.

Also solution contains a calendar list with a custom schema. I added EnableResourceSelector="TRUE" and EnablePeopleSelector="TRUE" attributes into the definition. These properties turn on the resource reservation and member scheduling settings of the calendar.

Hello! Thank you for putting this project out. It works wonderfully for our needs. The only thing is that custom workflows dont seem to work. I tried to add a custom workflow in SP designer that would send out email to attendees with the link to the currently added event, but I dont receive any emails. I even tried hardcoded email addressinstead of the Attendee email address. Would be nice to have something like this.

How do I continuously display all resources on the group calendar. At the moment I have to always add the resources when opening the calendar. This makes it difficult to see what is available at any one time
Thanks

I tried to deactivate the Calendar Resources from both Site Features and the Solutions package. However, when I do so, the calendar still shows my name and when I go to add a new appointment the Resources selector still shows up. How can I completely remove this solution?

Hi there, great webpart! One question though, is there anyway to use this calendar as a "where are these people" calendar? I setup a SharePoint group and tried to add it but when I refresh the page, the users disappear. Anyway to permanently add certain users to the calendar? I'm using SharePoint Online fyi.

Hello,
Unfortunately, I do not quite understand what you mean. When you create meeting you can select multiple resources e.g. Meeting room 1 and Polycom etc. You don't have to create multiple meetings for the same person to book multiple resources. Create one meeting with multiple resources.

Upon activating your calendar and the "group lists" feature in Office 365, a "Resources"-list is created as well. I assume this is the list your calendar is supposed to draw the resources from, but I only get a "list not found" error page when attempting to book a resource.

Do you happen to know what causes this problem, and how I might fix it?

Tried that, the problem persists...
Might be noteworthy that my Office 365 is in a different language, could the problem lie there? I already attempted renaming the Resources-list to its English name, but the calendar still can't find the list...

One issue I am having is that the resources field is not displaying correctly, instead of displaying the resource name in the field it shows some code. Any thoughts on a fix would be greatly appreciated.