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

Dax para mostrar el año con valor máximo

Tengo una tabla a continuación:

ProductoY1Y2Y3
A123
B111
C333

necesita que el resultado muestre la Y con el total máximo de todo el producto (que es Y3: total = 10)

Resultado previsto:

ProductoY3
A3
B1
C3
Total10

Gracias

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Hay @Iamnvt ,

De acuerdo con su descripción, tengo dos métodos.

Método1

1.Cree una columna calculada en la tabla.

MAX-Y = 
VAR _SUMY1=SUM('Table'[Y1])
VAR _SUMY2=SUM('Table'[Y2])
VAR _SUMY3=SUM('Table'[Y3])
VAR _MAXsum=MAXX({_SUMY1,_SUMY2,_SUMY3},[Value])
RETURN
SWITCH(TRUE(),
_SUMY1=_MAXsum,'Table'[Y1],
_SUMY2=_MAXsum,'Table'[Y2],
_SUMY3=_MAXsum,'Table'[Y3])

vkalyjmsft_0-1639539229547.png

2.Si desea mostrar el nombre del año, puede crear otra medida.

MAX Year = 
VAR _SUMY1=SUM('Table'[Y1])
VAR _SUMY2=SUM('Table'[Y2])
VAR _SUMY3=SUM('Table'[Y3])
VAR _MAXsum=MAXX({_SUMY1,_SUMY2,_SUMY3},[Value])
RETURN
SWITCH(TRUE(),
_SUMY1=_MAXsum,"Y1",
_SUMY2=_MAXsum,"Y2",
_SUMY3=_MAXsum,"Y3")

vkalyjmsft_1-1639539340591.png

Método2

1.Seleccione Y1, Y2, Y3 al mismo tiempo y, a continuación, haga clic en unpivot columns y, a continuación, obtenga tres columnas.

vkalyjmsft_2-1639539618643.png

vkalyjmsft_3-1639539627826.png

2.Cteate una nueva columna para calcular el valor total máximo.

Column =
SUMX (
    FILTER ( ALL ( 'Table (2)' ), 'Table (2)'[Year] = MAX ( 'Table (2)'[Year] ) ),
    'Table (2)'[Value]
)

3.Crea una medida.

Check =
VAR _SUM =
    SUMX (
        FILTER ( ALL ( 'Table (2)' ), 'Table (2)'[Year] = MAX ( 'Table (2)'[Year] ) ),
        'Table (2)'[Value]
    )
RETURN
    IF ( _SUM = MAX ( 'Table (2)'[Column] ), 1, 0 )

4.Coloque la medida en el filtro visual y selecciónela es 1, obtenga el resultado esperado.

vkalyjmsft_4-1639539897957.png

Adjunto mi muestra a continuación como referencia.

Saludos
Equipo de apoyo a la comunidad _ kalyj

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Syndicate_Admin
Administrator
Administrator

@Iamnvt lo que @amitchandak sugerir en la primera parte, despivot la tabla, le dará dos columnas Atributo y Valor, cámbiele el nombre como mejor le parezca y luego solo necesita una medida de suma

Sum = SUM ( Table[Value] )

para visualizar, agregue la matriz visual:

- producto en filas

- atributo en columnas

- medida sobre el valor

y puede filtrar en cualquier año, en este caso archivará donde el valor del atributo es = Y3 para que la matriz visual solo muestre y3

Síguenos en LinkedIn (en inglés)

Más información sobre el formato condicional en Microsoft Reactor

Mi última entrada de blog El poder de usar grupos de cálculo con relaciones inactivas (Parte 1) (perytus.com) 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.

Syndicate_Admin
Administrator
Administrator

@Iamnvt ,

Unpivot la tabla Año(Y) vendrá en filas
cambiar el nombre como Año
A continuación, cree esta medida en DAX

medida =
var _max = Maxx(allselected(Table), Table[Year])
devolución
Sumx(filter(Table, Table[Year] = _max), Table[Value])

https://radacad.com/pivot-and-unpivot-with-power-bi
Transponer : https://yodalearning.com/tutorials/power-query-helps-transposing-data/

@amitchandak
¿Qué tal si el valor _max está en Y2? Necesito filtrar el año con el valor TOTAL MAX.

Gracias

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.