Visio 2010 – Microsoft’s best-kept secret?

While I was having lunch with Eileen and Tim from GSX today (nice to see you both, and Tim, congratulations on the new job) the conversation turned to Visio 2010. There was no surprise about the popularity of the product, there was a bit of surprise over the scale of the Visio business (it’s huge, but I course I divulged no numbers), but there was an awful lot of surprise about what the product does.

This is something I find during a lot of conversations – there is a perception that Visio is that tool for drawing flow-charts, floor-plans and network diagrams. Well yes, it does that, but it does an awful lot more. There is also a perception that it’s a tool for IT people, engineers and people who want to create flow-charts… yes, but there are many other types of user who could make great use of Visio. And remember that Visio is about visualising business content, whether it be people, numbers, or processes.

Most of the conversations I have with enterprise customers include Visio’s integration with SharePoint, which is not only very cool technology but can add a lot value to SharePoint sites and to teams of people.

The simplest type of integration is ‘Visio Services’. A Visio Web Access web part can be added to a SharePoint page, and this allows a Visio file saved in a web drawing format to be displayed in the page. So at it’s simplest level, a Visio file can be shared in a SharePoint page and viewed by non-Visio users. But the integration goes much deeper…

To understand the next usage scenaro you really have to understand Visio’s data graphics capability. Every shape in Visio has the capacity to include data – some of the out-of-the-box shapes (such as a process in an audit diagram) are pre-populated with data fields. You can add data to any shape, and you can add visual indicators to a shape based on it’s data. Imagine a sales manager in an organisation chart… rather than just having their name and title you could also see how well they’re doing against key performance indicators (KPIs). The underlying data that drives the visualisation of their performance could be self-contained in Visio, but it could also be linked in from other data sources such as Excel or SQL Server. The first image here shows a simple view of someone in an organisation chart, with just a name, title and picture.

By simply linking the Visio file to a data source (Excel in this case) and dragging and dropping a row of data onto Maria’s container, it suddenly looks very different. Click on the image to see the full scorecard…

The data graphics have added bars for five KPIs, a horizontal bar for her overall average score, a colour to her container (two less and she’d be amber), and an arrow showing her comparison to average score for last year.

Now let’s imagine that you want to share this organisation chart, which has now become a performance scorecard, with the sales organisation. You can take this Visio file and save it as a web drawing into a SharePoint site – you can also add it to a page as a web part. However, every now and again the data driving the visibility of the performance of Maria and her peers will change… and here’s the clever bit. The Visio web part can be set to refresh at regular intervals – so when the source data changes, the scorecard changes. Provided the source is accessible to SharePoint’s services there’s no need to open the Visio file, refresh it and re-save to SharePoint – it’s all done automatically.

By the way, when we demo this the Visio file is linked to an Excel spreadsheet stored in the same SharePoint site. The spreadsheet can be edited directly in the browser using Excel Web Access, and a few moments later the data graphics in the Visio file will update.

The next piece of integration between SharePoint and Visio also works using shape data. Imagine that you have a flow-chart which visually represents a business process (that’s what flow-charts generally do). Wouldn’t it be great if you could click on a part of the flow-chart and see the documents associated with that part of the process? Well you can, and it’s pretty easy.

The first step is to make sure that each part of the process has a unique ID and exists as an item of shape data. Then you deposit your process documents in a SharePoint library and add an extra field which will hold a process ID which matches the IDs in the Visio flow-chart. Finally, you set the Visio web part to broadcast the process ID and get the library to filter itself based on the incoming ID. Hey presto, you get a context sensitive list of documents everytime you click on a part of the business process. Click on the picture for a larger view.

There are two other ways in which Visio integrates with SharePoint. The first I’ll leave for another time as it’s quite detailed… that being the ability to draw out a workflow process using special SharePoint-ready shapes and using SharePoint designer publish that workflow process into a SharePoint site.

Finally, there’s a very neat piece of out-of-the-box integration between Visio and SharePoint task lists. Above the task list is a tab for ‘List Tools’ and one of those tools is ‘Create Visio Diagram’. Clicking this will suck up the details of the tasks and create a Visio pivot diagram, which allows you to visually interpret and interrogate the status of the tasks. The resulting Visio file has three pages… overall status of tasks, workload distribution, and an overview of incomplete tasks assigned to people. Click on the image above to see one view of the diagram.

