# Variable global en script

**URL:** <https://foros.velneo.com/t/variable-global-en-script/11475>\
**Category:** Compartir código fuente y ejemplos\
**Created:** [27 Abril, 2024 16:23 UTC](https://foros.velneo.com/t/variable-global-en-script/11475 "2024-04-27T16:23:50Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![albersanca](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/albersanca/32/5238_2.png) [@albersanca](https://foros.velneo.com/u/albersanca)\
**Post date:** [27 Abril, 2024 16:23 UTC](https://foros.velneo.com/t/variable-global-en-script/11475/1 "2024-04-27T16:23:50Z")

</div>

Hola amigos, os expongo mi problema.

Tengo una pila de formularios, con un solo subformulario, que según pulso unos botones, me cambia el formulario mediante un script.

Al tener que programarlo en muchos subformularios, quiero hacerlo mediante una variable global en memoria, que alimento antes de lanzar el siguiente script.

// --------------------------------  
// Abrir el formulario seleccionado  
// --------------------------------  
var controlPila = theRoot.dataView().control(“SEP”);  
controlPila.removeForm(0);  
var formulario = controlPila.addForm(“ExtreValor\_dat/T\_FORM”);  
formulario.updateControls();

Donde T\_FORM es la variable global que alimento con el nombre del subformulario a abrir.  
No consigo que me funcione y debe ser una tontería, pero estoy bloqueado y no consigo hacer que funcione con la Variable, si lo hago directamente con el nombre del formulario SI funciona bien.

Ayuda, gracias.

---

<div class="post-metadata">

**Author:** ![correo](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/correo/32/5689_2.png) [@correo](https://foros.velneo.com/u/correo)\
**Post date:** [27 Abril, 2024 18:14 UTC](https://foros.velneo.com/t/variable-global-en-script/11475/2 "2024-04-27T18:14:56Z")

</div>

Hola albersanca.

¿Qué hacen esas comillas en el parámetro de la función addForm?

Saludos  
Paco Satué

---

<div class="post-metadata">

**Author:** ![albersanca](https://yyz1.discourse-cdn.com/flex035/user_avatar/foros.velneo.com/albersanca/32/5238_2.png) [@albersanca](https://foros.velneo.com/u/albersanca)\
**Post date:** [28 Abril, 2024 15:44 UTC](https://foros.velneo.com/t/variable-global-en-script/11475/3 "2024-04-28T15:44:24Z")

</div>

Hola Paco.

Lo primero agradecerte el comentario, que aunque la solución no fue sólo quitar las comillas, pero me dio la pista.  
Adjunto resultado funcionando.  
Ahora el cliente si tendrá una buena experiencia.

// --------------------------------  
// Abrir el formulario seleccionado  
// --------------------------------  
var controlPila = theRoot.dataView().control(“SEP”);  
var T\_FORM\_S = theApp.globalVarToString(“ExtreValor\_dat/T\_FORM”)  
controlPila.removeForm(0);  
// var formulario = controlPila.addForm(“ExtreValor\_app/T\_VAL\_IDE\_DAT\_CLT”);  
var formulario = controlPila.addForm(T\_FORM\_S);  
formulario.updateControls();

Gracias y hasta pronto
