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
Syndicate_Admin
Administrator
Administrator

Columna de filtrado de selección múltiple que comprueba si contiene varios fragmentos de texto

He intentado usar esta solución, pero parece funcionar sobre una base de quirófano
https://community.powerbi.com/t5/Desktop/Dynamic-filtering-slicing-if-text-contains/td-p/425504

Me gustaría lograr lo siguiente:

Datos:

Fecha         Texto
2018-11-01   Manzanas
2018-04-03   Manzanas; Naranjas; Uvas
2018-02-01   Manzanas; Naranjas
2018-01-03 Naranjas; Uvas; Plátanos

Rebanador:

[ ] Manzanas
[ x ] Naranjas
[ x ] Uvas
[ ] Plátanos

Debe filtrar a los pedidos que incluyen naranjas y uvas, pero podría haber incluido otros artículos también:

Texto de fecha         
2018-04-03 Manzanas; Naranjas; Uvas
2018-01-03 Naranjas; Uvas; Plátanos

¡Gracias!

10 REPLIES 10
Syndicate_Admin
Administrator
Administrator

¡Hola MFelix! Me topé con su publicación mientras buscaba una medida para resolver un problema al que me enfrento en PowerBI.

De su último mensaje, ¿tiene una medida que cuando se seleccionan manzanas y naranjas de la segmentación, solo aparece la fila 01/02/2018, y cuando se seleccionan manzanas, naranjas y uvas de la segmentación, solo aparece la fila 03/04/2018?

Pero cuando solo se seleccionan manzanas en la segmentación, aparecerán las tres filas.

¡Gracias de antemano!

Syndicate_Admin
Administrator
Administrator

@JeBro ,

¿Han realizado algún cambio en las medidas o en el modelo? Acabo de descargar el archivo y todo funciona correctamente:

MFelix_0-1698050288844.png

Syndicate_Admin
Administrator
Administrator

Hola, sí, utilicé el proporcionado por usted

Syndicate_Admin
Administrator
Administrator

@JeBro

¿Estás usando el mismo ejemplo que el mío o es diferente? ¿Está utilizando el archivo de muestra que proporcioné?

Syndicate_Admin
Administrator
Administrator

Hola

Gracias, pero lo que creo es que mi resultado es 1 en lugar del 3 esperado con tu ejemplo.

Syndicate_Admin
Administrator
Administrator

El resultado esperado es de 3 filas porque estamos buscando una palabra dentro de una frase, no una coincidencia completa

Syndicate_Admin
Administrator
Administrator

Hola

Cuando solo se selecciona Apples, se espera que la tabla proporcione 3 filas como result.no resultado se muestra en la tabla. Pero en su lugar, solo aparece la fila con solo manzanas.

JeBro_1-1697657232400.png

Syndicate_Admin
Administrator
Administrator

Hay @morgtd30

(1) Crear una tabla con la selección "Manzanas"," Naranjas"," Uvas"," Plátanos".

Ailsamsft_0-1633079622468.png

(2) Añadir una segmentación de datos con [Slicer] . Y, a continuación, cree una medida para devolver la cadena de valor select .

Measure 2 = CALCULATE(CONCATENATEX(VALUES(Slicer[Slicer]),Slicer[Slicer],"; "))

Ailsamsft_1-1633079622471.png

(3) Cree una medida para juzgar si la Medida 2 en la columna [Texto] . En caso afirmando, devuelva 1 , de lo contrario devuelva 0 .

CONTAINSSTRING = IF(CONTAINSSTRING(SELECTEDVALUE('Table'[Text]),Slicer[Measure 2]),1,0)

Ailsamsft_2-1633079622473.png

(4) Coloque la medida CONTAINSSTRING en el filtro visual y establezca que CONTAINSSTRING es igual a 1 . El resultado final es el mostrado:

Ailsamsft_3-1633079622474.png

Ailsamsft_4-1633079622475.png

He adjuntado mi archivo pbix, puede consultarlo.

Saludos

Equipo de apoyo a la comunidad _ Ailsa Tao

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

Hay @Ailsa-msft ,

¿Te das cuenta de que tu solución hace que si el orden de las palabras es diferente entonces no devuelve ningún resultado?

He añadido una línea con diferentes valores y el resultado es el siguiente:

MFelix_0-1633086475782.png

¿Puede ver en su solución que le falta una línea?

Esto está sucediendo porque usando el CONCANATEX estás forzando el orden del texto usando mi solución ya que estoy mirando palabras individuales muestra el resultado:

MFelix_1-1633086718172.png

Syndicate_Admin
Administrator
Administrator

Hay @morgtd30 ,

Hice un enfoque similar a esto en esta publicación:

https://community.powerbi.com/t5/Quick-Measures-Gallery/Find-Words-on-sentence-from-another-selected...

Haciendo algún pequeño ajuste fui abble para llegar a la siguiente medida:

Find Word Formula_V2 = 
// Character that split phrase into words
VAR SplitByCharacter = " " 

// Temporary table that splits selected phrase into words
VAR Words_table =
   
        ADDCOLUMNS (
            GENERATE (
                SELECTCOLUMNS (
                    ALLSELECTED (Slicer[Slicer] ),
                    "Find_Text", Slicer[Slicer]
                ),
                VAR TokenCount =
                    PATHLENGTH ( SUBSTITUTE ( [Find_Text], SplitByCharacter, "|" ) )
                RETURN
                    GENERATESERIES ( 1, TokenCount )
            ),
            "Word", PATHITEM ( SUBSTITUTE ( [Find_Text], SplitByCharacter, "|" ), [Value] )
        )
RETURN
    IF (
// Function that returns the sum of the values of the words found in the sentance
        SUMX (
            Words_table,
            FIND (
// additonal spaces in the beginning and ending of each word allows to find the exact match, also removed the last "." so that would be specific words
                 UPPER ( [Word] ) & " ",
                 UPPER (  SELECTEDVALUE ( 'Table'[Text] ) ) &" ",
                ,
                0
            )
        ) > 0,
        1,
        BLANK ()
    )

Vea el resultado a continuación y en el archivo PBIX adjunto:

MFelix_0-1633078405524.png

Si lo desea, puede establecer la medida en el panel de filtro de visualización y establecerla en valores que no están en blanco.

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