Imaginemos
que tenemos un gráfico en el que las expresiones son siempre las mismas pero
queremos representar una dimensión u otra en función de una selección que haga
el usuario.
Los
ejemplos de uso más comunes son:
1.- Las traducciones a otros idiomas
Supongamos
que tenemos las categorías profesionales de los empleados en un campo llamado
Categorías y los valores son: Presidente, Director, Gerente, Operario, Administrador, Soporte y
necesitamos que nuestra aplicación sea multiidioma (español e inglés), pero no
sólo traduciendo los textos y las etiquetas de los objetos, si no traduciendo
también el idioma de los valores de las dimensiones.
Deberíamos
cambiar el nombre del campo Categorías a Categoria_ES
RENAME
FIELD Categorías TO Categoria_ES
Después
deberíamos crear el campo Categoria_EN con los valores President, Director,
Manager, Operator, Administrator,
Support
Este
nuevo campo debería formar parte del modelo de datos al mismo nivel que
Categoria_ES
El
tercer paso es crear una isla de datos con los idiomas. El campo idioma debe
coincidir exactamente con la terminación de las dimensiones anteriores. El
usuario elegirá siempre un idioma, ES o EN:
Idiomas:
LOAD * INLINE [
Idioma
ES
EN
]
;
Por
último, como dimensión de gráficos, crearemos una dimensión calculada con la
expresión:
=$(='Categoria_'&ONLY(Idioma))
El
argumento de ONLY() es el campo “Idioma” de la isla de datos “Idiomas” y según
lo que seleccione el usuario se mostrarán los valores del campo Categoria_ES o
Categoria_EN
2.-
Y el ahorro de tamaño del CdM en memoria. Dos latermativas posibles serían usar un grupo
cíclico o crear tantos gráficos idénticos como dimensiones tengamos (en cada
uno sólo cambia la dimensión) y visualizar uno u otro según se cumpla una
condición o meterlos todos en un contenedor de modo que el usuario elija cuál
ver.
Imaginemos
que tenemos las siguientes dimensiones: Continente, País y División y queremos
analizar su facturación. No queremos un grupo cíclico porque el usuario no
quiere ver el icono amarillo en el gráfico y quiere ver en todo momento las
opciones disponibles.
Nota para Qlik Sense: En Qlik Sense tenemos también la opción de hacer grupos cíclicos de expresiones y dimensiones, pero esto puede llevar al usuario a confusión con lo que está viendo en pantalla en un momento dado. La solución sería escribir un texto en el título del gráfico con la dimensión y la expresión utilizando las funciones GetObjectDimension y GetObjectMeasure, pero desafortunadamente estas no funcionan en los títulos de los gtáficos. La única forma de hacerlo es siguiendo el método descrito aquí.
Primero
creamos una isla de datos con los nombres de las dimensiones y su
representación en el CdM. Es importantísimo que los nombres de las dimensiones coincidan
(mayúsculas, signos de puntuación…. Etc) con los nombres de los campos de las
tablas del modelo.
Selector_1:
LOAD * INLINE [
Dim_1, Descr_1
NOMBRE_CONTINENTE, Continente
NOMBRE_PAIS, País
NOMBRE_DIVISION, División
]
;
Por
último, como dimensión de gráficos, crearemos una dimensión calculada con la
expresión:
=$(=ONLY(Dim_1)) o =$(=Dim_1)
Y
la etiqueta será
=Descr_1
No hay comentarios:
Publicar un comentario