Welcome to the Delaware Valley SharePoint User Group Russ Basiura Principal Consultant RJB Technical Consulting
Delaware Valley SharePoint User Group AGENDA Quick Intro Announcements FREE Out of the Box Web Parts –Breadcrumb Navigation –DataView –Chart – [5 minute break] SharePoint Custom Web Part Development –Why –Getting Started – The Development Environment –Getting Started – Developing a Basic Web Part using C# –Deployment Options – [5 minute break] CorasWorks Round Table Q & A
Delaware Valley SharePoint User Group Introductions DVSUG Sponsor RJB Technical Consulting ( – Delaware Valley based Microsoft consulting company – Microsoft Partner – Practice Area focused on Information Worker Technologies – Office “12”, SharePoint v3, Groove Private Beta Partner
Delaware Valley SharePoint User Group User Group Goal / Objectives Build a local community focused on Microsoft SharePoint Technologies –Educate user group members about SharePoint Technologies –Transfer knowledge within the community –Communicate best practices –Introduce new products / solutions
Delaware Valley SharePoint User Group Website for user group SharePoint resource documents SharePoint resource websites links RSS Feeds Meeting Schedule Past User Group Presentations Blogs Live Meetings / Webex Discussions
Delaware Valley SharePoint User Group Upcoming Schedule Next Meeting – Febraury 22nd 5:30 PM to 8:30 PM – StayBridge Suites, Malvern, PA – Topic: You tell us – Survey out on Ongoing Schedule – Last Wednesday of every month – 5:30 PM to 8:30 PM – StayBridge Suites, Malvern, PA
Delaware Valley SharePoint User Group SharePoint Advisor Magazine “The Advisor Guide to using Microsoft SharePoint technology, Windows SharePoint Services, SharePoint Portal Server, and more, including Microsoft Office System and SharePoint, enterprise integration and administration, and innovative SharePoint-based solutions, with how-to, tips, code, downloads, training, step- by-step, and more...” Have contacted editor -- hope to get some free first issues for the Delaware Valley SharePoint User Group
Delaware Valley SharePoint User Group SharePoint Connections Conference Technical conference focusing on SharePoint – Tips – Tricks – Code – How To’s $1295 Main Event Registration by Feb $1395 Main Event Registration after Feb April 2 - 5, 2006 Orlando, Florida Hyatt Regency Grand Cypress Hotel
Delaware Valley SharePoint User Group SharePoint Toolkit FREE and Out of the box web parts that help make your deployment more successful –Breadcrumb Navigation –Dataview –Chart
Delaware Valley SharePoint User Group Adding a breadcrumb web part What is a breadcrumb? Navigation hierarchy – Ex: Home >> Divisions >> HR Addresses the “Up To [ABC Site]” issue of single level Utilizes a free web part Can be included in templates Improves usability and navigation
Delaware Valley SharePoint User Group Adding a breadcrumb web part Download web part from: f90-dd4a-490c-a7dd- 4ce6e20137b3/BreadcrumbSiteNavigation.zip Install to server Update web.config Import DWP file to site or page Add to web page for navigation
Delaware Valley SharePoint User Group Demo Adding a Breadcrumb Web Part
Delaware Valley SharePoint User Group The DataView Web Part Created in FrontPage Can Consume… – SharePoint Lists/Libraries – Data in Databases – Web Services – Practically anything that is XML Customizable – Layout/Style – Connectable – Conditional Formatting
Delaware Valley SharePoint User Group The Data Source Catalog Task Pane available when creating a DataView Displays… – Lists/Libraries for the current Site – Existing Database Connections – Existing XML Files (current site or manually added) – Server-side Scripts (parameterized web pages that emit xml) – Web Services (i.e. SharePoint Web Services)
Delaware Valley SharePoint User Group DataView Details Configuration Task Pane (Details) available when configuring a DataView Allows configuration of… – Styles – Filtering – Sorting and Grouping – Conditional Formatting -- style changes based on data value(s) Displays the data available for consumption Why?? – Full control over the presentation – Powerful grouping functionality – Seamlessly integrate existing data into SharePoint
Delaware Valley SharePoint User Group Demo Data View Web Part
Delaware Valley SharePoint User Group Using Chart Web Part XML or List based Supports XPath queries Highly configurable –Line –Pie –Bar Outputs PNG or VML (no client side requirements)
Delaware Valley SharePoint User Group Charting Web Part Download web part from: downloads/components/detail.asp?a= 701 Install the CAB file into the GAC (stsadm –o addwppack –filename ChartWebPartLibraryCAB.CAB – globalinstall) Give SharePoint Application Pool user Write access to C:\Program Files\Common Files\Microsoft Shared\web server extensions\wpresources\ChartWebPar tLibrary\ __ec1e93bf640efdaf Place Web Part on a Page Serve with XML or List Data
Delaware Valley SharePoint User Group Demo Graphing Using Charting Web Part
Delaware Valley SharePoint User Group 5 minute break
Delaware Valley SharePoint User Group Building and Deploying Web Parts using C#
Delaware Valley SharePoint User Group Why Create Custom Web Parts? Extend the functionality of SharePoint – Leverage the Object Model – e.g. Custom Advanced Search, … Integrate Existing Data/Functionality – Other Data sources – Consume Web Services – e.g. Line of Business Data Dashboards/Reporting – e.g. Analytics (Charts, Graphs, Gauges) – SQL Reporting Services
Delaware Valley SharePoint User Group Getting Started The SharePoint Developer Environment
Delaware Valley SharePoint User Group Basic Development Environment Requirements Visual Studio.NET Local Version of SharePoint Assemblies – Microsoft.SharePoint.dll Required for all Web Parts – Microsoft.SharePoint.Portal.dll Required for leveraging Portal-specific functionality (i.e. Audiences, Portal Searching, User Profiles, etc.)
Delaware Valley SharePoint User Group VS.NET Web Part Project Template (available on MSDN) – Project Template for DWP, Manifest, Basic Web Part Class, etc. Access to a machine running Windows SharePoint Services – Portal is ONLY required for Portal-specific web parts – Tip: Leverage Virtual Server or Virtual PC SDK for WSS and Portal for Object Model Documentation Basic Development Environment Requirements
Delaware Valley SharePoint User Group Getting Started Developing a Basic Web Part
Delaware Valley SharePoint User Group The Core Your Web Part.NET Assembly encapsulating the server-side code and the rendering of the HTML A DWP file (XML-based) storing some common property values and points to the.NET assembly to be loaded Safe Control Settings and Trust Level in the virtual server’s Web.config
Delaware Valley SharePoint User Group The DWP – Web Part Description File My Customers Displays a list of customers for the current user. DVSUG.WebParts DVSUG.WebParts.MyCustomersWebPart
Delaware Valley SharePoint User Group The Web.config … <SafeControl Assembly=“DVSUG.WebParts" Namespace=“DVSUG.WebParts" TypeName="*" Safe="True"/> …
Delaware Valley SharePoint User Group The Web Part Framework – Web Part Class Derive from Microsoft.SharePoint.WebPartPages.WebPart ToolboxData XmlRoot Your Class [ToolboxData(" "), XmlRoot(Namespace=“DVSUG.WebParts")] public class MyCustomersWebPart : Microsoft.SharePoint.WebPartPages.WebPart
Delaware Valley SharePoint User Group The Web Part Framework - Properties Public “Serializable” properties are visible on the Tool Pane – string, bool, int, float, enum, System.DateTime, and System.Drawing.KnownColor Decorate Public Properties with Attributes [Browsable(true), DefaultValue(0), WebPartStorage(Storage.Personal), Description("Determines the maximum number of customer records to return (a 0 implies all customers)."), FriendlyName("Max Customer Records"), Category("Configuration")] public int MaxRecords { get { return _maxRecords; } set { _maxRecords = value; } }
Delaware Valley SharePoint User Group The Web Part Framework – CreateChildControls Override for Composite Controls – Leverage existing ASP.NET server controls (Calendar, Button, etc.) Wire-up Events protected override void CreateChildControls() { _button = new Button(); _button.Text = "Click Me"; _button.Click += new EventHandler(button_Click); this.Controls.Add(_button); }
Delaware Valley SharePoint User Group The Web Part Framework – RenderWebPart Override to Emit HTML/Render your Control protected override void RenderWebPart(HtmlTextWriter output) { output.Write(“Please click my button ”); this._button.RenderControl(output); }
Delaware Valley SharePoint User Group Demo Create a Basic Web Part
Delaware Valley SharePoint User Group Web Part Deployment Options
Delaware Valley SharePoint User Group Deployment Options Manual – Assembly in bin or GAC (must be signed if in GAC!!!) – web.config SafeControl STSADM – Manifest – CAB File – stsadm.exe -o addwppack WPPackager – Download from MSDN – MSI File to Install on Web Server
Delaware Valley SharePoint User Group Q & A
Delaware Valley SharePoint User Group CorasWorks Workplace Suite
Delaware Valley SharePoint User Group Round Table Discussion