Limit boolean shape data based on other shape data selections

Started by VisioForHVAC, December 27, 2024, 04:17:49 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

VisioForHVAC

I am working on building a smart shape for a motorized valve. I have a set of shape data selections to customize the valve. One of those is a fixed list where the user assigns the control signal for the valve, (2-Pos, Floating, Modulating). I have another which is a boolean where the user determines if the valve needs feedback. Feedback only applies to a modulating control valve. I'm trying to figure out if there is a way where I can limit the options of the boolean selection based on the selection from the list?

wapperdude

Hmmm.  Need more info.  List???  How is this list implemented?  For example, if it is shapedata, then, yes, use FixedList.  If it is via Actions, in right click shape menut, then, it is possible to expand that item to have two choices using FlyoutChild.  There are other list possible implementations... soooo, whatchadoin? ;)
Visio 2019 Pro

VisioForHVAC

Attached are some screen shots to help. Everything is currently set up as shape data, no actions. I have two different shape data selections that are associated with each other. The signal selection is a fixed list with three options, "2-Pos, Floating, Modulating." From there I have a second feedback selection that needs to end up as a Boolean true or false.

I have a fix right now where the feedback is a fixed list, and the format options change based on the signal selection. From there I user a user defined cell to convert the "Yes, No" selection into a true / false. I reference that Boolean value in the child shapes to show and hide various terminals based on the selections.

Feedback is something that is only available when the signal selection = Modulating. What I would love is to set the feedback shape data as Boolean and limit it's options to False whenever the signal shape data selection isn't Modulating.

wapperdude

Using shapedata, see attached for possible implementation.  The demo is simple, would need some attention.  But, what happens...
1) in Event, Double Click, is Docmd(1312).  This allows double clicking shape to bring up shapedata window.
2) the top cell is a group shape, with a "modulation" shape as child.  Done this way for simplicity.
3) Double click the shape.  This brings up the ShapeData form. Selection of modulation shape is Boolean.  If false, it is not shown.  If true, modulation shape is shown and Fill color set to green.
4) With enabling, double clicking again will bring up 2nd shapedata entry to make the modulation to be active or inactive.  This is also Boolean.
5) The ShapeData Window may be enabled from the Ribbon>Data>Shape Data Window.  This is alternative option to method in (1).  This will present a persistent view of whatever data is present for selected shape.  In this example, shapedata is confined to the toplevel shape, so only it needs selection.  To change data, as alternative to dbl clicking, just click on presented entries in the Shape Data Window.  Note, if Modulation is selected, additional entries are automatically shown...instantly.

Hope this gives you enough to move forward.

Visio 2019 Pro

Nikolay

You can use a complex formula in your child shapes that would take both the "control" of the valve and the "feedback".
Similarly, you can add a User-defined cell to your top-level shape, say "feedback" that is evaluated to that formula. I mean, like "signal=modulating and feedback=1" and refer to that cell in your child shapes instead of repeating the formula there.
From the user prospective, you can hide the "feedback" by setting the formula for its visibility to "signal=modulating"


Hopefully I understand what you mean, please correct me if I am wrong.

Browser ID: smf (possibly_robot)
Templates: 4: index (default), Display (default), GenericControls (default), GenericControls (default).
Sub templates: 6: init, html_above, body_above, main, body_below, html_below.
Language files: 4: index+Modifications.english (default), Post.english (default), Editor.english (default), Drafts.english (default).
Style sheets: 4: index.css, attachments.css, jquery.sceditor.css, responsive.css.
Hooks called: 214 (show)
Files included: 34 - 1306KB. (show)
Memory used: 1097KB.
Tokens: post-login.
Cache hits: 13: 0.00151s for 26,612 bytes (show)
Cache misses: 2: (show)
Queries used: 15.

[Show Queries]