Like the second example in this post (integrating a Visio diagram with a document library) you can place this Visio-based task overview on a SharePoint page and link it to a view of the task list. You can then click on a person in the diagram and filter down to see their assigned tasks.

Okay, that’s enough Visio goodness for today… more soon.


  1. As an almost 2 decade user of Visio it is nice to see advancements.
    Some questions, thoughts on the post.

    Automatic updates of data are nothing new to spreadsheets or databases, interesting to see it in Visio.

    Why would one want to do all of this in Visio when one could leave it in a spreadsheet and do it from there? (referring to the IDs and KPI) I get it from the org chart perspective although aside from their manager, no one else would want that? Why would HR want that for example? brings up other questions that may cause one to think before doing it.

    I like the task list piece, shame I do not use SP.

    Docs associated with the workflow is interesting,but it seems a bit cumbersome to set it all up, from an end user non technical person perspective.

    What is a “web drawing format”? Do you mean png? jpg? pdf? eps? So an embedded object? Nothing new about that is there?

  2. Hi Keith, some good points raised, so let me address them.

    Automatic updates… the key thing here is that the Visio Services in SharePoint have an engine behind the scenes which recalculates the data graphics and displays the update while the Visio diagram is just sitting there.

    Why would you do it in Visio and not a spreadsheet? A common question. Visio can do an incredible amount of visualisation using capabilities that you don’t see in a spreadsheet. Admittedly Excel 2010 has some new features for visualising (conditional formatting, showing red / amber / green situations, etc) but when you have a lot of numerical data it’s difficult to pick out the detail. So basically, a picture paints a thousand words.

    Re. the org charts. I’m not sure in which version the feature arrived, but you can create an org chart directly from Active Directory. I know that a lot of people spend a lot of time manually creating org charts, but this capability creates one in seconds straight from the directory using different managers on multiple pages, and with the ability to select how many levels of subordinates.

    The document / flow-chart thing is easy to do – I’d describe it as a power-user feature, I guess you do have to know something about Visio shape data and setting up a SharePoint page. But it’s something that if you do once you can easily do again. The example in this post, I could recreate it in about 10 minutes (better than waiting 5 weeks for IT to do it).

    Web drawing format… to see a Visio file using Visio Services you need to save as a .vdw file. As this is a fully-fledged Visio file I’m not 100% sure why. Maybe something to do with keeping the .vsd format intact for backwards-compatibility.

  3. Darren, Thanks for the extended answers. The hierarchy/card thing has been around since 2008 I think, but I could be wrong.
    The only thing to keep in mind with it is your data is only as good as it is updated. So using AD may not be the best way for some people compared to their own org charts custom made. But that’s an org issue not a product one.
    The flowchart document thing would be a great SnT(Show n Tell) piece as I think many people never dig heavily into Visio. You and I could do it in 10 minutes maybe but the average person who has never gotten training on Visio would not know where to begin. Another SnT perhaps?
    So natively seeing a vsd is of interest to everyone who translates into png or jpg or pdf. It’s the details that are meaningful.

    Thanks again.

  4. “Two fewer” as I know you’re partial to a little pedantry on occasion.

    Nice format for democratising some of those features that new often get overlooked by long term users of a product. I look forward to further detail on the Sharepoint workflows. Kind of a hobby of mine 😉

  5. “some of those features that new often get overlooked” – want me to get pedantic about whatever that means? 😉

    The SharePoint workflow post is potentially a long and detailed one, so may take a while to get around to it.

  6. Great post, Darren. Is there any way (or place) I can get examples of what you posted? I would like to see the specific files.

    Also, what other shapes can take data and display it graphically like that?

    1. Have sent you some files Michael.

      Pretty much all shapes can take data and display it graphically – indicators (icons, speedos, bars, etc) will sit near or in the shape. You can also colourise almost all Visio shapes (certainly those that ship in the box) based on parameters (e.g. greater than a number, between two numbers, matches a word, etc).

Leave a Reply

Your email address will not be published. Required fields are marked *