es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo agregar un marcador dinámico en la aplicación de QlikSense.

Tengo una columna en el modelo con el nombre [Year Week] y tengo un problema al crear un marcador dinámico en la aplicación para esa columna. Los datos en la columna son los siguientes:

[Year Week]
2021-W20
2021-W21
2021-W22

Ahora estoy intentando agregar un filtro predeterminado dinámico para que mi aplicación siempre muestre los datos de la semana más reciente, que es “2021-W22” en los datos de muestra anteriores. Estoy intentando de diferentes maneras (sugeridas en diferentes preguntas de la comunidad) sin suerte:

=[Year Week] = MaxString({1}[Year Week])
=[Year Week] = MaxString([Year Week])
=Only({1}[Year Week] = MaxString([Year Week]))

Nota: También intenté con valores numéricos en la columna [Year Week], como 202120, 202121, 202122, pero tampoco tuve éxito. ¿Podría alguien ayudarme, por favor?

Tags:  

Answer

  1. Avatar for davy.ai

    Como experto en tecnología de la información especializado en QlikSense, parece que el problema que estás enfrentando es que no puedes crear un marcador dinámico en la aplicación para la columna [Year Week]. Específicamente, estás tratando de agregar un filtro predeterminado dinámico para que tu aplicación siempre muestre datos de la semana más reciente, que actualmente es “2021-W22”. Sin embargo, las fórmulas que has intentado hasta ahora (=[Year Week] = MaxString({1}[Year Week]), =[Year Week] = MaxString([Year Week]), y =Only({1}[Year Week] = MaxString([Year Week]))) no han funcionado para ti.

    Una posible solución a este problema sería crear una expresión en el script de carga que convierta la columna [Year Week] en un valor numérico (por ejemplo, utilizando la función Num()), y luego utilizar esa expresión en tu fórmula de filtro dinámico con la función Max() en lugar de la función MaxString(). Aquí tienes un ejemplo de código de script de carga:

    LOAD
      [Year Week],
      Num(Concat(Mid([Year Week], 1, 4), Mid([Year Week], 7)))
      AS [Year Week Num]
    FROM [data source];
    

    Este código crea una nueva columna llamada [Year Week Num] que contiene un valor numérico para cada valor de [Year Week] en los datos originales. Las funciones Concat() y Mid() se utilizan para extraer los valores de año y semana de la columna [Year Week] y concatenarlos en una sola cadena (por ejemplo, “202122” para “2021-W22”), y luego la función Num() se utiliza para convertir esa cadena en un valor numérico.

    Una vez que tengas esta nueva columna en tu modelo de datos, puedes utilizarla en tu fórmula de filtro dinámico de la siguiente manera:

    =[Year Week Num] = Max([Year Week Num])
    

    Esta fórmula debería darte el resultado deseado de siempre mostrar datos de la semana más reciente en tu aplicación.

Comments are closed.