1 / 23

Windows SharePoint Services “v3”: Developing Collaboration And Tracking Applications

Windows SharePoint Services “v3”: Developing Collaboration And Tracking Applications. Mike Morton OFF310 Lead Program Manager Microsoft Corporation. Business Intelligence. Collaboration. Business Processes. Portal. Content Management. Search.

claudia
Download Presentation

Windows SharePoint Services “v3”: Developing Collaboration And Tracking Applications

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Windows SharePoint Services “v3”: Developing Collaboration And Tracking Applications Mike Morton OFF310 Lead Program Manager Microsoft Corporation

  2. Business Intelligence Collaboration BusinessProcesses Portal Content Management Search Office “12” : Server InvestmentsBetter empowerment, TCO and developer productivity Server-based spreadsheets plus BI portals built on SQL Server Analysis Services Next generation e-mail, project management, workflow, blog and wiki support Windows SharePoint Services Server-based forms and workflow with smart client and browser interfaces Enhanced SharePoint Portal aggregation and personalization Site Provisioning, Storage, Security, Management, APIs Integrated document, records and Web content management Great relevance with rich people and business data search Unified ASP.NET 2.0 workspace foundation for scalability and extensibility

  3. SharePoint lists are frequently used for ‘tracking’. This can include tracking issues, tasks, contacts, documents, etc. SharePoint Services “V3” adds many core ‘list’ features to enabled users/developers to build great ‘tracking’ applications Feature areas List history and versioning Project Tasks list Email support Distribution list support Sync APIs and Outlook synchronization UI extensibility Alerts and RSS Collaboration And Tracking Features Overview

  4. List History And Versioning • Core improvements to ‘list’ architecture to support tracking • Version history for all SharePoint items • Shows changes to the item for each version • “Append-only” comment fields • Multi-valued lookup fields • Large list indexing support • Applications built on SharePoint lists get functionality for ‘free’. • Updated ‘Issue tracking’ template • Integration with Windows Workflow Foundation for approval or custom workflows

  5. Project Tasks List • Lightweight project management functionality • Gantt charts for visualization of project plan • Gantt view generic functionality available for any list type with date fields

  6. Demo Tracking Functionality

  7. Example Versions OM SPSite site = new SPSite("http://os.litwareinc.com/research/"); SPWeb web = site.OpenWeb(); SPList list = web.Lists["Issues"]; SPListItemCollection items = list.Items; foreach (SPListItem item in items) { foreach (SPListItemVersion version in item.Versions) { if (version["Priority"].ToString() == "(1) High") label1.Text += "Version " + version.VersionLabel + " - " + item["Title"].ToString() + ": " + version["AssignedTo"].ToString() + "\n"; } }

  8. Email Integration • SharePoint Lists can now receive e-mail • Discussion Boards, Calendars, Document Libraries, Announcements accept incoming email • Discussion boards maintain email threading and full HTML messages • Calendars process incoming iCals • Document libraries map attachments to documents • Extensible support for custom ‘e-mail handlers’ • Custom lists can support email by writing a ‘handler • SharePoint handles routing of email, your code can map email data to list data

  9. Example Email Handler namespace TaskHandler { public class SimpleHandler:SPEmailEventReceiver { public override void EmailReceived(SPList list, Microsoft.SharePoint.Utilities.SPEmailMessage emailMessage, string receiverData) { SPListItem item = list.Items.Add(); item["Title"] = emailMessage.Headers["Subject"]; item["DueDate"] = System.DateTime.Parse(emailMessage.Headers["Date"]).AddDays(21); item["Description"] = emailMessage.HtmlBody; item.Update(); } } }

  10. Distribution List Support • SharePoint site groups can have an associated ‘distribution list’ • Create a distribution list for members upon site creation • SharePoint sites will talk with directory services to create / manage distribution lists • Interface with directory service is pluggable through SharePoint directory management Web service interface • AD directory management Web service provided in SharePoint • Example: Plug into existing directory management tools – apply policy on allowed naming for distribution lists

  11. Outlook And Synchronization APIs • Outlook allows user to work with personal and team data in one place • Read/Write access to SharePoint datatypes • Calendar, tasks, contacts, discussions, and documents • Synchronization for offline support • Change Log APIs optimized for synchronization • GetListItemChangesSinceToken – Web service method that returns list of items that changed (adds, updates, deletes, etc)

  12. GetListItemChangesSinceToken Example <Changes LastChangeToken="1;3;f3141dd8-b7ae-47ab-9fcf-e5583242a625;632599270189500000;696"> <Id ChangeType="Delete">9</Id> <Id ChangeType="Delete">11</Id> </Changes> <rs:data ItemCount="1"> <z:row ows_Attachments=';#http://server/Lists/Announcements/Attachments/13/News.txt;#' ows_LinkTitle='Announcement 5' ows_Modified='2005-08-18T01:55:42Z' ows_MetaInfo='13;#' ows__ModerationStatus='0' ows_Title='Announcement 5' ows_ID='13' ows_owshiddenversion='3' ows_UniqueId='13;#{A458968C-052A-42C5-B8CB-D90564D8430F}' ows_FSObjType='13;#0' ows_Created_x0020_Date='13;#2005-08-18T01:54:02Z' ows_Created='2005-08-18T01:54:02Z' ows_FileLeafRef='13;#13_.000' ows_FileRef='13;#Lists/Announcements/13_.000' ows_ScopeId='{A3588C7A-5389-43A0-8354-D1677D6A7968}' EffectivePermMask='FullMask'/> </rs:data>

  13. Demo Outlook Synchronization And Email Support

  14. Keeping Informed • Alerts • Filters for more relevant alerts • Richer information about item that has changed in the alert • Platform for custom formatting, events, and alerts • RSS • All SharePoint lists provide RSS feeds

  15. Alert Template Snippets <FilterDefinition> <FriendlyName>Sample Alert<FriendlyName> <ShortName>$Resources:Alerts_2_filter_shortname;</ShortName> <Query> <And> <Eq> <Value type="integer"><UserID /></Value><FieldRef name="Editor/Old"/> </Eq> <Neq> <Value type="integer"><UserID /></Value><FieldRef name="Editor/New"/> </Neq> </And> </Query> </FilterDefinition> …

  16. Alert Template Snippet <Immediate> <Subject> <GetVar Name="AlertTitle" /> <HTML><![CDATA[ - ]]></HTML> <GetVar Name="ItemName" /> </Subject> <table> <tr> <td class="leftcol">&nbsp;</td> <td>&nbsp;</td> <td class="descriptiontext">$Resources:Alerts_event_lastmodified; ]]></HTML> <GetVar Name="TimeLastModified" HTMLEncode="TRUE" /> <HTML><![CDATA[ by ]]></HTML> <GetVar Name="ModifiedBy" HTMLEncode="TRUE" /> <HTML><![CDATA[</td><td class="rightcol">&nbsp;</td> </tr> </table> <Immediate>

  17. UI And Navigation • Breadcrumb • Site bread crumb provides user navigational context • Security Trimmed UI • Only show UI to users to which they have access • Quick Launch and top navigation • Present on view pages • Customizable in the browser UI • View Improvements • Paging Backwards • Better Filter/Sort UI

  18. Example Custom Menu Item <Feature Id="0F121A23-C6BC-400F-87E4-E6BBDD999999" Title="Site Actions Menu Customization" Description="Test Site Actions Menu Customization" Version="12.0.0.0" Scope="Site" xmlns="http://schemas.microsoft.com/sharepoint/"> <ElementManifests> <ElementManifest Location="operations.xml" /> </ElementManifests> </Feature> <CustomAction Id="SiteActionsCustomization" Location="Microsoft.SharePoint.StandardMenu" GroupId="SiteActions" Title="SiteActions Menu Customization" ControlAssembly="SiteAction,Version=1.0.2075.32537,Culture=neutral,PublicKeyToken=018d632ecf51b278" ControlClass="SiteAction.SiteActionCustomization"> </CustomAction>

  19. Example Custom Menu Item public class SiteActionCustomization : WebControl { protected override void CreateChildControls() { base.CreateChildControls(); MenuItemTemplate menuItem = null; ToolBarMenuButton siteActionsControl = ToolBarMenuButton.GetMenuControl(this); menuItem = new MenuItemTemplate(); menuItem.ID = "CustomAction"; menuItem.Text = "Advanced Permissions"; menuItem.Description = "Manage users for this site."; menuItem.Sequence = 400; menuItem.ClientOnClickNavigateUrl = "/_layouts/user.aspx"; Controls.Add(menuItem); } }

  20. Demo Alerts, RSS, And UI customization

  21. Community Resources • SharePoint Products and Technologies on MSDNhttp://msdn.microsoft.com/sharepoint • SharePoint Products and Technologies on GotDotNethttp://gotdotnet.com/team/sharepoint • Links to blogs, newsgroups, etc.

  22. Questions?

  23. © 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

More Related