Work Management Application 
Task Aggregation use cases with SharePoint 2013 and SharePoint 
Online 
Adis Jugo 
Head of Development
22.09.201 
4 
2
Who the... 
• Born in Sarajevo, Bosnia and Herzegovina, 40 years 
ago 
• In SP world since 2002, doing nothing else since 
2006 
• Microsoft MVP for SharePoint Server 
• Head of Development at deroso Solutions GmbH 
• Blogger, speaker, author adis.jugo.ba
9/22/2014 
4
• It is challenging for information workers to get a 
comprehensive view of their tasks, or to have a 
central point for managing their work 
• Tasks are stored across applications and systems, 
and even in case where all tasks are stored within a 
single system, information can still be scattered 
9/22/2014 
Why 
5
• New in SharePoint 2013 
• Provides functionality to aggregate tasks into central 
place 
• Tasks are accessible through the personal site (My 
Tasks) 
9/22/2014 
Work Management Service Application 
6
Work Management Service Application 
• Tasks can be aggregated from Exchange, Project 
Server and SharePoint 
• Based on 'Provider model' so that other systems can 
be eventually integrated in the future 
• Tasks are cached to a users personal site 
• Work Management Service is exposed as part of 
each users My Site / Newsfeed experience
High level picture
Features 
• Tasks managed from one location (My Tasks in 
personal page) 
• Unified tasks timeline (view, add, close tasks) 
• Sync to Outlook (Exchange) 
• Categorized/grouped by “locations” 
• “Pinning tasks (marking tasks as important) 
• Searching tasks
Prerequisites 
• Work Management Service Application (WMA) 
• User Profile Service Application 
• Import from AD 
• Search Service Application 
• necessary for SharePoint 2013 tasks 
• Exchange 2013* 
• Project Service Application * 
• Personal/Newsfeed site (MySites)
TASK AGGREGATION IN SP 
2013 
DEMO 1 
9/22/201411
Under the hood
Service application high level 
architecture
SharePoint 2013: Supported Task Types 
• Task Types 
• 171 / New tasks from SP 2013 (“TasksWithTimelineAndHistory”) 
• 107 / Tasks from SP 2010 (Upgraded Lists) 
• 150 / GanttTasks (Upgraded Lists) 
• Any Tasks from any list that support Task content type 
• Task content type must be set as a default content type
Aggregator for SP 2013 as a Task Provider 
Get from 
cached 
locations 
Look at the 
hint store 
Search for 
tasks (if 
search > 3h 
ago) 
Update 
cached 
locations 
Provider refresh 
minimum time between provider refreshes: 5 min 
Refreshing or 
accessing MyTasks 
page triggers 
aggregator code
Property Default Value Description 
minimumTimeBetweenProviderRefreshes 
minimumTimeBetweenProviderRefreshes 0:05:00 
This value specifies the minimum amount of 
time between refreshes for a provider for a 
given user. There cannot be a refresh of data 
if this value is not met, all refresh operations 
will be null before that. 
minimumTimeBetweenSearchQueries 
minimumTimeBetweenSearchQueries 3:00:00 
This value specifies the minimum amount of 
time between calls to search for a given user. 
This is used to discover new providers not 
yet known to have tasks for this user. 
WMA Properties
WMA Admin Settings 
• Cannot be set in GUI 
• Must be set with PowerShell with 
• Set-SPWorkManagementServiceApplication
Relationship to Search 
• Search Crawler locates tasks lists and loads them into the 
cached locations for Querying by the WMA Provider 
• When a task list is added to the cached locations, new tasks 
from this task list will be found during the next Provider 
refresh 
• Most of the times, even new tasks from the list that are not 
cached will show up in MyTasks 
• Hints (rely on Event Receivers on Task lists) 
• Not triggered if user has no permissions on that list 
• Legacy SharePoint lists will not trigger receiver code (will not end 
up in hints) 
• Generally not guaranteed
Limitations 
• Cross farm aggregation is not supported. 
• The My Tasks page will not report and aggregate tasks from 
another farm from the same domain or from a different 
domain, regardless of the existing trust between the 
domains and farms.
Development model
9/22/2014 
Developing for WMA Service 
21
9/22/2014 
SSOM/CSOM 
22
9/22/2014 
23 
Microsoft.Office.Server.WorkManagemen 
t 
UserSettingsManager 
UserOrderedSessionManager 
UserOrderedSession 
LocationOrientedUserOrderedSession 
TaskQuery 
Task 
Location 
RefreshResult 
KeywordFilter 
FieldFilter 
CustomAttributeFilter 
LastModifiedDateRangeFilter 
LocationFilter 
PinnedFilter
TAMPERING WITH THE 
TASKS THROUGH SERVER 
OBJECT MODEL 
DEMO 2 
9/22/201424
Working with refreshes 
DEMO3
Client Object Model 
• CSOM: Full 
• REST: None
Building a metro app 
• DEMO4
Thus spoke Microsoft… 
Implementation is based on provider model, so 
that additional systems maybe integrated to 
same architecture in future
<NotSupported /> 
9/22/2014 
…no! 
29
Tampering with the Provider 
Model (18+) 
DEMO 5
Further reading: Microsoft white paper 
My Tasks Aggregation in SharePoint Server and Exchange 
Task Integration 
http://www.microsoft.com/en-us/ 
download/details.aspx?id=38799 
Work Managenment Service Development model 
http://blogs.msdn.com/b/mvpawardprogram/archive/2014/03 
/31/work-management-service-in-sharepoint-2013-a-short-overview- 
for-developers.aspx
Questions? 
22.09.201 
4 
THANK YOU!!! 
@adisjugo -- http://adisjugo.com

