Tuesday, February 28, 2012

Integrating SharePoint and Outlook 2007


Overview

Before SharePoint 2007 there was limited integration, at least without 3rd party products, between Outlook and SharePoint.  With the 2007 versions of both products multiple list types can be linked directly to Outlook quickly and easily.  Once linked, items in those lists can be created, edited, and deleted directly in Outlook.  In addition, items like contacts, tasks, and appointments even show up like the tradition Exchange\mailbox based objects.  Furthermore, calendars can even be merged, or overlaid, so items from multiple calendars are shown in a single calendar view.
Organizations should be able to use the capabilities covered in this article to start their migration or planning of their migration from Public Folders and shared mailboxes for the items covered in this article.  With MOSS Microsoft has extended the collaboration capability of SharePoint to tie into the most common collaboration tool used by users, Outlook.  This support should help further justify SharePoint as a replacement for file shares, attachments in e-mail, shared mailboxes, and public folders in many cases.

Linking SharePoint to Outlook 2007

As indicated by the title of this article, these features are only available with Outlook 2007 and Microsoft Office SharePoint Server (MOSS) 2007.  Starting with Office 2007 Microsoft has provided direct integration between the Office client and server.  This integration should help organizations to collaborate more effectively.  In addition, these features should assist in the migration away from using Public Folders in Exchange for some of the areas covered below.

Calendars

Shared, public folder based, calendars are commonly used in many organizations and the support in SharePoint 2007 should make it easy to transition users away from Public Folders.  This support included e-mail based acceptance of meetings, web access, alerting when items change, access control\permissions, workflow, custom fields, versioning support, and more.

Mail enabling a calendar

1)      Create a calendar list, or navigate to an existing one
·         If creating a new calendar select No under "Incoming E-mail" option, for now.  In the future you can select Yes but doing so here doesn’t prompt for all of the configuration options.
2)      Enabled incoming mail on the MOSS server
·         By default incoming SMTP mail is not enabled under the central operation configuration section of SharePoint.
·         Without allowing incoming mail, no lists in SharePoint can be mail enabled, which is needed to provide e-mail based appointment acceptance for a shared calendar.
·         These steps requires configuring SMTP on the server hosting SharePoint, configuring MX records for the server, and setting up correct routing so e-mails from the internal e-mail system for your organization route to the SharePoint server.
a)      See the steps in this Microsoft TechNet article.
3)      Enable incoming mail for the calendar list
a)      Select List Settings from the Settings pull-down menu for the calendar
b)      Under the Communications column choose "Incoming e-mail settings"
c)      Check Yes under "Incoming E-Mail"
d)      Enter the prefix for the e-mail address for the shared calendar
·         When the list is mail enabled a contact will be created in the Active Directory.  This contact can be given additional e-mail addresses, so users can send mail to Sales-Calendar@company.com instead of Sales-Calendar@spserver.company.com, for example.
e)      If do not you want the calendar to "Save attachments" sent to the above e-mail address select No
·         In general I would suggest setting this on No so large attachment don’t waste space in SharePoint.  In addition, users should be trained to send out URL to documents stored in SharePoint instead of attaching them to e-mail messages.  Finally, by removing attachments sensitive documents won’t be posted to a shared location.
f)       If you want the shared calendar to only accept appointment from people with contributor access choose "Accept e-mail messages based on list permissions"
·         This requires that the users who send appointment are in the same AD forest as the SharePoint server.  Otherwise SharePoint will not be able to match the sender’s e-mail address to an AD account, which is needed to check to see if the sender has the required permissions or not.
·         If the calendar read permissions are set to anonymous and you want users outside of your AD forest to send appointments to it, you must choose the "any sender" option.

Figure 1 - Calendar Mail Options
g)      Click OK to save changes
h)      Click on the name of the calendar to view the calendar again

Link Calendar to Outlook

Now that the calendar has been created and setup to accept appointments we will link it to Outlook.  The users who need to look at, or manage, the calendar often will find this more convention the navigating to the SharePoint site to make edits, in most cases.
1)      While viewing the calendar choose Actions\Connect to Outlook
Figure 2 - Connecting SharePoint Calendar
2)      When prompted, choose Yes to allow the connection
Figure 3 - Connect confirmation
·         This option actually creates a, or uses the exiting, PST file that SharePoint uses to store all synchronized content so it can be accessed when off-line.
3)      This should bring up your calendar in Outlook
·         By default the new calendar and your personal calendar will be shown
Figure 4 - SharePoint calendar in Outlook

