Monday, December 23, 2013

Source / Target for sub-modelling

Since eVSM v6.15 or so, we've had a fairly powerful (and I hope, simple to understand) capability called Source/Target.  What it does, simply, is allow you to use the value of a variable in one map, as the value of a variable on another page in the same Visio document.

There is some initial setup required, which tells eVSM to search other pages for source/target links when you click the eVSM Calculator button.  We call this the page scope of the map.  To set up page scope, click the Name Unit Manager button in the eVSM toolbar/ribbon, and find the "Source/Target Pages" button on the bottom of the NUM dialog box.

The dialog just lists all the pages in the current document, and selecting a page will make the eVSM Calculator search the page for data sources and targets to match up.



So with that out of the way, Source/Target works by first defining named data sources.  The pink shape in the image above is a data source, which you just glue onto an NVU to link to the value.  You then change the text from XX to whatever name you want to give it (can be a number, or any kind of text).

Then, to use the value from a data source, you attach the light blue data target to another NVU, and set its text to the same as your data source.

You can actually have many data sources with the same name, though that means your data target(s) will need to know how to "aggregate" the multiple values.  By default, we just return the Sum of all the values.  But you can actually take the average, minimum, or maximum value too.

There's also an undocumented feature here, that lets you use simple wild cards to match sources to a target.  So if you named all your different sources such that any starting with the letter A is a certain group, and B is another, etc..., you'd be able to set the target text to A* and that would pick up anything starting with the letter A.

There's also a not-so undocumented feature, which is that every NVU on the map has an implied Data Source, with the text set to the NVU name.  That means if you wanted to get the sum of all the NVU's with a certain name, you could just add a data target and set its text to the NVU name.  This helps you out of having to write very simple managed equations.

We also provide the option of filtering by the path(s) of the parent center, and we provide a dialog for exploring all the sources that feed a target.  That dialog actually does link to the dialog for setting the page link scope.

If you have any questions on this leave a comment or contact me, I'm happy to discuss...

No comments: