Explicación del contexto de fila en LuckyTemplates

Descubrí que la mayoría de las personas se confunden con respecto a la comprensión de cómo funciona DAX en el contexto de la fila . Esto se debe a que el contexto de fila puede ser bastante complicado e innecesariamente. Así que vamos a tocar el contexto de la fila a lo largo de este artículo. Puede ver el video completo de este tutorial en la parte inferior de este blog.

La forma en que pienso sobre el contexto de fila es a través de iteraciones o funciones de iteración . Tan pronto como hice esa distinción en mi mente, tuvo más sentido en términos de lo que realmente estaba pasando en el motor de cálculo.

Como resumen, hemos discutido que hay tres tipos de contextos: el contexto de evaluación , el contexto de filtro y el contexto de fila .

Cualquier cálculo DAX funciona en un proceso de dos pasos. El contexto de evaluación siempre va primero y luego se ramifica en contexto de filtro o contexto de fila según la función que escriba.

Tabla de contenido

Comprender el contexto de la fila

El contexto de la fila tiene que ver con la iteración.

Voy a mostrarle un par de ejemplos y, con suerte, esto le ayudará a comprender qué hace realmente el contexto de fila en el back-end.

Contexto de fila VS Contexto de filtro

En nuestro ejemplo, la fórmula se calcula a través del contexto de filtro porque es una agregación simple. Resume toda la columna Cantidad después de que se hayan implementado todos los filtros iniciales.

Explicación del contexto de fila en LuckyTemplates

El filtro inicial en la tabla Ventas es Producto 1. Sumando cada cantidad que se ha vendido, obtenemos 165.

Explicación del contexto de fila en LuckyTemplates

Ahora voy a mostrarte cómo obtener exactamente el mismo resultado, pero calculado de una manera muy diferente. Primero, voy a crear una nueva medida para la iteración de cantidad vendida utilizando una fórmula de iteración.

Explicación del contexto de fila en LuckyTemplates

Los ejemplos de funciones de iteración incluyen SUMX , AVERAGEX , MANYX y COUNTX . En este caso, vamos a utilizar SUMX .

La función SUMX me ha pedido que coloque una tabla, así que voy a colocar la tabla Ventas. Y luego me pidió una expresión, así que la puse en la columna Cantidad.

Esta función es bastante diferente a la primera función, pero obtengo exactamente el mismo resultado cuando la arrastro.

Explicación del contexto de fila en LuckyTemplates

Estamos obteniendo exactamente los mismos resultados aquí porque, en última instancia, es el mismo cálculo. Simplemente se calculó de una manera diferente.

Explicación del contexto de fila en LuckyTemplates

La iteración de cantidad vendida se calculó utilizando el contexto de fila , mientras que la cantidad total vendida se calculó utilizando el contexto de filtro .

Cálculo de la iteración de la cantidad vendida usando el contexto de la fila

Veamos ahora paso a paso cómo se calcula la iteración de cantidad vendida. Primero, debe recordar dejar el contexto de valoración inicial, que es el Producto 1 en este caso. Y luego a través del contexto de fila , estamos iterando a través de cada fila de la tabla que especificamos.

En este caso, estamos especificando la tabla Ventas y luego observamos cada fila en la columna Cantidad.

Explicación del contexto de fila en LuckyTemplates

Durante la evaluación inicial, el Producto 1 estaría determinado por lo que se filtre en la columna ID del producto. Y luego cuenta las filas debajo de la columna Cantidad. Cada vez que llega a una fila, ingresa y guarda el resultado en la memoria.

Una vez que llega al final de la tabla, va y hace una evaluación de todos los resultados que se guardan en la memoria, y luego hará cualquier cálculo que le pida, que en este caso es SUMX .

Explicación del contexto de fila en LuckyTemplates

¿Por qué usar un contexto de fila o una función de iteración?

Esto se debe a que dentro de una función de iteración puedes hacer cosas mucho más complejas. Puedes escribir algo de lógica muy avanzada dentro.

Explicación del contexto de fila en LuckyTemplates

Por ejemplo, para cada fila de la tabla Ventas, la cantidad se multiplica por 2. Ahora verá que se está realizando el mismo proceso de cálculo, pero obtenemos resultados diferentes.

Explicación del contexto de fila en LuckyTemplates

Esto se debe a que para cada fila, estamos escribiendo una lógica diferente. Después de revisar cada fila en la columna de cantidad, multiplicamos el valor por dos y luego se guarda en la memoria. Al final de eso, hacemos una SUMA .

También podemos escribir diferentes cosas aquí, incluida la lógica avanzada, como la lógica IF o SWITCH .

Explicación del contexto de fila en LuckyTemplates

Hay montones y montones de ejemplos de dónde sería mejor usar una función de iteración o un contexto de fila para hacer un cálculo en lugar de una función de agregación o un contexto de filtro .

Notas clave para comprender los contextos en LuckyTemplates

Para resumir todos los aspectos clave del contexto, recuerde que calcular en DAX funciona mediante un proceso de dos pasos. El primer paso es siempre la evaluación del contexto . Importa mucho cuál es el contexto de evaluación .

Una vez que comprenda cuál es el contexto de evaluación para cualquier resultado individual, DAX se ramifica en dos formas diferentes. Puede calcular a través del contexto del filtro o del contexto de la fila.

Elegir qué contexto usar depende de la fórmula que esté escribiendo. Entonces, si escribe una fórmula de agregación simple , luego irá y la calculará a través del contexto de filtro . Pero si escribe una función de iteración como SUMX, calculará la fórmula a través del contexto de fila .

Una vez que esté un poco más avanzado en DAX, puede tener múltiples contextos en la misma función. Pero antes de llegar allí, realmente debe comprender qué es el contexto en su forma más simple.

Conclusión

Comprender los tipos de contexto es absolutamente crucial a medida que aprende DAX y desea realizar un trabajo más avanzado. Cuando comienza a escribir una fórmula DAX realmente avanzada, tiene múltiples contextos trabajando al mismo tiempo y necesita comprender qué hace cada parte individual de esa fórmula para lograr los resultados deseados.

Aquí hay algunos enlaces recomendados para que aprenda más sobre la aplicación del contexto de fila dentro de LuckyTemplates:

Contexto de evaluación: (1.8) Guía definitiva para principiantes de DAX

Contexto de filtro: (1.9) Guía definitiva para principiantes de DAX

Disfruta trabajando en este.

Leave a Comment

Time Intelligence en LuckyTemplates: cómo calcular el número de transacciones realizadas en los últimos N días

Time Intelligence en LuckyTemplates: cómo calcular el número de transacciones realizadas en los últimos N días

Descubra cómo calcular el total de transacciones realizadas en los últimos N días y obtenga información útil utilizando la inteligencia de tiempo en LuckyTemplates.

Cómo evaluar clústeres en sus datos mediante la técnica DAX en LuckyTemplates

Cómo evaluar clústeres en sus datos mediante la técnica DAX en LuckyTemplates

En este tutorial, demuestro cómo mostrar clústeres en sus datos permite extraer información valiosa usando técnicas DAX avanzadas.

¿Cuánto personal tenemos actualmente? Lógica de fechas múltiples en LuckyTemplates usando DAX

¿Cuánto personal tenemos actualmente? Lógica de fechas múltiples en LuckyTemplates usando DAX

En este tutorial, aprenderá a calcular la <strong>población actual del personal</strong> para las relaciones múltiples de la tabla de calendario mediante la función COUNTROWS y FILTER en LuckyTemplates.

Hacer una solicitud HTTP en Power Automate

Hacer una solicitud HTTP en Power Automate

Aprenda a crear una solicitud HTTP con Power Automate y cómo implementar soluciones efectivas para la automatización de tareas.

Programe un flujo de escritorio para que se ejecute en Power Automate

Programe un flujo de escritorio para que se ejecute en Power Automate

En este tutorial, aprenda cómo programar un flujo de escritorio en Power Automate para automatizar tareas en la web y su escritorio.

Power Automate Terminar Control de acción en flujos

Power Automate Terminar Control de acción en flujos

Aprenda a usar correctamente el control Terminar acción de Power Automate que termina las acciones en un flujo si no se cumple alguna de las condiciones.

Power Query: combinar archivos de varias carpetas

Power Query: combinar archivos de varias carpetas

Aprenda a combinar archivos de varias carpetas en su red, escritorio, OneDrive o SharePoint utilizando Power Query.

Tipos de flujo de Power Automate y cuándo usarlos

Tipos de flujo de Power Automate y cuándo usarlos

En este blog, analizamos las similitudes y diferencias entre los tipos de flujo de Power Automate y determinamos cuándo usar cada flujo. Encuentra la mejor opción de automatización.

Conectores de Power Automate: número, texto y fecha y hora

Conectores de Power Automate: número, texto y fecha y hora

Familiarízate con algunos conectores Power Automate integrados que transforman cadenas en otro formato: número, texto y fecha y hora.

Tutorial del analizador VertiPaq: relaciones e integridad referencial

Tutorial del analizador VertiPaq: relaciones e integridad referencial

Este tutorial detallado sobre el analizador VertiPaq en DAX Studio le enseñará cómo usar la pestaña Relaciones para optimizar su DAX y resolver problemas de integridad referencial.