cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Syndicate_Admin
Administrator
Administrator

Cálculo matricial de sub totales - difícil de entender

Calcular subtotales en una matriz sigue siendo algo difícil de hacer.

En nuestro entorno de trabajo, tenemos que registrar cuánto tiempo están disponibles (visibles) los diferentes elementos en una aplicación.

Un artículo puede estar disponible varias veces al mes durante diferentes períodos de tiempo

Así que tengo tabla con registros como este (artículo, año, mes, disponibilidad (horas))

ARTÍCULO

AÑO

MES

DISPONIBILIDAD

Tema 1.1

2021

7

0,1

Tema 1.1

2021

5

11

tema 1.2

2021

6

15,5

tema 1.3

2021

7

26,1

Tema 1.1

2021

5

0,9

tema 1.2

2021

6

5,6

tema 1.3

2021

7

8

Tema 2.1

2021

5

11

tema 2.2

2021

6

15,5

Tema 2.1

2021

7

26,1

tema 2.2

2021

5

0,2

tema 2.2

2021

6

9,2

Todos los elementos pertenecen a un grupo. Usamos esta tabla "tableGroupItem" para vincular elemento y grupo.

GRUPO

ARTÍCULO

Grupo 1

Tema 1.1

Grupo 1

tema 1.2

Grupo 1

tema 1.3

Grupo 2

Tema 2.1

Grupo 2

tema 2.2

Grupo 2

tema 2.3

Grupo 3

Tema 3.1

Grupo 4

Tema 4.1

Necesito un informe con la disponibilidad promedio de cada artículo por mes.

También totales por grupo y un total global.

Trato de calcular mi informe de esta manera

Utilizo una matriz con esta fórmula para obtener el informe a continuación

PromedioDisponibilidad =

DÓNDE MyAvgTime = AVERAGEx( tabelRegistration, tabelRegistration [ItemDisponibilidad] )

DÓNDE MyResult =

INTERRUPTOR(

VERDADERO(),

ISINSCOPIO(tabelGroupItem[GroupId]) && ISINSCOPIO(tabelGroupItem[ItemId]), MyAvgTime,

ISINSCOPIO(tabelGroupItem[GroupId]), SUMX( VALORES(tabelGroupItem[ItemId]), MyAvgTime ),

SUMX( VALORES( tabelGroupItem [ItemId] ), MyAvgTime )

)

DEVOLUCIÓN MyResult

Este es mi informe. Como puede ver, los totales son incorrectos.

27.2 + 26.4 + 8.7 + 31.4 = 93.7 y el informe me da 91.4

Koen_Zamia_0-1638202332073.png

¿Cuál es mi error?

Muchas gracias por darme alguna ayuda o algunas pautas para resolver este problema.

Valeroso

1 ACCEPTED SOLUTION

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

Nos llevaría demasiado lejos para explicar exactamente lo que esto significa.

Lo que el usuario final quiere es ver

  • la suma de los promedios a nivel de grupo. Entonces, en lugar de 91.4 necesito 93.7 como resultado de la suma (27.2 + 26.4 + 8.7 + 31.4)
  • la suma de todos los valores de nivel de grupo como un total

Me llevaría demasiado lejos dar DAX de muestra para implementar esto, pero sugeriría que si desea sumar los promedios de los elementos, debe tomar el promedio de cada elemento por separado en lugar de todos juntos en una sola variable.

Syndicate_Admin
Administrator
Administrator

Una variable es un valor constante fijo una vez que se ha definido. Así

SUMX ( VALUES ( tabelGroupItem[ItemId] ), MyAvgTime )

es lo mismo que multiplicar MyAvgTime por el número de valores de ItemId. En la celda señaló, en lugar de sumar los promedios debajo, está tomando el promedio sobre todo el Grupo 1 y luego multiplicando ese promedio por 4.

En general, sumar promedios no es terriblemente significativo, por lo que dudo en sugerir una solución que dé el resultado que espera. ¿Cómo interpretas 91.4? ¿Qué te dice realmente ese número?

Nos llevaría demasiado lejos para explicar exactamente lo que esto significa.

Lo que el usuario final quiere es ver

  • la suma de los promedios a nivel de grupo. Entonces, en lugar de 91.4 necesito 93.7 como resultado de la suma (27.2 + 26.4 + 8.7 + 31.4)
  • la suma de todos los valores de nivel de grupo como un total

Helpful resources

Announcements
Power BI December 2021 Update_carousel 768x460.jpg

Check it Out!

Click here to read more about the December 2021 Updates!

Jan 2022 Dev Camp 768x460 copy.png

Power BI Dev Camp- January 27th, 2022

Mark your calendars and join us for our next Power BI Dev Camp!

UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!