Concatenated strings as using parameters: In my script I have created a pushbutton that starts an InputScript. With a "using" parameter I pass a string that contains the content of an InputField "Delivery". This works as expected, except that I don't obtain the latest value entered in this field:

Pushbuttton ....
   using FILENAME =  "\\VI010\emails\mailto_&F[Delivery].txt"

For example, if "1234" is shown in the InputField "Delivery" and the user enters "6789" and presses the pushbutton, the value
"\\VI010\emails\mailto_1234.txt" is passed to the InputScript.
Why is this the case and how can I get the new input value?

GuiXT replaces the &F[...] expressions in the script when displaying the screen, and therefore you get the value that was shown in the InputField before the user entered a new value.

There are three possibilities to obtain the new value:


Build up the whole string in your InputScript, e.g.

Set V[fname] "\\VI010\emails\mailto_&F[Delivery].txt"


In the "using" option use the notation [Delivery]:

Pushbuttton ....

  using PDELIVERY = [Delivery]

In this case GuiXT will pass the new value and you can use the PDELIVERY parameter in order to build up the string:

Set V[fname] "\\VI010\emails\mailto_&U[PDELIVERY].txt"


The third possibility is tricky and we would prefer (a) or (b), but this version is interesting in that it demonstrates the substitution mechanism of GuiXT:

Set V[ampchar] "&"

Pushbutton ...

using PAR = "\\VI010\emails\mailto_&V[ampchar]F[Delivery].txt"

When the script is processed, the &[ampchar] expression is substituted by "&". GuiXT then stores the value


as InputScript parameter. When the user presses the pushbutton, the InputScript is started and this parameter is passed to the InputScript. When the InputScript uses it, GuiXT replaces &F[Delivery] with its value, which has now become the new input value.