Para este ejemplo, hay una lista de datos y dentro de esa lista se hace referencia al cliente varias veces. Entonces, desea calcular el valor reciente para ese nombre de cliente en particular.
El ejemplo presentado en los foros tenía la forma de datos de una encuesta. Desea averiguar la última o más reciente vez que un cliente en particular realizó la encuesta.
Hay un par de maneras de resolver esto. Puede realizar la solución utilizando columnas o medidas calculadas.
El uso de una columna calculada brinda más estética, mientras que el uso de una medida permite que sus modelos sean más dinámicos.
Aquí le mostramos cómo calcular la fecha más reciente para cualquier dimensión en su conjunto de datos utilizando dos soluciones.
El primer paso es crear una nueva columna en la tabla que se dio como ejemplo en los foros. Esta nueva columna contendrá la fecha máxima .
Esta es la lógica utilizada en la fórmula para la fecha máxima:
Siempre que encuentre problemas en LuckyTemplates que requieran la fecha o el número máximo, la función MAXX DAX es la mejor para usar.
Esta función es la clave para crear la solución para este ejemplo.
2. Crea una variable
Ahora, necesita crear una nueva variable usando la función . En este ejemplo, la nueva variable se llama CurrentName .
Para cada fila diferente, desea calcular el nombre de cada persona. Esta parte es bastante fácil ya que simplemente necesita hacer referencia al nombre de la columna en una Columna calculada.
En cada fila, solo desea aislar a las personas con el mismo nombre que la fila actual.
Mirando la tabla, puede ver que tiene tres nombres diferentes con dos entradas para cada nombre.
Debe aislar esos nombres y luego calcular la fecha máxima en que una persona en particular ha realizado transacciones con usted. La transacción podría ser en términos de completar una compra o una encuesta.
3. Crear una declaración de FILTRO
Para aislar los nombres, primero debe usar la función FILTRO y .
Esto eliminará todos los filtros dentro de la tabla. Esto también iterará a través de cada fila, independientemente del contexto.
Luego, debe averiguar si el nombre en los datos de la encuesta es igual a la variable CurrentName .
4. Usa la función MAXX
Ahora, la función MAXX DAX obtendrá una tabla que contiene solo dos filas. Este es el resultado de filtrar e iterar a través de cada fila para averiguar si el nombre es igual al nombre actual. En este caso, el nombre actual es John Smith.
A continuación, debe evaluar el máximo. La función MAXX DAX calcula el máximo por usted. Entonces, todo lo que necesita hacer es poner la columna en la fórmula:
Cuando cambie el formato de la columna Fecha máxima a una fecha, verá que la fecha máxima para John Smith es el 23 de febrero.
La fecha máxima para Nancy Jones es el 25 de septiembre, mientras que para Elaine Anderson es el 22 de septiembre.
Esta es una técnica muy simple y su lógica se puede aplicar a diferentes escenarios. Puede usar esto para averiguar el monto de la última compra o venta.
Solución #2: Usar una medida
Aquí se explica cómo resolver este problema usando Medidas.
El uso de medidas le permite calcular la última fecha y luego pasar a otros cálculos.
Esta es la mejor manera de ejecutar cualquier cálculo en LuckyTemplates.
1. Crea una tabla
Primero, necesitas crear una tabla.
Esta tabla solo contiene dos columnas. La información contenida en las demás columnas es irrelevante para este cálculo.
2. Crear una nueva medida
A continuación, debe crear una nueva medida.
Esta medida tiene la misma fórmula que se utilizó en la solución de columnas calculadas. Sin embargo, debe cambiar la tabla Survey a Survey Data .
Y en lugar de simplemente hacer referencia al nombre de la columna, debe usar la función .
Esto captura en qué contexto te encuentras.
SELECTEDVALUE le permite tomar el valor del texto de su contexto.
Esta técnica también es muy dinámica en comparación con otros cálculos, ya que puede eliminar la columna de fecha y solo retener la fecha máxima para cada cliente.
Las soluciones no tienen que ser difíciles. Se pueden hacer usando formas simples.
Para este ejemplo, puede optar por la solución Columnas calculadas o usar Medidas.
Con suerte, entendió el concepto de cómo manipular la tabla virtual dentro de la función MAXX DAX.
También puede usar la función FILTER para iterar a través de la información y luego ajustar la tabla virtual según el parámetro que puso en la instrucción FILTER . MAXX luego hará el trabajo desde aquí.