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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Una medida para calcular la suma acumulada de otra medida, con filtro sobre medida

Hola

¿Cuál es el código DAX para crear una medida que calcula la suma acumulada de otra medida?

Mis datos son algo así como lo siguiente:

Cliente

Ventas

Rango
(medida)

% del total
(medida)

% acumulado
(nueva medida)

A

1000

1

33.3%

33.3%

B

800

2

26.7%

60.0%

C

500

3

16.7%

76.7%

D

400

4

13.3%

90.0%

E

300

5

10.0%

100.0%

Tanto "Rango" como "% del total" son medidas. Ahora necesito crear otra medida "Porcentaje acumulado" para resumir la medida "% del total".

Muchos ejemplos que encontré son para el cálculo de la suma acumulativa en columnas, no medidas, o el filtro está en los valores de columna. pero aquí parece que necesito filtrar en una medida (Rango). ¿Cómo obtienes ese Rank # en tu código DAX y luego sumas el "% del total"?

¡Gracias!

YL

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

@ylin88_waters ,

Compruebe la fórmula.

Measure = SUMX(FILTER(ALLSELECTED('Table'),[_rank]<=MAXX('Table',[_rank])),'Table'[_% of Total])

1.PNG

Saludos

Arrendajo

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

@ylin88_waters ,

Compruebe la fórmula.

Measure = SUMX(FILTER(ALLSELECTED('Table'),[_rank]<=MAXX('Table',[_rank])),'Table'[_% of Total])

1.PNG

Saludos

Arrendajo

Syndicate_Admin
Administrator
Administrator

¿ @ylin88_waters

Prueba esto:

Cumulative % = 
Var _R = [Rank]
Var _A = SUMMARIZE(all('Table'),'Table'[Customer],'Table'[Sales],"Rank",[Rank])
Var _B = filter(_A,[Rank]<=_R)
Var _C = SUMX(_B,[Sales])
return
_C/CALCULATE(sum('Table'[Sales]),all('Table'))

salida:

VahidDM_0-1644529750184.png

Si esta publicación ayuda, considere aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Aprecia tus felicitaciones!!
LinkedIn:
www.linkedin.com/in/vahid-dm/

Syndicate_Admin
Administrator
Administrator

@ylin88_waters probar algo como esto:

**bleep** Sum = 
VAR __rank = [Rank Measure]
RETURN SUMX ( FILTER( ALL ( 'Table' ), [Rank Measure] <= __rank ), [% Total] )

Síguenos en LinkedIn (en inglés) y YouTube.gif a nuestro YouTube (en inglés) canal

Yo lo haría Elogios si mi solución ayudó. 👉 Si puede dedicar tiempo a publicar la pregunta, también puede hacer esfuerzos para felicitar a quien ayudó a resolver su problema. ¡Es una muestra de agradecimiento!

Visítenos en https://perytus.com, su ventanilla única para proyectos/formación/consultoría relacionados con Power BI.

Hola VahidDM y parry2k:

Muchas gracias por su ayuda.

Probé sus dos códigos de muestra, pero no funcionaron. Parece que el Dax realmente no capturó el rango (una medida) de la fila actual. En realidad, calculó la suma de todas las filas. Parece que no puedo cargar mi archivo de prueba aquí (usando 1000 filas de datos ficticios), así que solo puse una imagen de la tabla de resultados.

ylin88_waters_0-1644591254854.png

Medidas:
Ventas $ = SUMA('Sales_test'[Ventas])
====================
Rango =
RANKX( ALLSELECTED(Sales_test[CustomerID]),'Sales_test'[Sales $])
=================
% del total de pedidos =
DIVIDE( [Ventas $],
CALCULATE( [Ventas $],
ALL('Sales_test'[CustomerID])
))
===================
% acumulado 1 =
VAR myrank = [Rango]
RETURN SUMX ( FILTER( ALL ( 'Sales_test' ), [Rank] <= myrank ), [% del total de pedidos] )
====================
Ventas acumuladas 1 =
VAR __rank = [Rango]
RETURN SUMX ( FILTER( ALL ( 'Sales_test' ), [Rank] <= __rank ), [Sales $] )
==============
% acumulado 2 =
Var _R = [Rango]
Var _A = SUMMARIZE(all('Sales_test'),'Sales_test'[CustomerID],[Sales],"Rank",[Rank])
Var _B = filtro(_A,[Rango]<=_R)
Var _C = SUMX(_B,[Ventas $])
devolución
_C/CALCULATE(sum([Ventas]),all('Sales_test'))

=====================

Si ves algo que necesito cambiar para que funcione, lo sabes. Gracias de nuevo.

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.