Merging a SharePoint Calendar with a Personal Mailbox Calendar (optional)

1)      To merge or overlay both a SharePoint and a mailbox based personal calendar click the left arrow to the right of the SharePoint calendar name
2)      This will overlay both calendars, click the tab of the one you want to be your primary
Figure 5 – Merged mailbox and SharePoint calendars
·         Below three calendars have been merged into one
Figure 6 - Three merged calendars
3)      To unmerge a calendar click the right arrow by the calendar name
4)      To prevent a calendar from being displayed just uncheck them under "Other Calendars"
Figure 7 - Calendars in Outlook
5)      To remove a calendar completely right click on it under "Other Calendars" and choose Delete
·         You will be given a warning when you do this.  This option only deletes it from the PST file used by Outlook to store SharePoint data.

Adding items to the shared calendar

Items can now be added to the calendar in three ways.
1)      E-mailed invitations
a)      Create an appoint in Outlook
·         If you are viewing your calendar in Outlook make sure you have your personal calendar tab, "Calendar" selected.
b)      Click Invite Attendees
c)      Type in the e-mail address of the calendar or select it from the GAL
·         The contact object created by SharePoint for the shared calendar will be visible in the GAL by default.  But due to AD replication latency, Offline Address Book generation delays, and cached mode Outlook clients, it may not show up in the GAL for awhile.  By default the OAB is only generated once a day and cached mode client used the OAB for their GAL, so they won’t see new object until the new OAB has been generated and downloaded.
d)      Set any other options as you normally would and click Send
·         This will send the appointment invite to SharePoint, which will automatically accept the appointment.  The appointment will also show up on your calendar.
·         SharePoint calendars do not support advanced rules, like prevention of meeting conflicts, meeting size, etc, so they should not be used for rooms or equipment.  The Auto Accept Agent for Exchange 2003 or Exchange 2007 natively provides these capabilities for shared mailboxes, or resource mailboxes.
e)      After a few minutes navigate to the SharePoint calendar and confirm the appointment shows up
f)       In Outlook hit F9 to force a full synchronization of all items
·         By default SharePoint list in Outlook are only synchronized every 30 minutes.
g)      Goto the shared calendar in Outlook and view the new appointment
2)      Direct booking in Outlook
a)      Select the Calendar tab in Outlook
b)      Click the shared calendar tab to make it the current calendar
·         If it is not shown click the check box next to it under "Other Calendars."
c)      Click New to create a new appointment
·         The options show for this meeting invite will be different than those shown for a normal appointment, for example there is no Invite button.
d)      Set the meeting options and click Save & Close
e)      Hit F9 to force a full synchronization of all items
f)       Navigate to the calendar in SharePoint and confirm the appointment shows up
3)      Direct booking in SharePoint
a)      Navigate to the calendar in SharePoint
b)      Click New to create a new appointment
c)      Set the desired options and click OK
d)      Hit F9 to force a full synchronization of all items
e)      Select Calendar tab in Outlook
f)       Click the shared calendar tab
g)      Confirm the appointment shows up

Tasks

When working on several projects with various team members, task management becomes very important.  Using a SharePoint tasks list allows individual team members and managers to easily assign tasks to other team members and to monitor the status of all tasks.  Once a SharePoint task list is linked to Outlook those tasks show up in the To-Do Bar, like other Outlook tasks.  They will also show up under the Tasks tab in Outlook.  Furthermore, these tasks can be updates directly in Outlook or in SharePoint.

Prepare a task list

1)      Create a new Tasks list, or navigate to an existing one
·         If creating a new list choose Yes under "E-Mail Notification", this setting requires SharePoint is enabled to send out SMTP mail.
2)      Enable e-mail notifications of updates
a)      Goto the list settings
b)      Click Advanced Settings
c)      Under "E-Mail Notification" choose Yes
·         This option will e-mail user when tasks are assigned to them or task that are assigned to them are modified.

Link Tasks to Outlook

1)      Select Actions\Connect to Outlook from the list’s pull-down menu
Figure 8 - Connecting tasks to Outlook
2)      Filter the task list to only show those assigned to you and active
By default all tasks will be shown, including those for other people and completed ones.  These steps will help filter the list so only active ones for the user will be shown.
a)      Goto Tasks in Outlook
b)      Expand "Other Task", in the left hand pane
c)      Choose the ""
d)      Choose View\Current View\Customize Current View from the Outlook pull down menu
e)      Click the Filters button and then click the Advanced tab
f)       Click the Fields button and choose All Tasks fields\Assigned To
Figure 9 - Creating a filter on tasks
g)      Enter your name, in the format of , in the Value box and click Add to List
·         This assume names in the GAL are in this format, if not enter your name the way it appears in the GAL.
h)      Repeat step e)
i)        Repeat step f) and choose All Tasks fields\Custom Status
j)        Change condition to "doesn’t contain" and enter "Completed" in Value box and click Add to List
k)      You should up with a filter like this one:
Figure 10 - Task list filter
l)        Click OK & OK
m)   The view in Outlook should now look like this:
Figure 11 - Filtered task lists

Create Tasks

Like appointments, tasks can be created both in Outlook and directly in SharePoint.
1)      Using Outlook
a)      Goto Tasks in Outlook
b)      Select the shared tasks list under "Other Tasks"
c)      Click New
·         You will notice at the bottom of the new task window it will say "In Shared Folder: "
d)      Select who the task should be assigned to
e)      Enter other settings and click Save & Close
·         You can only sent the reminder value using Outlook
2)      Using SharePoint
a)      Goto the task list on the SharePoint site
b)      Click New
c)      Select who the task should be assigned to
d)      Enter other settings and click OK

Getting alerts

If you selected the option to generate alerts\e-mails when tasks are assigned or modified the owner of a task will get e-mails similar to the one below.  The alert is generated by the SharePoint server only after the new item has been synchronized to SharePoint, F9 to force, from task that are created and modified in Outlook. 
Figure 12 - E-mail alert on a task change
SharePoint does not sent alerts out immediately, by default there seems to be about a 5 minute delay before alerts are set out.  I am sure there is a way to adjust this settings but I haven’t research it.

Setting up alerts on other changes

SharePoint supports alerting users to any changes with multiple filtering options.  Using this feature a manager or team lead can easily monitor tasks as their status changes.  Below I give an example of how to setup a daily alert on for changes that have occurred.
1)      Navigate to the list in question
2)      Click Actions\Alert Me from the list’s pull-down menu
Figure 13 - Creating an alert
3)      This brings up the new alert options:
Figure 14 - Alert options
a)      Change the name to "Daily for Calendar"
b)      Leave Send Alerts To set on your name
Multiple names or mail enabled groups can be added to this list.  This will let you setup daily alerts for other people.  I would suggest informing users to setup alerts, if one hasn’t been done for them already, if they want to know when items change.  I also suggest putting together an "end users" Quick Tips & FAQ for guide for SharePoint.
c)      Select "All changes" under Change Type
d)      Select "Anything changes" under Send Alerts for These Changes
e)      Select "Send daily summary" and When to Send Alerts
f)       Click OKAfter a few minutes you should get a confirmation e-mail that the alert has been setup:
Figure 15 - Alert creation notification
·         If alerts are setup for other users, who are using Outlook 2007, they can quickly connect to this task list by clicking the Connect to this Task Listbutton.  So very little training should be needed, but a demo of how Outlook and SharePoint integrate would help speed learning along.
4)      When the daily alert runs users will see something similar to this:
Figure 16 - Daily change alert

Contacts

Contact list can also be shared easily with SharePoint.  This provides the same functionality that many people have used a public folder in the past for, but SharePoint has much better support for alerting on changes, custom fields, versioning and more.

Linking Contacts to Outlook

1)      Navigate to the Contact list in SharePoint
2)      Select Actions\Connect to Outlook from the list’s pull-down menu

Document Libraries

When a document library is linked to Outlook all items in that library are download to a local PST, the same one used for other linked lists.  Office 2007 applications like Word and Excel have built-in support to detect that files in local PST are being opened.  These applications will prompt the user to update the copy of the file in SharePoint when saving changes or inform users a more recent copy is available in SharePoint, if they are on-line.

