activePane Chnage Script no work

Just trying to move a string from one Perspective view to another. Not having any luck. View parameters work but the value gets written but both views at times. So I tried the activePane Change Script and even though I see its value changing the script is not run. I can put the same script on a button and it runs. ???

system.tag.write("[default]Number.value","TEST 1")

I also tried a change script on the string in the first view and that works writing the string to a memory tag and that tag link to the other view but only once through each pane.

Could you be more clear about what you’re trying to accomplish? I see that you’re attempting to write a value to a tag, but under exactly what condition do you want that code to execute?

I just wanted a label in one view to be the same as a label in another view. Binding the PARAMS worked but sometimes they would overwrite each other.

I set up a memory tag and tried to have the activePane change script set the memory tag and that is now working now after a change to the if-then syntax.

The bindings shouldn’t have overridden each other unless you had them set to be bi-directional. Is that how you had them configured?

For future reference, if you have two or more components which rely on a single value, it’s best to store that value somewhere and then bind anything directly to that value, instead of chaining bindings from one component to another.

Better yet is using messages to inform components that their values should be changed.

Yea, the bindings are a little squirrely. On the label that should read or receive its value from someplace else, the Parameter (PARAMS?) is set to input but it errors when trying to bind. So you have to set it to output or input/output. After it’s bound it lets you change it but I’m guess that don’t work. Also, if you happen to right click over the input/output selection it changes the setting while showing you the option to change it.

This makes it sound like you’re using the param incorrectly.

Input params may NOT be bound to any value, as they MUST be supplied by whatever is instancing the View. So if you’re attempting to bind the param, you want to place the binding on that param inside whatever is instancing the View.

I have ViewA which contains an Embedded View. The Embedded View component supplies a path to ViewB. ViewB has an input param, my_input, and a Label which needs the value of my_input. Label.props.text is bound to self.view.params.my_input.

Place the binding on EmbeddedView.props.params.my_input.
Doing this will bind the my_input param value to whatever you bound against. That param will be matched to the expected my_input param used by ViewB, which - because of the Label binding - will be used by the Label.