This add-in uses Visio data-binding infrastructure, and allows you to update the data in the external source from Visio (back-synchronize). There are limitations of course, but basically it supports any type of data source which support update (including Excel files, databases, and SharePoint lists). In addition to this functionality, the addin also provides an option to synchronize shape text, and shape properties other than those in the “Shape Data” section (like position, width, fill/border color, etc)
The is built on top of Visio shape data support; means, it’s compatible with existing data you may have already connected. But it will allow you to push data back to the source in a controlled manner. Before applying the modifications to either data source or diagram, the addin can show preview of the changes it’s going to make, so that you can review them and for example decide to skip some, or do something else for some.
Simultaneous editing of the same data in Excel and Visio for example, should not be a problem (i.e. you can keep Excel file opened, and refresh data forward and backward in that file from Visio)
Downloading and installing
You can install the add-in from this site using either “online” or “offline” installer. The online installer offers the auto-update capability. The offline installer offers the capability to install in a restricted corporate environment, or using group policy deployment. The add-in does not require administrator permissions and runs under user account; but can be installed for all users of the computer, if needed.
|setup.exe||Online VSTO installer (requires internet connection to install), per-user||740.9 KiB||23.02.2015|
|BackSync.zip||Offline VSTO installer (zip), per-user install||329.7 KiB||06.12.2016|
|BackSync.msi||Standard Windows Installer package (MSI), offline, supports per user / per computer installation.||1.0 MiB||06.12.2016|
If you facing troubles installing the Addin directly from the website because of policies, or you don’t have internet connection in the company, then you can download stand-alone installer which contains all needed files, so that setup.exe does not need to connect to the internet to download them, but installs directly from the local computer/network. The disadvantage is that such “local” installation will also disable automatic updates. If you choose to install it, extract zip content to some folder, then run the “runBeforeSetup.bat” bat file to set VSTO install location to this folder, then run setup.exe to install.
The addin works with Visio 2007 SP3, 2010, 2013, 2016 (with editions supporting shape data linking)
- Bidirectional data synchronization in Visio (create/update/delete) with external data sources
- Integration into Visio using existing data binding (using the built-in Visio interface and wizards)
- Preview of actions to be applied with possibility to control them (exclude/revert/modify actions to be applied during synchronization)
- Support for shape text synchronization
- Easy to configure synchronization with standard “Shape Report”
- Support for custom attribute (shape sheet cells) synchronization, such as position, size, color, user cells of the shape
- Automatic set up of custom attribute synchronization (user changes, such as moving/resizing/etc shapes are automatically applied to data)
- Most Visio data types are supported (string, number, bool, date, currency, list)
See it in action
This video briefly demonstrates the main features of addin:
How does it work?
– On synchronization, it queries the data directly from the external data (using connection data from Visio)
– Then, it analyzes the changes in the data source and on the diagram; if there are conflicting changes, it shows “Conflicts” and allows you to resolve conflicts in the resolution window.
– If no conflicts, then it updates the data source directly, and then Visio document.
Basically, the add-in adds a single button “Synchronize” to the “Data” panel. When you click it, a dialog is shown asking what data to synchronize (in case you have more than one data connection, you can synchronize them separately). It is very similar to the one Visio provides. In Visio, you just have “Update” instead of “Synchronize”.
You can preview all changes which will be made before applying them, via special “Preview changes” mode. In this mode, no change is performed (“dry run”), but just analysis of what is to be changed where. The results are shown in the window.
If you edit the same value in the external data source and on shape, then you have a conflicting change. The add-in allows you to resolve this situation manually by selecting proper value:
Adding and deleting data rows
The add-in supports row addition and deletion to the data source.
If you delete a shape, you have an option in the preview changes window to delete corresponding data from the data source. Note that for excel this is not possible with direct oledb data binding; you can enable direct deletion using automation in the settings (but for that excel needs to be installed). By default (without automation) the addin sets all row values to empty (null). The deletion works with other data sources though (SQL, SharePoint).
If you add a new shape (by using “Duplicate” command for example, or by copy/paste of a data-bound shape), you have an option to add a new row to the data source. Note that new row should have a new primary key (if it is not generated automatically). To force that, the add-in suggests to clear primary keys when you duplicate a data-bound shape. You can keep them as is, in this case new shape will be bound to the same row (default behavior in Visio).
Data source types
Basically, the addin should work with any data source which supports update. Although, it was tested with Excel, SQL and SharePoint lists.
Calling the addin from VBA programmatically
The addin supports programmatic access. You can call the main function, “Synchronize”, using this code snippet:
Full source code is available for the licensed customers upon agreement.
The addin is free for personal use (“community” edition); to use it in commercial organisation, a license is required. For testing purposes, you can run the addin run without any restrictions for 2 weeks, even in the corporate environment.