Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Visio Services in SharePoint 2010


Published on

Published in: Technology
  • Be the first to comment

Visio Services in SharePoint 2010

  1. 1. Visio Services in SharePoint 2010<br />Level 200<br />6/27/2010<br />1<br />Visio Services<br />
  2. 2. About me<br />Alexander Meijers<br />Solution Architect / SharePoint Consultant<br />Over 16 years of IT experience<br />Small to large SharePoint projects<br />SharePoint Geek and Speaker<br />Blog:<br />Twitter: @ameijers<br />Email:<br />6/27/2010<br />Visio Services<br />2<br />
  3. 3. Agenda<br />What is Visio Services<br />Visio and your business<br />Visio Graphics Service<br />Visio Web Access Web Part<br />Use a Data Provider<br />Visio Diagram and Scripting<br />Custom Data Provider<br />Lots of demo’s !!!<br />6/27/2010<br />Visio Services<br />3<br />
  4. 4. What is Visio Services<br />Visio Services enables your SharePoint 2010 environment to display and inter-act with Microsoft Visio documents<br />Connection between Microsoft Visio and SharePoint 2010<br />A service in SharePoint 2010<br />Viewing Visio Diagrams without the need for Microsoft Visio installed<br />6/27/2010<br />Visio Services<br />4<br />
  5. 5. Visio and your business<br />By combining visual representation and data together as one creates great insights for business owners within any part of the organization<br />Enrich your business information<br />Impact on how data is monitored in your organization<br />Known products to business owners<br />Microsoft Visio 2010<br />SharePoint 2010<br />Working collaborative in a visual matter<br />6/27/2010<br />Visio Services<br />5<br />
  6. 6. Visio Graphics ServiceInsight<br />SharePoint 2010 Enterprise edition is needed to use Visio Services<br />Features<br />SharePoint Server Enterprise for site collection and site<br />Attached to a Web Application using a Service Application and Service Application Proxy<br />Tenant data<br />Tenant data is not stored<br />The service can be shared in a multi-tenant environment without partitioned<br />6/27/2010<br />Visio Services<br />6<br />
  7. 7. Visio Graphics ServiceSettings<br />Global settings<br />Settings for performance and security<br />Maximum Web drawing size<br />Caching<br />Recalculation duration<br />Handling external data (Unattended Service Account)<br />Trusted data providers<br />SQLOLEDB<br />SQL Server<br />Oracle, IBM<br />Excel Services<br />WSS<br />Custom Data Providers<br />6/27/2010<br />Visio Services<br />7<br />
  8. 8. Visio Web Access Web Part<br />Web Part available under “Business Data”<br />Based on Silverlight<br />Connect to a Visio Drawing<br />Settings<br />Caching<br />Rendering<br />Overriding e.g. current page, pan, zoom <br />Automatic refresh interval<br />Expose Shape date items to other Web Parts using Web Part connections<br />6/27/2010<br />Visio Services<br />8<br />
  9. 9. Visio Web Access Web PartData caching<br />Configuration<br />Service Application configuration under “Global Settings”<br />Visio Web Access Web Part<br />Automatic refresh interval of the Web Part will not override the cache settings in the Service Application<br />6/27/2010<br />Visio Services<br />9<br />
  10. 10. DemoData Provider<br />Case “SharePoint data in a Visio Diagram”<br />Create a Visio Diagram<br />Create a SharePoint list with data<br />Use the “Microsoft SharePoint Foundation List” adapter<br />Connect items to Visio Shapes<br />Save the Visio Diagram as a Visio Drawing in a document library<br />Build a page containing Visio Web Access Web Part and view on SharePoint list<br />6/27/2010<br />Visio Services<br />10<br />
  11. 11. DemoSharePoint data in a Visio Diagram<br />6/27/2010<br />Visio Services<br />11<br />
  12. 12. Visio Diagram & Scripting<br />ECMAScript Object Model<br />Classes<br />Page<br />ShapeCollection<br />Shape<br />Attach to load event of Sys.Application class<br />Get the Id of the Visio Drawing Web Part<br />Look for the phrase class=“VisioWebAccess” and “WebPartWPQ#”<br />Asynchronous operation<br />Do NOT use the opendiagram handler<br />Example code:<br />6/27/2010<br />Visio Services<br />12<br />varvwaControl = new Vwa.VwaControl(“WebPartWPQ#);<br />vwaControl.addHandler(“diagramcomplete”, onDiagramComplete);<br />
  13. 13. Visio Diagram & ScriptingVisio Shape events<br />The following Visio Shape events<br />diagramcomplete<br />diagramerror<br />shapemouseleave<br />shapemouseenter<br />shapeselectionchanged<br />Example code<br />6/27/2010<br />Visio Services<br />13<br />vwaControl.addHandler(“shapemouseenter”, onShapeMouseEnter);<br />function OnShapeMouseEnter(source, args)<br />{<br /> try {<br />vwaShapes.getItemById(args).addHighligh(2, “#FF0000”);<br /> }<br /> catch(err) {<br /> }}<br />
  14. 14. DemoInter-action (no-coding)<br />Case “Inter-act with Visio Diagram”<br />Create a Visio Diagram<br />Generate a ECMAScript (*.js) file<br /><script type=“text/javascript”> … </script><br />Handlers diagramcomplete, shapemouseleave and shapemouseenter<br />Upload the Visio Diagram and script file into a document library<br />Build a page containing Visio Web Access Web Part and Content Editor Part<br />Reference both files from the Web Parts<br />6/27/2010<br />Visio Services<br />14<br />
  15. 15. DemoInter-act with Visio Drawing<br />6/27/2010<br />Visio Services<br />15<br />
  16. 16. Custom Data Provider<br />Presenting data in a Visio Diagram from a specific data source <br />Visio Diagrams can only read data from the data source. Not possible to write back to data source.<br />Development skills needed<br />VBA coding in Microsoft Visio<br />C#/VB.NET coding in VS2010 for SharePoint 2010<br />6/27/2010<br />Visio Services<br />16<br />
  17. 17. Custom Data ProviderVisio Service API<br />Microsoft.Visio.Server.dll<br />Found only in GAC through [drive]:windowsassemblyGAC_MSILMicrosoft.Office.Visio.Server<br />Two classes<br />Microsoft.Office.Visio.Server.AddonDataHandler (abstract)<br />Microsoft.Office.Visio.Server.AddonDataHandlerException<br />Data provider is asynchronous<br />Use the IAsyncResultinterface<br />The actual DataSetis generated inside a separate thread<br />Important methods<br />BeginGetData<br />EndGetData<br />6/27/2010<br />Visio Services<br />17<br />
  18. 18. Custom Data ProviderInstall the Data Provider<br />Use PowerShell script<br />Install<br />Add-SPSolution <disk>CustomDataProvider.wsp<br />Install-SPSolution <disk>CustomDataProvider.wsp –GACDeployment<br />Uninstall<br />Get-SPSolutionCustomDataProvder.wsp | Uninstall-SPSolution<br />Remove-SPSolutionCustomDataProvider.wsp<br />Make it trusted by adding it to the Trusted Data Providers inside the Service Application configuration<br />Use <Namespace.ClassName, AssemblyName, Version=version, Culture=culture, PublicKeyToken=token> as provider Id<br />6/27/2010<br />Visio Services<br />18<br />
  19. 19. Custom Data ProviderConsume from the Data Provider<br />Use VBA code in Microsoft Visio<br />Add a DataRecordset to the DataRecordsets collection of the Visio Diagram<br />Important DataRecordsets members<br />Add (OLEDB or ODBC)<br />AddFromConnectionFile (Office Data Connections)<br />AddFromXML (XML string)<br />6/27/2010<br />Visio Services<br />19<br />
  20. 20. DemoCustom Data Provider accessing a Web Service<br />6/27/2010<br />Visio Services<br />20<br />
  21. 21. Wrap up!<br />Visio Services allows you to create rich data driven dashboards <br />Better insights for business owners<br />Combine with SharePoint lists, Excel Services, SQL databases and other data sources<br />Out-of-the-box inter-active solutions possible<br />Extending the boundaries with Custom Data Providers.<br />6/27/2010<br />Visio Services<br />21<br />
  22. 22. Questions?<br />6/27/2010<br />Visio Services<br />22<br />