Tag: Dashboard

Use the SharePoint My Tasks Web Part outside of My Sites

Ever wanted to get the functionality of the “My Tasks” web part, outside your SharePoint 2013 My Site? My team did – adding it to our regular Consultant Dashboard would complete the picture of a comprehensive central employee central dashboard where all one’s tasks, issues, and other key metrics are available in one spot.

The first question is, how to get the My Tasks widget, which essentially seems to be a web part, exported and re-usable elsewhere. This web part is joined at the hip to the Work Management Service and is not available via the GUI to be re-deployed elsewhere as a standard web part.

Although it seems that perhaps in SP 2013 pre-RTM the web part was available to be deployed as a web part via the web part category “Content Rollup” > My Tasks, it ain’t there currently. Would love to know why it was apparently pulled, but that’s not going to distract from the mission at hand.

Simply exporting the web part and importing elsewhere results in a dismal blankness. No errors, no data either. The web part really seems to want to live in the My Site context.

What worked for me was:

1. Going to a “Tasks” page on a My Site, and exporting the Tasks Web Part
2. Using SharePoint Designer to copy the related sub-pages that are linked from the top menu (AllTasks.aspx, Highlights.aspx, Settings.aspx, RecentlyAssigned.aspx, EditTask.aspx, & CompletedTasks.aspx) from the root of the My Site into the destination team site – this allows you to still access those views from the destination site
3. Edit those sub-pages to remove the Personal redirect control reference: <SPSWC:PersonalSpaceRedirect runat=”server”/> That will prevent visitors to the view pages from being redirected to a non-existent My Site.
4. Import the Tasks Web Part into the destination Site.

All is well, we are now rocking with the My Tasks web part added on whatever page we desire:

You can customize the XML manifest for the web part to taste as well:

 <webPart xmlns="http://schemas.microsoft.com/WebPart/v3">
 <type name="Microsoft.Office.Server.WorkManagement.UI.TaskListWebPart, 
Microsoft.Office.Server.WorkManagement.UI, Version=, Culture=neutral, 
PublicKeyToken=71e9bce111e9429c" />
 <importErrorMessage>Cannot import this Web Part.</importErrorMessage>
 <property name="HelpUrl" type="string" />
 <property name="Hidden" type="bool">False</property>
 <property name="ChromeType" type="chrometype">Default</property>
 <property name="AllowClose" type="bool">True</property>
 <property name="ShowRefreshStatus" type="bool">True</property>
 <property name="ExportMode" type="exportmode">All</property>
 <property name="AllowMinimize" type="bool">True</property>
 <property name="AllowEdit" type="bool">True</property>
 <property name="Direction" type="direction">NotSet</property>
 <property name="AllowConnect" type="bool">True</property>
 <property name="MissingAssembly" type="string">Cannot import this Web Part.</property>
 <property name="TaskListType" type="Microsoft.Sharepoint.WorkManagement.TaskListType, 
Microsoft.Office.Server.WorkManagement.UI, Version=, Culture=neutral, 
 <property name="TimelineViewData" type="string" null="true" />
 <property name="HelpMode" type="helpmode">Modeless</property>
 <property name="Description" type="string"></property>
 <property name="TitleIconImageUrl" type="string" />
 <property name="CatalogIconImageUrl" type="string" />
 <property name="ChromeState" type="chromestate">Normal</property>
 <property name="AllowZoneChange" type="bool">True</property>
 <property name="LastQueryTime" type="datetime" />
 <property name="Height" type="string" />
 <property name="ShowViewSelector" type="bool">False</property>
 <property name="Width" type="string" />
 <property name="Title" type="string">My Tasks</property>
 <property name="AllowHide" type="bool">True</property>
 <property name="TitleUrl" type="string">~sitecollection/AllTasks.aspx</property>

The only task remaining that would really smooth it is to figure out how to modify the “views” inside the My Tasks Web Part properties – for example, it’d be  desirable to filter out Completed tasks from the “ProjectSites” view. No idea where that view lives though. 😉