El primer paso es el contexto de evaluación o el contexto inicial. Luego, DAX toma una decisión basada en la función que escribe o el tipo de cálculo que va a realizar.
Se ramifica en el segundo paso, que es el contexto de filtro o el contexto de fila .
Hay una diferencia muy grande entre estos dos contextos, aunque en realidad puede obtener los mismos resultados escribiendo fórmulas diferentes.
Para comprender realmente cómo funciona DAX, debe comprender la diferencia entre los dos y cómo se calculan realmente las cosas en la memoria a través de DAX.
Comprender el contexto del filtro
El contexto del filtro es relativamente sencillo. Es relativamente simple porque realmente se alinea con las agregaciones simples que realiza. Para comprender lo que realmente está sucediendo, analicemos un ejemplo muy específico.
Tenemos dos ejemplos: cantidades totales vendidas por día y cantidades totales vendidas por producto. Estos dos tienen exactamente la misma fórmula, pero con diferente contexto de evaluación .
Veamos exactamente cómo se calcula esto para la fila superior de cada una de estas tablas.
Como puede ver en la fila superior, hemos vendido 24 productos el primero de enero de 2015. Se coloca un filtro en la Fecha del primero de enero de 2015 para que funcione el cálculo.
Si saltamos al modelo de datos, podemos ver que el filtro colocado en la Fecha fluye hacia abajo a través de la relación hasta que pasa por la tabla Ventas.
En la tabla Ventas, la fecha de compra se filtra para el primero de enero de 2015. Y cuando ese filtro esté en su lugar, todo lo que queda será el primero de enero de 2015.
Agregación en el contexto del filtro
Dado que estamos resumiendo la columna Cantidad en esta función, la agregación en el contexto del filtro hace esta gran evaluación o gran agregación de toda la columna.
El contexto del filtro simplemente significa que los filtros están en su lugar. Esto hará que DAX mire toda la columna que sobra y luego haga una agregación de todo a la vez.
Lo mismo puede decirse de una variedad de cálculos diferentes. Puede hacer esto mientras intenta contar las transacciones totales que estaba haciendo o los ingresos totales que está creando. La misma agregación se puede hacer una vez que se completa el contexto de evaluación .
Hay tanto contexto en DAX que a veces puede resultar confuso. Un consejo que puedo compartir con usted es asociar el contexto del filtro con la agregación , como una suma o un promedio, o un mínimo y un máximo. Esto es lo opuesto a una iteración, que es lo que funciona con el contexto de fila.
Conclusión
En resumen, un contexto de filtro funciona después de que se realiza el contexto de evaluación inicial. La clave es asociarlo con una agregación. Lo que sucede detrás de escena es que hace esta gran agregación de una columna después de que se han colocado todos los filtros.
Puede consultar estos vínculos para obtener más información sobre la aplicación del contexto de filtro dentro de LuckyTemplates: