Jen Underwood Data Platform Technology Specialist Visio Services in SharePoint 2010 Unlimited Data Visualizations
Dec 05, 2014
Jen Underwood Data Platform Technology Specialist
Visio Services in SharePoint 2010
Unlimited Data Visualizations
Information Overload
Scorecards
Slide decks
Meetings
Analytic applications
Presentations
Financial reports
Dashboards
Webcasts
Charts and graphs Internet
Project plans
Documents
Spreadsheets
Intranet Blogs
Portals
RSS feeds
Business books
Television reports
Magazines
Newspapers IM/chat
2
15K BC
Diagrams on big rocks
8K BC
Diagrams on
small rocks
4K BC
Diagrams
on paper
1450
Easy copying
1843 & 1975
Diagrams sent over
distances
1990s+
Diagrams made easy!
2010
Hmm….
A HISTORY OF DIAGRAMMING
You
are
here!
Storing
Moving
Copying
Sharing
Creating
Real-time
Data + Diagram helps to solve the problem of information overload
4
Data overlaid on diagram
Data + Diagram helps: • Put information in context
making it more meaningful
• Identify trends and exceptions at a glance
• Make quick and better decisions!
Visio 2010 diagrams can be connected to multiple data sources including Microsoft® Excel®, Access®, SQL Server®, SharePoint® Services, or any OLEDB (Object Linking and Embedding
Database) or ODBC (Open Database Connectivity) data source
Visio BI Inspirations Visio can be used to provide valuable business insights for Finance, Operations, Sales, and HR scenarios
Operations Finance
Sales
HR
Visio BI Inspirations Visio can be used to provide valuable business insights for various industry scenarios
Healthcare Retail
Hospitality Insurance
Visio BI Inspirations Visio can be used to provide valuable business insights for IT scenarios
Real-time network monitoring
Workflow Visualization Visio add-in for System Center Operations Manager R2
Visio add-in for System Center Operations Manager R2
REQUEST #1
Central location
Never leave the browser
No more dialogs!
REQUEST #2
(1 hour later) Not just a snapshot in time
Diagram only created once
View existing data in
context
REQUEST #3
Free-form vector diagrams
on your web pages
Diagrams in context with
other relevant data.
11
Demo: Inspirations
VISIO SERVICES
Share Diagrams in SharePoint
Build Data-Driven Visualizations
Integrate with SharePoint Applications
Visio BI Maturity Model
13
Visio 2010 diagrams can be connected to data from multiple sources and data graphics can display real time KPI’s
Vis
io B
I M
atu
rity
Lo
w
Hig
h
Visio 2010 data-driven diagrams can be published to SharePoint
®
Server 2010 and can be shared with users who can navigate and refresh the diagrams in real-time
using their browser
Users can create Mash-Ups where Visio Services can interact with other SharePoint web parts to create rich interactive
dashboards
Using custom data providers Visio
Services can connect to data sources such as Microsoft
® System
Center
Solution Complexity Low High
• Requires Visio Professional 2010 or Premium 2010
• Self service and Personal BI on the desktop
• No coding required
• Requires Visio Professional 2010 or Premium 2010 for
publishing, SharePoint Server 2010 eCAL for viewing
published diagrams
• Community BI, browser based experience
• No coding required
• Requires Visio Professional 2010 or
Premium 2010 for publishing, SharePoint
Server 2010 eCAL for viewing published
diagrams
• Community BI, browser based experience
• JavaScript code for Mash-Ups
• Requires Visio
Professional 2010 or
Premium 2010 for
publishing, SharePoint
Server 2010 eCAL for
viewing published
diagrams
• Custom code required
VISIO SERVICES FEATURES
• Rendering
• Browser-agnostic
• Full Fidelity rendering using Silverlight OR PNG image
• Visual Refresh of Data Diagrams
• Refresh diagrams connected to:
• Supports Kerberos, SSO & Unattended Authentication
• Automatic refresh
• Excellent white paper on data connections and authentication “Plan for External Data Connections Using Visio 2010”
• http://visio.microsoft.com/en-us/Get_Started/WhitePapers/Pages/Plan-for-External-Data-Connections-Using-Visio-2010.aspx
VISIO SERVICES FEATURES
• SharePoint Integration
• Visio Web Access web part
• JavaScript Mash-Up API
• Supports web part connections
• Administration
• Visio Services is a Shared Service
• Customizable in Central Admin & PowerShell
• Can tune performance to your hardware
VISIO SERVICES
DATA GRAPHICS
•
•
•
••
•
•
Text Callouts Label Value Label Value
Value Label Value
Icon Sets
Dar Bars
32
15
32
57
50 30 20
Color By Value
IP Address 10.0.1.51
Memory (MB) 2048
CPU (MHz) 3
Windows Server 2008 Datacenter
sql-sales-01
Data-Driven Diagrams on the Desktop
18
Data Graphic - Suppliers
Data Graphic - Shipping
1
Import production data from an Excel or Access file or Database
Data Graphics show the context of data
Link the data to Visio shapes and display the data using Data Graphics
2
Assembly
Time(M)2
Lamp Lens
Lamp Lens
Time(D) 2
Destination Omaha
Origination Detriot
Truck
2
Putting data on diagrams makes the information meaningful and helps in identifying trends and exceptions at a glance
Dynamic Data-Driven Diagrams in the Browser
Creator
Database
Consumer
Create Data-driven diagram just as
in Visio 2007
Publish Visio Diagram to SharePoint
Server 2010
Consumer requests updates
Consumers can navigate, refresh
& access the diagram in a
browser
SharePoint® Server 2010
The server returns a PNG or XAML
representation of refreshed Data Graphics
19
20
Visio Services provides web-based user experience, navigation and extensible API
• Panning • Zooming • Shape Data
Window
• Open diagram in Visio 2010 • Manually refresh by clicking
refresh button or automatically refresh by setting interval time Note: Administrator sets interval time for auto refresh
Legend for Data Graphics conditions
• Pre-defined Data Graphics: Text, Icon Set, Data Bar, Color by Value • Data Graphics updated by importing latest data
21
Demo: Data-Driven Diagram
Data-Driven Diagram
22
Data-Driven Diagram
23
Data Refresh in SharePoint
• Covered in detail within white paper “Plan for External Data Connections Using Visio 2010”
• http://visio.microsoft.com/en-us/Get_Started/WhitePapers/Pages/Plan-for-External-Data-Connections-Using-Visio-2010.aspx
• You can configure Visio Service's Global Settings to optimize external data refresh
• To configure these settings follow the steps below: • Requires Farm administrative rights • Open the "Central Administration" • In the "Application Management" section, click "Manage service
applications" • Click the Visio Graphics Service service application that you want
to configure
24
Data Refresh in SharePoint Setting Valid Values Description
Minimum Cache Age Between 0 to 34560 minutes. The number of minutes after which cached web drawings are purged.
Larger values decrease file I/O and CPU load but increase memory
usage on the server.
Maximum Cache Age Between "Minimum Cache Age"
and 34560 minutes.
The minimum number of minutes that a web drawing is cached in
memory.
Smaller values allow more frequent data refresh operations for users
but increase CPU and memory usage on the server.
Max Recalc Duration 1 to 120 seconds The number of seconds before a refresh operation times out.
Larger values enable Visio Services to render more complex web
drawings but may increases CPU usage as well as decrease general
availability of the service.
Max Diagram Size 1 to 50MB The maximum size in MB of a web drawing that can be rendered.
A larger size limit may lead to slower performance if the server is
under heavy load, while a smaller limit may prevent more complicated
web drawings from being rendered.
Unattended Service
Account
The name of a valid target
application ID in a Secure Store
Service running in the farm
The target application ID in the registered Secure Store Service that is
used to reference Unattended Service Account credentials. The
Unattended Service Account is a single account that all documents can
use to refresh data. It is required when connecting to data sources
external to SharePoint, such as SQL.
25
Data Refresh Authentication
Data Source Authentication method
WSS Lists SharePoint user permissions
Excel Workbooks SharePoint user permissions
SQL Server One of:
Windows NT authentication (a.k.a integrated security)
o using "Kerberos delegation"
o using "Mapped" authentication
o using "None" authentication
SQL Server Authentication (a.k.a standard security)
OLEDB/ODBC Varies per data source, typically a username and password pair stored in the
connection string.
Custom Data Sources This topic is outside purview of this session and is covered at
http://msdn.microsoft.com/en-us/library/ff394595(office.14).aspx .
26
• Depends on the type of the underlying data source • For data sources that support more than one authentication method, data
connections must specify which one to use when creating connections
Data Refresh Authentication
27
Visio Services
SQL
Contoso\foo get
passed to Visio
Services Front End
SQL requires the credentials
Contoso\foo to retrieve data on
behalf of the end-user – they are
however not available on the
back-end and can’t be sent to the
data source.
The connection fails.
Double hop security measures stop
Visio Services from passing
Contoso\foo to back-end
Front End Back EndWeb Drawing Viewer
(Contos\foo) wants
to refresh a diagram
There are ways however to configure Visio Services to get around
the double hop problem securely. The method to choose depends
on various factors; choose the one that best suits your scenario.
Data Refresh Authentication
28
Authentication
Method
Kerberos Delegation Mapped "None"
Description Using constrained
Kerberos delegation, the
viewer's Windows
credentials are sent to the
data source directly.
Using the Secure Store Service,
the viewer's Windows
credentials are mapped to
another set of credentials
determined by the administrator
by using target applications.
Different incoming user
credentials can be mapped to
either the same or different
target credentials.
Using the Secure Store
Service, all viewers are
mapped to a unique set of
credentials called the
“unattended account” stored
in a specially configured
target application.
All incoming user credentials
are mapped to the same
credentials, those of the
“unattended account”.
Data connection
run using...
The Windows credentials
of the web drawing
viewer.
The mapped credentials of the
web drawing viewer.
The credentials of the
unattended account.
Advantages Kerberos is an
industry standard in
credentials
management.
Kerberos ties nicely
into existing Active
Directory
infrastructure.
Kerberos permits
auditing of individual
accesses to a data
source.
Given that the web
drawing viewer's
identity is known, web
drawing creators can
embed personalized
database queries into
web drawings.
The Secure Store Service is
a lightweight and secure
solution for managing
credentials in SharePoint.
The Secure Store Service is
installed with SharePoint
and is easier to configure
than Kerberos.
Mappings are flexible: a
user can be mapped either
“1 to 1” or “many to 1".
Outgoing credentials are
not limited to being
Windows credentials. Non-
Windows credentials can be
used to connect to data
sources that don’t accept
Windows credentials.
Mappings created for Visio
can be re-used by other
Business Intelligence
applications such as Excel
Services and Performance
Point Services.
“None” authentication is
the easiest authentication
method to deploy and
setup.
“None” authentication
does not require much
administrative overhead.
Drawbacks Kerberos can be
difficult to set-up and
configure to work
with SharePoint and
Visio Services.
Establishing and managing
mapping tables requires
some administrative
overhead.
Mapped authentication
permits limited auditing. In
Given that everyone is
mapped to the same user,
an administrator cannot
distinguish who accessed
a data source.
All data sources in your
http://visio.microsoft.com/en-us/Get_Started/WhitePapers/Pages/Plan-for-External-Data-Connections-Using-Visio-2010.aspx
Advantages and disadvantages of each
described in white paper!
Data Refresh Authentication
29
• Choose Kerberos Delegation for secure and fast authentication to enterprise-scale relational data sources that support Windows NT Authentication.
• Choose Mapped for secure and fast authentication to enterprise-scale relational data sources that may or may not support Windows NT Authentication. Mapped authentication is also useful in scenarios in which you want to control user credential mappings.
• Choose None when connecting to small ad-hoc deployments in which security is less important and for which speed of deployment is essential.
30
Integrating Visio diagrams into SharePoint Apps Visio Services embed both static and dynamic Visio Web Drawings into SharePoint applications
Integration method Scenario enabled Skill set required
Visio Web Access web part Embed Visio diagrams into SharePoint pages.
How to create a web part page in SharePoint.
Web Part to Web Part Connections
Enable limited interactivity between the Visio Web Access web part and another on the page, without code. For example, clicking a shape in a Visio web part to trigger another web part to show additional relevant information about that shape.
How to create a web part page in SharePoint and how to set-up Web Part Connections.
Visio Services Mash-Up API
Enable rich interactivity on web part page by programmatically manipulating the different Visio web diagram objects, for example, to show custom visual overlays when the user hovers the pointer over a shape.
How to code simple JavaScript and/or ASPX pages.
Visio Web Part Connections
31
32
Visio Services Mash-Up
Floor layout of supermarket shows sales trends and stock levels based on KPIs
Detailed view of a specific shelf with KPI
Excel chart for detailed sales information
Hyperlink to open relevant documents
• Visio Services JavaScript Mashup API enables developers to access and manipulate the Visio
web drawing, its pages and shapes
• All 4 web parts are connected to each other and retrieve business data from LOB applications
Visio Services Mash-Up
33
Visio Services Mash-Up
34
http://visio.microsoft.com/en-us/Samples_and_Downloads/BI-Mash-
Ups/Pages/Visio-Weather-Mash-Up-Demo.aspx
Visio Services Mash-Up API
• JavaScript based programmatic access to a shape’s • Shape Data
• Hyperlinks
• Bounding Box Coordinates
• Highlight shapes
• Place overlays on the diagram
• Respond to Mouse events
• Change the viewport’s Pan and Zoom properties
• SharePoint 2010 SDK samples • http://www.microsoft.com/en-us/download/details.aspx?id=12323
• Visio Web Access Web Part filtering and connections • http://msdn.microsoft.com/en-us/library/ff394649.aspx
Visio Services Mash-Up API
Events in the diagram trigger changes on page.
OnClick()
{
for (var j = 0; j < data.length; j++)
{
if (data[j].label == "Step")
{
document.getElementById('StepData').src=
"http://localhost:8080/details.aspx?ID=" + "'" + data[j].value
+ "'";
return;
}
}} // NOTE: this is pseudo code.
Visio Services Mash-Up API
37
Visio Services Mash-Up API
38
Visio Services Mash-Up API
39
Add JavaScript code to SharePoint page using HTML content editor web part
40
Demo: Reverse Engineer Mash-Ups
• SQL Server Data Mining Add-In for Office • Connect to SQL Server Data Mining models
• Clustering, Dependency Net, Decision Tree
• PerformancePoint Scorecard and Strategy Maps • Filter by Condition
• How to Link http://office.microsoft.com/en-us/performancepoint-server/link-a-scorecard-kpi-to-an-analytic-chart-or-grid-using-dashboard-designer-HA010252493.aspx
Other Ideas
Resources The following is a list of resources that are available on TechNet for administrators planning to deploy Visio Services:
• Visio Services Planning Guide
• Visio Services Operations Guide
The following is a list of posts on this blog that contain more information about Visio Services:
• Introducing Visio Services
• Publishing Diagrams to Visio Services
• Embedding a Web Drawing in a SharePoint Page
• Installing and Configuring Visio Services
• SharePoint Workflow Authoring in Visio Premium 2010 (Part 1)
• SharePoint Workflow Authoring in Visio Premium 2010 (Part 2)
• No Code Mashups with Visio Services and Web Part Connections
• The Visio Services JavaScript Mashup API
42
© 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.