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.
Tenemos esta pregunta de cuestionario:
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__
|
FILTRO
|
?
|
CONDICION DE FILTRO
|
NO P8=__CODMARCA__
|
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
|
1
|
NIKE
|
2
|
PUMA
|
3
|
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
|
MARCA1
|
MARCA2
|
MARCA3
|
FILTRO
|
?
|
?
|
?
|
CONDICION DE SALTO
|
NO P8=1
|
NO P8=2
|
NO P8=3
|
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 qué 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. | El siguiente paso, sería acceder a ubicar la macro en el punto deseado del cuestionario , y 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. 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. |
|