I loaded a subvi (containing some graphs, displaying Information depending on the main-vi) to a subpanel in my main-vi. I'd like to control the subvi via the main-vi. I used the control value set invoke node. There is no error message, however the subpanel doesnt Show the desired results either. What am I doing wrong? I attached the VI.
In the "Init Subpanel"-case I loaded the subvi and in the "absolute value"-case I want to give new inputs to the subvi.
Solved! Go to Solution.
I would use a queue or user event to send messages to the subVI. The subVI can then react however it needs to.
It's near impossible to say anything about why this doesn't work, with the most important VI (DrawCalibGraphs.vi) missing...
Just a though about why it's not working. The VI isn't running (stops immediately). So you're setting the values, and expect them to appear in the graph. It needs to be run once to actually do that. Even if it is running, it probably needs a trigger of some sort to update it's graphs. But without the VI it's just a guess...
If this VI isn't continuously looping, you don't need dynamic loading at all. Make it like any sub VI, with the controls you're setting now as input, and put it's panel in the subpanel. Call it like any other sub VI. No dynamic loading needed...
Dynamic loading seems to be used like duct tape: a general solution that solves every problem. Dynamic loading is only really needed for: 1] starting a not-fixed number of re-entrant VI's, or 2] plug-in architectures (usually, not always a special case of 1). There are a few other solutions where it can be convenient, but a lot of times it can (and should) be avoided.