En ocasiones, es necesario replicar estructuras de diseño donde las preguntas y/o campos se reiteran con muy poca variación (algún valor, un salto...). Estas variaciones pueden ser salvadas con el uso de comodines. Veamos un sencillo ejemplo, con el que se puede entender de forma muy sencilla esta cuestión y que lo diferencia de lo que será un copiar / pegar normal.
Imaginamos una página en la que creamos un texto y una variable, que a su vez tiene un salto. De forma resumida, la situación sería esta:
TEXTO
|
Para usted qué significa la marca __MARCA__
|
NOMBRE DE VARIABLE
|
MARCA__CODMARCA__
|
SALTAR A
|
PREG__CODMARCA__
|
CONDICION DE SALTO
|
MARCA__CODMARCA__=1
|
En este ejemplo se han utilizado 2 comodines, __MARCA__ y __CODMARCA__. Podemos observar que la forma de identificar el comodín es con una palabra y como prefijo y sufijo dos símbolos consecutivos de subrayado (__). Si tuviera tres marcas, denominadas ASICS, NIKE y PUMA codificadas como 1, 2 y 3, y quisiera crear tres páginas una para cada marca, se podría hacer la siguiente sustitución:
__MARCA__
|
__CODMARCA__
|
ASICS
|
01
|
NIKE
|
02
|
PUMA
|
03
|
por lo que los textos y variables quedarían así para las tres páginas que quedarían:
TEXTO
|
Para usted qué significa
la marca ASICS
|
Para usted qué significa
la marca NIKE
|
Para usted qué significa
la marca PUMA
|
NOMBRE DE VARIABLE
|
MARCA01
|
MARCA02
|
MARCA03
|
SALTAR A
|
PREG01
|
PREG02
|
PREG03
|
CONDICION DE SALTO
|
MARCA01=1
|
MARCA02=1
|
MARCA03=1
|
Para poder hacer esto el usuario sólo debería haber definido los comodines y ejecutar la macro.
La forma de actuar sería la siguiente:
1. | Diseñar de forma normal, pensando siempre en utilizar comodines allá donde sepamos que va a ser necesario en la expansión de las pantallas. |
2. | Crear la macro, indicando que pantallas (consecutivas obligatoriamente) forman parte de la misma, con excepción de la primera pantalla del cuestionario que no puede formar parte de una macro. |
3. | Editar los comodines. Cada fila de comodines (en el ejemplo 3) genera un bloque de pantallas (el número que contenga la macro). |
4. | Ejecutar la macro diseñada; si la macro diseñada contiene 10 páginas y son 3 marcas, creará 30 páginas nuevas. |
5. | La macro se puede ejecutar en lugares diferentes del cuestionario, es decir, la macro 1, que nos generaría 3 pantallas, puede ser ejecutada detrás de la pantallas 5 1 vez, detrás de la pantalla 18, la segunda vez y detrás de la pantalla 25 una tercera vez. |
Cuando se diseñan este tipo de estructuras, se debe tener en cuenta:
• | Denominamos pantallas macro, a las pantallas que forman parte de una macro, pero no han sido expandidas (sustituidos los comodines). |
• | Denominamos pantallas expandidas, a las pantallas que pertenecen a una macro, donde ya se han sustituido los comodines. Aparecen en el árbol de componentes con un color verde en el icono que las representa. |
• | Denominamos iteraciones, al número de filas que contiene la tabla de comodines. |
• | Las macros se guardan en el cuestionario si están ejecutadas o si no están ejecutadas. |
• | La macro se puede ejecutar y modificar: volver a la situación inicial antes de ejecutar para editar el contenido de las páginas que la conforman. |
• | Todos los cambios realizados después de la ejecución sobre las pantallas expandidas |
• | Pueden haber tantas macros como se desee en un cuestionario, pero éstas no pueden compartir páginas. |
• | Si un cuestionario contiene macros no ejecutadas, no podrá ser subido a Gandia Integra. En el GIX se genera un nodo de error que impide que el cuestionario pueda ser subido al sistema. |
• | Los comodines, puede ser utilizados en todos los apartados de un componente: nombres de variable, códigos, texto extra, referencias, saltos, filtros, controles, etc. |
• | Se pueden establecer condiciones sobre variables que no existen, pero existen tras la ejecución del macro. |
|