Linking a Document library to Outlook

1)      Navigate to the Document library list in SharePoint
2)      Select Actions\Connect to Outlook from the list’s pull-down menu

Editing Documents

Documents can be edited directly from SharePoint, which is suggested, or by opening them inside of Outlook.  Below are the steps to open documents from Outlook directly.
1)      Click the Folder List icon to show the all folders available to Outlook
·         This will display all folders, including those in your mailbox and in PST files.
2)      Expand the "SharePoint List" folder group\PST
Figure 17 - SharePoint lists PST
·         This contains all SharePoint lists that have been linked to Outlook.  Contacts, Tasks, and Calendars can also be viewed by going to the appropriate section in Outlook.
3)      Select the document library folder, in my case this is "Demo Site – Files"
·         All files that are in this library will be shown; if folders have been created they will also be shown.
4)      Double click the document you want to open
5)      Click Edit Offline, if the document in a Word or Excel, and possible other Office 2007 documents
Figure 18 - Edit Offline option in Word
6)      Click OK when Office displays an information message that the file will be cached to the SharePoint Drafts folder
7)      Edit the document as normal
8)      When done editing exit the application
9)      The application will prompt you to update the server, SharePoint, choose Update
Figure 19 - Update server prompt
·         If the user is offline they will not prompted to update the server.  They will be shown in Outlook that the file they edited has been modified offline, note the icon with the red up arrow in the screen shot below.  To update the server the document needs to be opened again, when the user is on-line.
Figure 20 -  Document edited offline
·         When the user in back on-line and they open this document, from Outlook, they will see this message:
Figure 21 - Application alert to update SharePoint copy
It is recommended that if a user is going to work on items off-line that they check-out those items in SharePoint to prevent others from editing them.  In addition, if a user opens a document in Outlook they should continue to work on it from Outlook, not from SharePoint directly, until they have updated the server version of the document.  This will help prevent version conflicts and document update issues.

Discussion Groups

Like the other items covered so far, Discussion Groups can also be linked to Outlook.  This allows users to easily monitor discussion groups for new posts.  In addition, exiting messages can be copied into the discussion group by dragging them, but folders cannot be dragged to linked discussion groups, at least in the RTM version of SharePoint and Outlook 2007.

Mail Enabling

To truly be a replacement for the most common uses of Public Folders, the "archiving" of e-mails, a discussion group must be mail enabled.
1)      Navigate to the Discussion Group list in SharePoint
2)      Select Settings\List Settings from the list’s pull-down menu
3)      Choose Yes next to Incoming E-Mail and enter the prefix for the e-mail address
Figure 22 - E-mail options
·         I would suggest saving attachments and the original e-mail.  Save meeting invites can be left to No, unless there is a need to allow people to open up meeting to save them to their calendar.  Unless you want anonymous users to post items to this discussion group leave it on the option to accept messages based on permission.
4)      Click OK to save changes

Linking Discussion Groups to Outlook

1)      Navigate to the Discussion Group list in SharePoint
2)      Select Actions\Connect to Outlook from the list’s pull-down menu

Integration Notes

To make list like Document Libraries and Discussion Groups easier to find do the following:
1)      Click the "Folders List" icon in Outlook to display the "SharePoint Lists" folder tree
2)      Right click the list you want to make easier to find and choose "Add to Favorite Folders"
  • This will add the folder to the Favorites list, which is displayed when the Mail tab is selected in Outlook.

By default Outlook will synchronize data every 30 mins.  To modify this do the following:
1)      Goto "Tools -> Send/Receive -> Send/Receive Settings -> Define Send/Receive Groups" menu option or hit CTRL-ALT-S
2)      Change the "Schedule an automatic send/receive every X minutes" setting
  • As an alternative another Send/Receive group can be created for SharePoint list items.

Additional Information

o   Getting started guide to SharePoint and Office 2007 integration
o   This white paper describes how different versions of Office programs work together with the 2003 and 2007 versions of SharePoint technologies.

Conclusion

By linking SharePoint lists, which allow for easy updating by multiple users, users will be able to collaborate on projects and other items easier than before.  The additional support provided by alerts and versioning also makes managing a project and the related items possible with Outlook alone.