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

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
tim_m15
Resolver I
Resolver I

Filtrar una tabla superior 10 filas por valor basado en la segmentación de datos

Hola querida comunidad,

Primero explico mi posición de partida y luego el gol que tengo.

He creado una nueva tabla en el conjunto de datos (captura de pantalla 1 en la parte inferior de este post), que me servirá como una segmentación en el informe en controles de selección de selección única con la función para filtrar dinámicamente mi única tabla dependiendo de la selección (captura de pantalla 2 en la parte inferior de este post).

Además, hay un "Panel de filtro de filtro" (Ejemplo de código a continuación), que selecciona cada uno de los valores (Whole, Top 10, Bottom 10) con una función SELECTEDVALUE. Puse esta medida como un filtro en la única tabla en el informe y digo "Panel de filtro es 1" para activarla.

Puede ver mi enfoque de cómo creé la medida "Filter Dashboard" en este ejemplo de código:

Filter Dashboard = 

IF (
    SELECTEDVALUE ('Filter-Table'[Value] ) = "Whole",
    1,

IF (
    SELECTEDVALUE ( 'Filter-Table'[Value]) = "Top 10",
    TOPN(10,'Bookings-Table',[Turnover-Measure],DESC)

IF (
    SELECTEDVALUE ( 'Filter-Table'[Value]) = "Bottom 10",
   TOPN(10,'Bookings-Table',[Turnover-Measure],ASC)
))))

Mi objetivo es filtrar mi tabla solo en los dos casos top 10 o inferior 10 que selecciono en controles de selección individual en mi segmentación.

Pero desafortunadamente no funciona, ¿qué estoy haciendo mal?

Gracias por su apoyo, espero sus respuestas.
Saludos
Tim

Screenshot 1Captura de pantalla 1Screenshot 2Captura de pantalla 2

1 ACCEPTED SOLUTION
MFelix
Super User
Super User

No @tim_m15,

Su codificación parece estar bien, sin embargo cree que el mejor enfoque es utilizar la medida RANKX.

Yo usaría una combinación entre switch y el rankx ver a continuación:

Filtering =
VAR Ranking_Asc =
    RANKX ( ALLSELECTED ( 'Table' ), CALCULATE ( [Total value] ),, ASC )
VAR Ranking_Desc =
    RANKX ( ALLSELECTED ( 'Table' ), CALCULATE ( [Total value] ),, DESC )
RETURN
    SWITCH (
        SELECTEDVALUE ( 'Filter-Table'[ID] ),
        1, 1,
        2, IF ( Ranking_Asc <= 10, 1 ),
        3, IF ( Ranking_Desc <= 10, 1 )
    )

Ahora simplemente filtre los 1 en su visualización:

Sorting_Hide.gif

Tenga en cuenta que ya que mi tabla es pequeña estoy usando toda la tabla en el ALLSELECTED es posible que tenga que ajustar esto a sólo algunas columnas o a una versión resumida de su tabla con el fin de tener el resultado esperado.

Esta es sólo una alternativa hay otras que pueden usar TOPN, pero belive esto puede hacer lo que necesita.

Compruebe la fijación de archivos PBIX,


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog: Power BI em Português



View solution in original post

3 REPLIES 3
MFelix
Super User
Super User

No @tim_m15,

Su codificación parece estar bien, sin embargo cree que el mejor enfoque es utilizar la medida RANKX.

Yo usaría una combinación entre switch y el rankx ver a continuación:

Filtering =
VAR Ranking_Asc =
    RANKX ( ALLSELECTED ( 'Table' ), CALCULATE ( [Total value] ),, ASC )
VAR Ranking_Desc =
    RANKX ( ALLSELECTED ( 'Table' ), CALCULATE ( [Total value] ),, DESC )
RETURN
    SWITCH (
        SELECTEDVALUE ( 'Filter-Table'[ID] ),
        1, 1,
        2, IF ( Ranking_Asc <= 10, 1 ),
        3, IF ( Ranking_Desc <= 10, 1 )
    )

Ahora simplemente filtre los 1 en su visualización:

Sorting_Hide.gif

Tenga en cuenta que ya que mi tabla es pequeña estoy usando toda la tabla en el ALLSELECTED es posible que tenga que ajustar esto a sólo algunas columnas o a una versión resumida de su tabla con el fin de tener el resultado esperado.

Esta es sólo una alternativa hay otras que pueden usar TOPN, pero belive esto puede hacer lo que necesita.

Compruebe la fijación de archivos PBIX,


Regards

Miguel Félix


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!

Check out my blog: Power BI em Português



Hola Miguel,

gracias por su respuesta detallada y por el archivo de muestra. ¡Sus soluciones funcionan bien!

Hola Miguel,

gracias por su gran respuesta detallada - también para su archivo de ejemplo, agradable!

El objetivo es ordenar los valores Superior/Inferior10 por Valor.

Veo que aplicas otra medida llamada [Valor total] en tu medida de filtro que debería hacer exactamente eso.
Sin embargo, la ordenación no se realiza mediante Value. Se ordena por el orden de las filas.
Estoy pensando en cómo se puede arreglar esto.

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

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

Top Solution Authors