Estados Alternos
Descripción
Podemos utilizar Estados alternos para realizar un análisis comparativo entre conjuntos de múltiples elementos de datos, por ejemplo para fines de análisis de cestas de compra. Un estado contiene un conjunto de selecciones.
El desarrollador de QlikView puede crear múltiples estados en un mismo documento QlikView y aplicar dichos estados a determinados objetos del documento. El usuario final puede crear copias de estos objetos (objetos de servidor) y a continuación poner dichos objetos en diferentes estados.
La diferencia fundamental entre Desvincular y Estados Alternos es que TODOS los objetos en un determinado estado responderán a las selecciones efectuadas por el usuario en dicho estado. Los objetos de un estado no se ven afectados por las selecciones que el usuario realiza en los otros estados.
No se puede acceder a los Estados alternos desde el script de carga.
Configurar los estados alternos
Haga lo siguiente para habilitar y configurar los estados alternos:
- Haga clic en Estados Alternos... en la pestaña Propiedades de Documento: General.
Se abre el diálogo Estados Alternos. - Haga clic en Añadir... para crear estados y asígneles un nombre. Los nombres se conocen como identificadores de estado.
- Haga clic en Aceptar para cerrar el cuadro de diálogo.
Ahora el desarrollador puede crear nuevos Estados alternos desde el interior de los objetos de pantalla.
Los usuarios finales que acceden a documentos QlikView desde un QlikView Server pueden hacer uso de los Estados Alternos pero no pueden crear Estados Alternatos.
Asignar estados a objetos
Para asignar un estado a un objeto haga lo siguiente:
- Abra el diálogo Propiedades y seleccione la pestaña General.
- Configure un Estado alterno con el identificador de estado que desee utilizar para el objeto.
El objeto ahora será independiente del resto del documento en cuanto a selecciones a menos que otros objetos se configuren con el mismo estado.
Hay dos estados que están siempre disponibles: estado predefinido y heredado. El estado predefinido es el estado en el que más uso se da de QlikView y viene representado por el signo $. El documento QlikView se halla siempre por defecto en el estado predefinido. Los objetos pueden heredar estados de otros objetos en niveles superiores, como hojas y contenedores. Esto significa que los estados se heredan como tal: como Documento, Hoja u Objetos de Hoja. Las hojas y objetos de hoja siempre se encuentran en estado heredado a menos que el desarrollador de QlikView lo modifique.
Comparar estados alternos
Podemos comparar dos estados del mismo objeto. Por ejemplo, podemos crear un gráfico de líneas que muestre ambos estados de los datos con el mismo eje asignándole un estado a la expresión que utilice el análisis de conjuntos.
Ejemplo:
Si ha definido los estados Group1 y Group2, puede comparar la media del campo Adj.Close de ambos grupos mostrando estas dos expresiones en un gráfico de líneas:
Avg({[Group1]} [Adj.Close])
Avg({[Group2]} [Adj.Close])
Comportamiento lógico al emplear Estados Alternos
Pulsar el botón Borrar afecta a todos los estados.
En el plugin Inter Explorer se ha incorporado un elemento de menú al menú desplegable del botón Borrar que permite al usuario borrar las selecciones de un determinado estado. Este menú no está disponible en el cliente Ajax, pero se puede lograr la misma función creando un botón de acción conectado a la acción de Borrar con un estado específico.
Pulsar los botones Atrás y Adelante afecta a todos los estados. No hay mecanismo alguno para moverse atrás y adelante entre los estados.
Pulsar los botones Bloquear y Desbloquear afecta a todos los estados. No es posible bloquear y desbloquear determinados estados con estos botones. Se pueden bloquear determinados campos específicos de estados empleando la funcionalidad del botón derecho del ratón en los cuadros de lista que se encuentren en un determinado estado.
Los elementos de menú del menú Selecciones afectan a todos los estados. No hay opción que afecte a estados aislados específicos en este menú.
Se pueden emplear Estados Alternos con objetos enlazados. El estado afecta a todas las instancias de un objeto. Cambiar un estado de un objeto enlazado pondrá todos los demás objetos enlazados en el mismo estado.
Las acciones sí se pueden configurar para que se den en determinados estados específicos. Excepto la acción Ejecutar Macro. Esta se puede configurar para que se ejecute en un determinado estado, pero las macros se lanzan o ejecutan en la totalidad de estados.
Los objetos que hacen uso de un estado perdido (el estado fue eliminado por un desarrollador) volverán al estado predefinido desde el desplegable Estado Alterno, el cual mostrará información como la siguiente:
NombredeEstadoAlterno<nodisponible>.
Solo podrá utilizar funciones de campo con un argumento de Estado junto con Estados alternos.
Variables en Estados Alternos
Puede especificar qué estado usar al expandir una variable. Los cambios en un estado específico no afectarán a los valores de variables que se expanden en otro estado. Si no especifica un estado, la variable se expande en el estado predeterminado.
Ejemplo:
Si tiene un estado denominado MiEstado y una variable denominada vMiVar:
- $(vMiVar) expande la variable en el estado predeterminado.
- $({MyState} vMiVar) expande la variable en el estado MiEstado.