I'm using a screen called CM_ControlPopUp with a combobox called "ComboPhase" on it.
That ComboPhase writes a variable called "NextPhase" (Integer) when the operator selects something.
That ComboPhase reads a variable called "Txa" (String) to get the dynamic contents for the entries within the combobox at runtime.
Typically "Txa" would be '0,@Inactive@;1,@Reset@;2,@Operation@;' but obviously can be whatever I would like it to be.
A function is declared that launches this screen with no substitutions.
This works absolutely fine as a static screen where everything is declared and defined at design time and then the zenon project is started. The screen pop up is called, it appears, it contains the list elements seen in "Txa". The contents of the ComboBox change as Txa string value changes. Wonderful. Just what I wanted.
This doesn't seem to work if I have a duplicate function to call this screen that has substitutions. Obviously I would like this to be a common screen used to control any "CM" within my PLC program, so I make extra functions to call this screen.
These extra function include substitutions.
The substitution for NextPhase where the ComboBox writes to works fine.
The substitution for Txa does not.
The effect of attemping the runtime substitution of the ComboBox causes the ComboBox to instead ignore the "Entries from string variable" being ticked and display the statically defined list entries. If one of these entries is selected it is indeed still written out to the Substitution variable.
I'd like to know if Substituting ComboBox dynamic entry strings is known to not work or if it is clear I've done something else wrong.