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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
marcura
Helper II
Helper II

Devolver los últimos 5 por filtros dobles

¡Hola comunidad!

Necesito devolver sólo las últimas 5 filas, por QTDE y DATA_PEDIDO.

ArtículoDATA_PEDIDOQty
101/01/202050
102/01/202020
202/02/202030
302/02/202020
402/02/2020100
402/02/202060
402/02/2020120
402/02/202080
402/02/202090
402/02/202050
402/02/202020
403/02/202010


Por ejemplo, si el filtro de usuario ITEM n.o 4:

402/02/2020100
402/02/202060
402/02/2020120
402/02/202080
402/02/202090
402/02/202050
402/02/202020
403/02/202010


Necesito devolver sólo 5 filas. (utilizando Order_Date y QTY como valor para la clasificación)

402/02/2020100
402/02/2020120
402/02/202080
402/02/202090
403/02/202010


¿Alguna sugerencia? He probado DAX RANK en columna calculada, sin éxito.

Gracias.

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Hola @marcura ,

Según mi opinión, desea seleccionar los datos top5 basados en columnas DATA_PEDIOD y QTDE, ¿verdad?

Puede usar la siguiente fórmula:

rankColumn =
VAR a = [ITEM]
VAR b = [DATA_PEDIDO]
VAR t1 =
    FILTER ( ALL ( 'Last5' ), Last5[ITEM] = a )
VAR t2 =
    FILTER ( ALL ( 'Last5' ), Last5[ITEM] = a && 'Last5'[DATA_PEDIDO] = b )
RETURN
    RANKX (
        t1,
        RANKX ( t1, [DATA_PEDIDO],, DESC, SKIP ) * 100
            + RANKX ( t2, [QTDE],, DESC, SKIP ) * 10,
        ,
        ASC,
        SKIP
    )

Mi visualización tiene este aspecto:

8.21.3.1.png

¿Es el resultado lo que quieres? Si tiene alguna pregunta, cargue algunas muestras de datos y la salida esperada.

Por favor, enmascarar los datos confidenciales antes de cargar.

Saludos

Eyelyn Qin

View solution in original post

9 REPLIES 9
Syndicate_Admin
Administrator
Administrator

Hola @marcura ,

Según mi opinión, desea seleccionar los datos top5 basados en columnas DATA_PEDIOD y QTDE, ¿verdad?

Puede usar la siguiente fórmula:

rankColumn =
VAR a = [ITEM]
VAR b = [DATA_PEDIDO]
VAR t1 =
    FILTER ( ALL ( 'Last5' ), Last5[ITEM] = a )
VAR t2 =
    FILTER ( ALL ( 'Last5' ), Last5[ITEM] = a && 'Last5'[DATA_PEDIDO] = b )
RETURN
    RANKX (
        t1,
        RANKX ( t1, [DATA_PEDIDO],, DESC, SKIP ) * 100
            + RANKX ( t2, [QTDE],, DESC, SKIP ) * 10,
        ,
        ASC,
        SKIP
    )

Mi visualización tiene este aspecto:

8.21.3.1.png

¿Es el resultado lo que quieres? Si tiene alguna pregunta, cargue algunas muestras de datos y la salida esperada.

Por favor, enmascarar los datos confidenciales antes de cargar.

Saludos

Eyelyn Qin

Hola, ¿puedo hacer los datos top5 basados en columnas DATA_PEDIDO, QTDE y DATA_RECEBIMENTO?
He intentado esto:

=
VAR a á vw_fato_pedido_compra[item_id]
VAR b - vw_fato_pedido_compra[Formato de fecha de pedido]
VAR c - vw_fato_pedido_compra[Formato de fecha de recepción]
VAR t1 ?
FILTRO ( TODO (vw_fato_pedido_compra), vw_fato_pedido_compra[item_id] a )
VAR á t2
FILTRO ( ALL ( vw_fato_pedido_compra ), vw_fato_pedido_compra[item_id] a && vw_fato_pedido_compra[Formato de fecha de pedido]- b )
VAR á t3
FILTRO ( TODO ( vw_fato_pedido_compra ), vw_fato_pedido_compra[item_id]
&& vw_fato_pedido_compra[Formato de fecha de pedido]- b
&& vw_fato_pedido_compra[Formato de fecha de recepción] á c )
devolución
RANKX (
T1
RANKX ( t1, [Formato de fecha de pedido], DESC, SKIP ) * 1000
+ RANKX ( t2, [pedido_compra_id],, DESC, SKIP ) * 100
+ RANKX ( t3, [pedido_compra_id],, DESC, SKIP ) * 10,
,
Asc
Saltar
)

Pero no funciona, la columna calculada para esto es igual a su respuesta..
¿Me puedes ayudar?

Thank you, worked!!

harshnathani
Community Champion
Community Champion

Hola @marcura ,

Prueba esta medida

Ranking Measure = RANKX(FILTER(ALLSELECTED('Table'),'Table'[ITEM] = MAX('Table'[ITEM])), CALCULATE(SUMX('Table',YEAR('Table'[DATA_PEDIDO])*100000 + MONTH('Table'[DATA_PEDIDO])*10000 + Day('Table'[DATA_PEDIDO]) + 'Table'[QTDE])))

1.jpg

Publique esto agregue esto como un filtro visual.

saludos

Harsh Nathani

Thanks for the measure, Unfortunately, the loading time for the table has increased so much,  I've used, this calculated column:

rankColumn =
VAR a = [ITEM]
VAR b = [DATA_PEDIDO]
VAR t1 =
    FILTER ( ALL ( 'Last5' ), Last5[ITEM] = a )
VAR t2 =
    FILTER ( ALL ( 'Last5' ), Last5[ITEM] = a && 'Last5'[DATA_PEDIDO] = b )
RETURN
    RANKX (
        t1,
        RANKX ( t1, [DATA_PEDIDO],, DESC, SKIP ) * 100
            + RANKX ( t2, [QTDE],, DESC, SKIP ) * 10,
        ,
        ASC,
        SKIP
    )

He tratado de explicar mejor, ¿puedes echar un vistazo? Gracias.

Hola @marcura ,

No muy claro.

¿Puede compartir una imagen de resolución más grande también o los datos de ejemplo en formato de texto.

Alternativamente, puede probar Filtros Visuales

1.jpg

saludos
Harsh Nathani
¿He respondido a tu pregunta? ¡Marca mi puesto como una solución! Apreciar con un Kudos!! (Haga clic en el botón Pulgares arriba)

He tratado de explicar mejor... ¿Puedes echar un vistazo? ¡Gracias!

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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