Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Don't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.

Reply
Syndicate_Admin
Administrator
Administrator

Los totales que usan una fórmula son incorrectos

Hola colegas,

Por favor, considere esta tabla:

markmsc_0-1738023546907.png

La columna A es el número de valores subyacentes de la fila.

La columna B es el número de valores subyacentes distintos en la fila.

La columna C es el producto de A y B (es decir, A * B).

Si haces A * B en cada fila, verás que los productos se calculan correctamente, incluso para la fila total.

Sin embargo, si suma cada columna, verá que A y B tienen el pie correctamente (los totales son iguales a la suma de los valores anteriores), pero la columna A * B no suma. Esto se debe a las filas 2 y 3, que tienen más filas que filas distintas. Dado que la fila de totales multiplica las sumas de las columnas individuales A y B, los valores de 21 en la segunda y tercera filas se multiplican por los valores de 5 y 271 en la primera y cuarta filas, lo que crea una fila de totales generales que se calcula transversalmente, pero donde el total general de la columna A*B no es igual a la suma de los valores.

Dicho de otra manera, más simple, el total general para A * B debería ser 73508. Quiero que los totales se suman, aunque eso signifique que las matemáticas de los totales generales no funcionarán.

Me he estado devanando los sesos pensando en cómo lograr esto.

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Hola @markmsc

para corregir el total general, debe usar una función diferente a la suma. Utilice la función SUMX(). que es una función iterativa. diferente de SUM.
measure= SUMX( 'Nombre de la tabla', Sum(ColumnA)*SUM(ColumnB).

¡Espero que esto te ayude!

Hola @Uzi2019 , y muchas gracias por tu sugerencia. Había mirado SUMX, pero entendí que era principalmente útil para filtrar los valores en la columna que desea sumar.

Por favor, permítanme desarrollar mi ejemplo un poco más, y si tienen tiempo, tal vez puedan indicarme cómo SUMX puede ayudar aquí.

markmsc_0-1738077866004.png

En mi publicación original, simplifiqué el ejemplo. Este muestra exactamente lo que estoy tratando de hacer. Aquí

A es el valor DISTINCTCOUNT de los valores subyacentes de la fila

B es el COUNT de los valores subyacentes de la fila

A/B es el cociente de A dividido por B

C es la suma de otra medida de la tabla de origen
C * A /B es, como sugiere la etiqueta, el producto de las dos columnas anteriores

Por lo tanto, la fórmula DAX para C * A / B es:

Resultado = ROUND(SUM(TablaX[Cantidad]) * DISTINCTCOUNT(TablaX[AtributoValor]) / RECUENTO(TablaX[AtributoValor]) ,0)

Como puede ver en la nueva captura de pantalla, esto da como resultado un error de total general en la última columna donde 0 + 100 - 100 - 223 se suma a -199, cuando la suma correcta debería ser -223.

¿Cómo usaría SUMX aquí, por favor? Muchas gracias.

Hola @markmsc

Pruebe esto

var A=DISTINCTCOUNT(TableX[AttributeValue])
var B= COUNT(TableX[AttributeValue])
var f= dividir(A,B,0)

Return SUMX( TableName, SUM(TableX[Quantity]) * F)


¡Espero haber respondido a tu pregunta!

Syndicate_Admin
Administrator
Administrator

Intente crear una medida para los totales:

Total_Product = SUMX(TuTabla, TuTabla[ColumnaA] * TuTabla[ColumnaB])

o

Totales separados:

Total_A = SUMA(SuTabla[ColumnaA])

Total_B = (similar para B)

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Jan25PBI_Carousel

Power BI Monthly Update - January 2025

Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.

Jan NL Carousel

Fabric Community Update - January 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors