Replacing Images in #Visio Shapes by Changing Data

I wrote an article last year about Swapping Images in a #Visio Shape manually, but I want to be able to do this whenever a Shape Data value changes. This is because I use I invariably use shapes linked to data. I also want to be able to have multiple images within a single grouped shape, and all of them changing when their referenced Shape Data values change. I believe that this will be more adaptable for a lot of scenarios than trying to repurpose Data Graphic Icon Sets ( see  Make Your Own Visio Data Graphic Icons Sets … automatically). I also discovered that the Shape.ChangePicture(…) function can just as easily work with urls as it can with network file paths, so even more possibilities are opened up! For example, the Visio Online JavaScript API has the ability to overlay an image ( see ShapeView.addOverlay(…)).

So, I have created some macros to provide quick and easy selection, positioning and updating of images within a group shape.

personphotosbydata

Read the rest of this entry »

Advertisements

Power up your #Visio diagrams

It’s a new year, and Microsoft Visio Online Plan 2 continues to be updated monthly. There is plenty to get excited about, for example, broken links in Data Visualizer can now be repaired automatically. Also, I am pleased to report that I have written a white paper on using Visio in Power BI effectively! This downloadable guide explains how to combine Visio drawing pages and Power BI data to create great interactive data visualizations, and can be requested from Power up your Visio diagrams.

preview-lightbox-cta-02

I will also be doing a webcast about this subject, so be sure to sign up for notification!

My #SurfaceBook 2 video connections

I was tidying up my office recently, and came across an old magazine cover that I was on back in 1992. In those days, I was a consultant for a company called Isicad, and I am working on a £30,000+ Unix workstation. I have a small monitor for the Unify database on the left, and a large CRT monitor the CAD system, and a tablet with a stylus for interaction with the drawing. I also had more hair than I do now, which probably started going when I turned up to do some demos in Milan on a workstation that was supplied by the German arm of the company … only they didn’t leave a built one … just loads of boxes with parts, and that also included the circuit boards! I had to build it afresh whilst being instructed over the phone, and with my foot firmly hooked around the radiator because I didn’t have an earthing strap! Well, that picture started me thinking about my current workstation, which is a £3,000 Microsoft Surface Book 2, and how I have to connect to video displays nowadays!

IMG_2888 (Edited)

Read the rest of this entry »

Controlling #Visio layers with linked data

Readers of my blog will know that I use the layers in Visio pages to change the display for different scenarios. My macro to toggle layers on/off has been very popular, and I have written an add-in to manage layers that is widely used. However, I was recently asked if the layer settings can be controlled from linked data. Linking data in Visio has been available in all desktop editions, except Standard, since 2007, and I have written many articles and two books extolling this feature, but I haven’t so far controlled layer settings with it, so this article describes how this can be done … as shown in the following screen recording!

UpdatingLayersFromData

Read the rest of this entry »

Reading the registry for #Visio settings

I love writing Visio automation code, but I really don’t like writing setup & deployment scripts. There are so many variables : What Visio version, which edition? Which bitness (x86 or x64)? What are the user settings for the paths of stencils or templates?

So, I decided to write myself some C# functions that can be used in custom actions for an installation writing application, such as Advanced Installer. I think of the methods as being in one of three phases, Installation; Functionality and Configuration. The registry has three different areas to search within, Classes Root (HKCR); Local Machine (HKLM) and Current User (HKCU). In addition, the best way to get the true file version of Visio is to use FileInfo on the executable. The following screenshots are from a Cross-Functional Flowchart of the functions that get values for variables, and use them in other functions, until, eventually, the current user settings can be read.

This slideshow requires JavaScript.

Read the rest of this entry »

Fixing the layers problem with callouts in #Visio

I recently re-discovered an issue with callouts in Visio for a couple of projects that I am working on, and so I had to find a fix. The problem is that the callouts become dis-associated from their target shapes if either the layer visibility of the callout or the target shape is toggled off, and then back on again. This will result in a diagram with shapes without any connected callouts, so moving any of the target shapes will not move their associated callouts with them! I initially came up with a workaround that involved some jiggery-pokery with sub-shapes and layers, but it seems that the problem could have easily been averted if Microsoft had incorporated one specific User-defined Cell from the very start…

Read the rest of this entry »

Support for the #Visio JavaScript API in #SharePoint Modern Framework, and more

It was the last day of the #MSIgnite conference today, and the video of the final presentation about Visio was worth staying for, even though some of it was content I knew about, and have mentioned in previous posts this week ( see Dive into the world of data-driven operation intelligence with Microsoft Visio, Excel and Power BI). However, there was some content I was particularly pleased to see, and that was about support for the Visio Online JavaScript API support in Modern SharePoint Framework. I have pulled out some of the key slides below, but check out the full session for more information.

This slideshow requires JavaScript.

The hardworking Microsoft Visio product development team have worked hard to almost match all of the functionality of the old server-side Visio services control, but they haven’t quite got everything. So I cheered when I hear that support for html overlays are in the roadmap to be supported! All I ask for now (almost) is layer control, and I will be very happy.

They also stated that they will be enabling all this functionality for non-SharePoint web sites in the future!

Go to http://aka.ms/voapireference got more details.

 

JackBinnall

O365 and SharePoint

Simplify Tasks

Want to learn the simple way?

Paul Turley's SQL Server BI Blog

sharing my experiences with the Microsoft data platform, SQL Server BI, Data Modeling, SSAS Design, Power Pivot, Power BI, SSRS Advanced Design, Power BI, Dashboards & Visualization since 2009

John Goldsmith's visLog

be smart, be clear, be visual ...

Mo's blog

Personal views on Dynamics 365 for Operations and Technical Architecture.

Chris Webb's BI Blog

Microsoft Power BI, Analysis Services, MDX, DAX, M, Power Pivot and Power Query

davecra.wordpress.com/

Microsoft Office 365 Development, and more...

johnvisiomvp

Life with Visio and other Microsoft Toys!

Nilsandrey's Weblog

Just another WordPress.com weblog

Things that Should be Easy

Every so often (too often in the IT industry) I encounter things that should have been very easy to do but turned out to be far too complicated. My favorite topics include SharePoint, .Net development, and software architecture, especially distributed systems.

Visio Guy

Smart graphics for visual people