ShareConf 2014 Work Management Service

  • 1.
    Work Management Application Task Aggregation use cases with SharePoint 2013 and SharePoint Online Adis Jugo Head of Development
  • 2.
  • 3.
    Who the... •Born in Sarajevo, Bosnia and Herzegovina, 40 years ago • In SP world since 2002, doing nothing else since 2006 • Microsoft MVP for SharePoint Server • Head of Development at deroso Solutions GmbH • Blogger, speaker, author adis.jugo.ba
  • 4.
  • 5.
    • It ischallenging for information workers to get a comprehensive view of their tasks, or to have a central point for managing their work • Tasks are stored across applications and systems, and even in case where all tasks are stored within a single system, information can still be scattered 9/22/2014 Why 5
  • 6.
    • New inSharePoint 2013 • Provides functionality to aggregate tasks into central place • Tasks are accessible through the personal site (My Tasks) 9/22/2014 Work Management Service Application 6
  • 7.
    Work Management ServiceApplication • Tasks can be aggregated from Exchange, Project Server and SharePoint • Based on 'Provider model' so that other systems can be eventually integrated in the future • Tasks are cached to a users personal site • Work Management Service is exposed as part of each users My Site / Newsfeed experience
  • 8.
  • 9.
    Features • Tasksmanaged from one location (My Tasks in personal page) • Unified tasks timeline (view, add, close tasks) • Sync to Outlook (Exchange) • Categorized/grouped by “locations” • “Pinning tasks (marking tasks as important) • Searching tasks
  • 10.
    Prerequisites • WorkManagement Service Application (WMA) • User Profile Service Application • Import from AD • Search Service Application • necessary for SharePoint 2013 tasks • Exchange 2013* • Project Service Application * • Personal/Newsfeed site (MySites)
  • 11.
    TASK AGGREGATION INSP 2013 DEMO 1 9/22/201411
  • 12.
  • 13.
    Service application highlevel architecture
  • 14.
    SharePoint 2013: SupportedTask Types • Task Types • 171 / New tasks from SP 2013 (“TasksWithTimelineAndHistory”) • 107 / Tasks from SP 2010 (Upgraded Lists) • 150 / GanttTasks (Upgraded Lists) • Any Tasks from any list that support Task content type • Task content type must be set as a default content type
  • 15.
    Aggregator for SP2013 as a Task Provider Get from cached locations Look at the hint store Search for tasks (if search > 3h ago) Update cached locations Provider refresh minimum time between provider refreshes: 5 min Refreshing or accessing MyTasks page triggers aggregator code
  • 16.
    Property Default ValueDescription minimumTimeBetweenProviderRefreshes minimumTimeBetweenProviderRefreshes 0:05:00 This value specifies the minimum amount of time between refreshes for a provider for a given user. There cannot be a refresh of data if this value is not met, all refresh operations will be null before that. minimumTimeBetweenSearchQueries minimumTimeBetweenSearchQueries 3:00:00 This value specifies the minimum amount of time between calls to search for a given user. This is used to discover new providers not yet known to have tasks for this user. WMA Properties
  • 17.
    WMA Admin Settings • Cannot be set in GUI • Must be set with PowerShell with • Set-SPWorkManagementServiceApplication
  • 18.
    Relationship to Search • Search Crawler locates tasks lists and loads them into the cached locations for Querying by the WMA Provider • When a task list is added to the cached locations, new tasks from this task list will be found during the next Provider refresh • Most of the times, even new tasks from the list that are not cached will show up in MyTasks • Hints (rely on Event Receivers on Task lists) • Not triggered if user has no permissions on that list • Legacy SharePoint lists will not trigger receiver code (will not end up in hints) • Generally not guaranteed
  • 19.
    Limitations • Crossfarm aggregation is not supported. • The My Tasks page will not report and aggregate tasks from another farm from the same domain or from a different domain, regardless of the existing trust between the domains and farms.
  • 20.
  • 21.
  • 22.
  • 23.
    9/22/2014 23 Microsoft.Office.Server.WorkManagemen t UserSettingsManager UserOrderedSessionManager UserOrderedSession LocationOrientedUserOrderedSession TaskQuery Task Location RefreshResult KeywordFilter FieldFilter CustomAttributeFilter LastModifiedDateRangeFilter LocationFilter PinnedFilter
  • 24.
    TAMPERING WITH THE TASKS THROUGH SERVER OBJECT MODEL DEMO 2 9/22/201424
  • 25.
  • 26.
    Client Object Model • CSOM: Full • REST: None
  • 27.
    Building a metroapp • DEMO4
  • 28.
    Thus spoke Microsoft… Implementation is based on provider model, so that additional systems maybe integrated to same architecture in future
  • 29.
  • 30.
    Tampering with theProvider Model (18+) DEMO 5
  • 31.
    Further reading: Microsoftwhite paper My Tasks Aggregation in SharePoint Server and Exchange Task Integration http://www.microsoft.com/en-us/ download/details.aspx?id=38799 Work Managenment Service Development model http://blogs.msdn.com/b/mvpawardprogram/archive/2014/03 /31/work-management-service-in-sharepoint-2013-a-short-overview- for-developers.aspx
  • 32.
    Questions? 22.09.201 4 THANK YOU!!! @adisjugo -- http://adisjugo.com

Editor's Notes

  • #4 VS 2013 with console VS 2013 empty VS 2012 with WP emulator SP Designer Microsoft Azure (IE) Win Dev Portal (IE) Dev site (Chrome)
  • #9  Note. Cross farm aggregation is not supported, so SP sites have to be on same farm.
  • #14 Important: the WM SSA only contact Search, Personal Site and Project SSAs that are in the same proxy group