Visio Guy

Visio Discussions => ShapeSheet & Smart Shapes => Topic started by: Scott10284 on March 09, 2016, 08:11:15 PM

Title: Sharing Shape Data Between Pages
Post by: Scott10284 on March 09, 2016, 08:11:15 PM
I am new to the forum but I have been using Visio for a while.

I am using Visio 2013

I am trying to share shape data between pages. I set up the cover page of my drawing set such that the values of the drawing title, customer name, date, revision, etc are stored in those shapes as shape data. What I would like to do is share those pieces of data with the title block that is on a background page. I want to do this so that when I edit my cover page, the title block that appears on every other page also updates with the same shape data.

After doing some research, I have attempted to share the data by inserting the following code in the titleblock shape's shapesheets:

Pages[COVER]!Sheet.42!Prop.JobTitle.Value

The Shape Name of the data I am trying to copy to my title block in this case was Sheet.42.

But the syntax is obviously wrong, I am getting the error in formula message. I got this idea from this forum, but the user was running 2007. I have 2013.
Title: Re: Sharing Shape Data Between Pages
Post by: Nikolay on March 09, 2016, 11:30:02 PM
The formula seems to be correct.

Just make sure you use correct page and shape names.
You can post the link to the file here, maybe somebody will be able to come up with a quick fix.
Title: Re: Sharing Shape Data Between Pages
Post by: Surrogate on March 10, 2016, 04:57:11 AM
May be these topics can help
Reference Text in Shape on Another Page (http://visguy.com/vgforum/index.php?topic=6674)
Connecting Shape from Background-Page (http://visguy.com/vgforum/index.php?topic=6488)
Bugg when modifying a shape name twice (http://visguy.com/vgforum/index.php?topic=6540)
Title: Re: Sharing Shape Data Between Pages
Post by: Scott10284 on March 10, 2016, 12:34:31 PM
Quote from: Nikolay on March 09, 2016, 11:30:02 PM
The formula seems to be correct.

Just make sure you use correct page and shape names.
You can post the link to the file here, maybe somebody will be able to come up with a quick fix.

I made sure that my page references and shape references are correct, I'm not sure why this is not working.

I have uploaded a file, if any code experts out there could help me I would appreciate it.

To be clear, I am giving the shape on my coversheet data, and displaying it by inserting a field (shape data). I am trying to do the same thing on the title block background page.
Title: Re: Sharing Shape Data Between Pages
Post by: Scott10284 on March 10, 2016, 02:08:15 PM
I realized that it will work with 2 foreground pages. When I link the data the is entered on my cover to a background page it does not work.

Title: Re: Sharing Shape Data Between Pages
Post by: Gustavo on April 21, 2016, 08:30:46 PM
Have you tried with a PageName!SETATREF() instruction in the targeted cells? It worked for me. Regards
Title: Re: Sharing Shape Data Between Pages
Post by: bmwk100dk on April 28, 2016, 10:10:36 AM
Hi
I don't know if you have found a solution, but I may have one for you in the attached file. I just added Data to my first page (Page-1) and the then inserted a Textfield in the shape on the Background page (Background-1) using the following.

SETATREF(Pages[Page-1]!ThePage!Prop.Title_Text.Value)

Hope it will be of use.

PS. I'm using Visio 2010
Title: Re: Sharing Shape Data Between Pages
Post by: jw76novice on April 30, 2016, 05:56:37 AM
Scott,
Are there some data fields that are the SAME across ALL PAGES (Customer Name) and others that are different for EACH DRAWING?

I have developed a setup exactly like this and will try to explain it here.  Hope this helps!

Once this is set up, you simply navigate to the background page (any of them), click anywhere, then set your project-level fields in the Shape Data pane.  This is entering the data in that Page ShapeSheet, but the SETATREF function is pushing the values into the Document ShapeSheet, so all the other background pages are immediately "pulling in" the data as well.  The textboxes in your title block also populate immediately.  Then, as you create new drawings using the Duplicate feature of your blank foreground pages, you click anywhere on those pages to enter the drawing-specific Shape Data.  As mentioned above, I took this a step further and applied the same "Shape Data duplication with SETATREF functions" to the textboxes in the title block, but honestly it's much faster to just enter everything in the Page's Shape Data window.

Again, hope this helps but post back if you have any questions on this setup.