Cómo usar una función de iteración en LuckyTemplates

Este tutorial le enseñará sobre diferentes funciones de iteración y cómo usarlas de manera eficiente en sus cálculos.

A menudo hablo de cómo no se requieren columnas calculadas al hacer algunos cálculos. Esto se debe a los iteradores.

Los iteradores o las funciones de iteración pueden ayudarlo a realizar un cálculo sin colocar físicamente los resultados en la tabla.

Esta técnica puede ayudarlo a ahorrar la memoria necesaria para cargar su modelo de datos de LuckyTemplates . En las siguientes secciones, le mostraré cómo optimizar sus cálculos usando iteradores.

Tabla de contenido

Cálculo de las ventas totales mediante una función de iterador

Para comenzar, cree una nueva medida para Costos totales . Asegúrese de seleccionar el grupo de medida en el que desea que aterrice esta nueva medida.

Presione Shift y Enter para bajar una línea antes de colocar la primera función de iteración, que es .

En la barra de fórmulas de LuckyTemplates, ya puede ver exactamente lo que necesita colocar después de la función como lo sugiere IntelliSense. Para SUMX , debe agregar una tabla después.

La fórmula SUMX ejecutará la lógica en cada fila de la tabla dada. Esta es la razón por la cual los iteradores están asociados con el contexto de fila . Dentro de la medida, los iteradores pueden convertir la fórmula en un contexto de fila.

Deberá hacer referencia a la tabla Ventas después de la función SUMX . Para calcular los costos totales, debe multiplicar la Cantidad de pedido por el Costo unitario total .

No necesitamos hacer referencia a la nueva columna que se creó en absoluto. Los costos totales son una medida y puedo traerlos a mi tabla para evaluar nuestros costos totales.

Ahora, arrastre la medida dentro de la tabla para ver los resultados. Asegúrese de haber seleccionado un contexto inicial del filtro Ciudad .

Podemos cambiar el contexto inicial de nuestro cálculo haciendo clic en las diferentes regiones que queremos ver.

Los Costos Totales funcionan de manera similar en términos del contexto inicial. El contexto inicial se aplica a la tabla Ventas, pero luego dentro de cada uno de estos resultados individuales, estamos calculando la Cantidad de pedido multiplicada por el Costo unitario total.

Detrás de escena en nuestro modelo de datos, hemos activado nuestro filtro y tenemos un contexto proveniente de nuestra tabla Regions y otro contexto proveniente de nuestra tabla Date. Estos fluyen hacia nuestra tabla de Ventas, que se filtra mediante la función de iteración SUMX.

Dado que la función SUMX evalúa virtualmente cada fila de la tabla Ventas , no se necesita una columna física para los resultados.

Después del contexto inicial, SUMX obtiene el producto de la Cantidad de pedido y el Costo unitario total para cada fila. Por último, evalúa todos los resultados calculados de todas las filas.

Si se dio cuenta, la columna Costos original se creó a través de una columna calculada. Como he dicho, es innecesario ya que los iteradores ya pueden hacer su trabajo. Puede eliminarlo porque puede ocupar memoria innecesaria en su modelo.

Las fórmulas de iteración ejecutan evaluaciones en cada fila, mientras que las fórmulas de agregación no lo hacen.

Este es un ejemplo simple, pero puede ser más avanzado aquí y escribir sentencias IF y sentencias SWITCH. Además, no tiene que crear una tabla física; puedes usar uno virtual en su lugar.

Mucha de esta información se cubre en profundidad en el curso Mastering DAX , pero esto es solo para mostrarle los comienzos de las funciones de iteración y cómo comenzar a usarlas cuando sea apropiado.

Si siente la necesidad de crear una columna calculada dentro de su tabla de hechos, casi puedo garantizarle que una función de iteración hará el trabajo por usted.

Uso de otras funciones de iterador de DAX

Ahora, le mostraré otro ejemplo de cómo los iteradores pueden hacer maravillas en su cálculo. Esta vez, calculemos el costo promedio.

Simplemente copie la fórmula Costos totales y péguela en una nueva medida. Solo tienes que cambiar el nombre a Costos promedio y luego usar en lugar de SUMX .

La nueva fórmula ejecuta una lógica similar porque evalúa cada fila de la tabla Ventas . Además, todavía necesita obtener el producto de Cantidad de pedido y Costo unitario total . La única diferencia aquí es que en lugar de la suma, la fórmula calcula el promedio.

Ahora, si trae la medida Costos promedio a la tabla, puede ver cómo se compara con la medida Costos totales .

Es sorprendente cómo puede ejecutar una lógica similar simplemente cambiando la función de iteración.

Técnicas adicionales de optimización de datos 

Para optimizar su tabla, puede eliminar información redundante como la columna Ingresos totales .

Dado que puede alcanzar fácilmente los costos promedio, ya no necesitará la columna Ingresos totales en su tabla. Siempre que tenga las columnas Precio unitario y Costo unitario total , todo está bien.

Ahora, puede crear una nueva medida para Ventas totales (iteración) mediante la función SUMX . Solo tiene que hacer referencia a la tabla Ventas y luego obtener el producto de Cantidad de pedido y Precio unitario .

Después de eso, puede comparar los resultados en las columnas Ventas totales y Ventas totales (iteración) . Ambos tienen los mismos resultados, ¿verdad?

En términos de rendimiento, no hay mucha diferencia entre usar columnas calculadas e iteradores. Pero cuando se trata del modelo de datos, una función iteradora puede deshacerse de una columna completa y ahorrarle cientos de filas de datos.

Además, puede eliminar columnas redundantes porque los iteradores pueden calcular los resultados necesarios virtualmente. Esta práctica hará que su mesa sea mucho más delgada y su modelo mucho más rápido. Asegúrese de aplicar esta técnica de optimización en sus propios cálculos.

Conclusión

En resumen, una función de iteración evalúa cada fila, mientras que los agregadores no lo hacen.

La letra X al final de la función facilita la identificación de los iteradores. Los ejemplos incluyen las funciones SUMX , AVERAGEX , , y más.

El uso de funciones de iteración no creará tablas físicas adicionales . Esto puede ayudarlo a ahorrar memoria en LuckyTemplates.

Los ejemplos de SUMX y AVERAGEX que he cubierto son escenarios simples. Más adelante, entraremos en otras más avanzadas agregando sentencias IF y sentencias SWITCH .

¡Mis mejores deseos!


Funciones DAX en LuckyTemplates: uso de iteradores
Funciones de iteración en lenguaje DAX: un ejemplo detallado
Trabajo con funciones de iteración en DAX

*****






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.