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
E__
Helper III
Helper III

Extracción de SELECTEDVALUE() de dos segmentaciones

Hola

Estoy tratando de hacer una medida que devuelve 1 para todas las visitas que tienen un rendimiento relacionado, digamos A, pero no tienen otro rendimiento cierto, digamos B. Los datos, en una versión simplificada, es el siguiente:

VISIT_ID PRESTATION

1 A

1 B

1 C

2 A

2 C

3 B

3 C

Así que en este caso, me gustaría volver 1 para la visita 2, pero no para las visitas 1 y 3.

La medida para esto es sencilla, yo usaría:

Medidas ?
VAR Visita a MIN(Tabla[VISIT_ID])
VAR PresA - CALCULATE(COUNTROWS(Table), 'Table'[Prestation] á "A", 'Table'[VISIT_ID] - Visita)
Var PresB - CALCULATE(COUNTROWS(Table), 'Table'[Prestation] á "B", 'Table'[VISIT_ID] - Visita)
devolución
IF(PresA á 1 && PresB a 0 , 1 , 0)
Hasta ahora tan bueno, pero me gustaría hacer esto dinámico, usando dos segmentaciones para seleccionar los valores para A y B. ¿Hay alguna manera de utilizar SELECTEDVALUE() en combinación con dos segmentaciones debanca, extrayendo el valor de una segmentación de datos para la primera variable (PresA) y el valor de la otra segmentación para la segunda variable (PresB)?
Gracias de antemano!
Mejor
Eva
2 ACCEPTED SOLUTIONS
Greg_Deckler
Super User
Super User

@E__ Necesitará 2 tablas de segmentación de datos desconectadas para ejecutar las segmentaciones de datos. A continuación, puede utilizar SELECTEDVALUE para capturar el valor seleccionado.

Puede crear estas tablas de segmentación de datos mediante:

Tabla de segmentación 1 - DISTINCT (SELECTCOLUMNS ('Tabla',PRESTATION')

Tabla de segmentación 2 - DISTINCT (SELECTCOLUMNS ('Tabla',PRESTATION')

Después de crearlas, vaya a la vista de modelo y asegúrese de que se quitan las relaciones con estas tablas


@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...

View solution in original post

PaulDBrown
Community Champion
Community Champion

@E__

Siguiendo con @Greg_Deckler sugerencia, si desea permitir una selección múltiple en cualquiera de las segmentaciones, puede hacer lo siguiente.

Primero el modelo:

Model.JPG

(Sólo FYI, esto también funcionará si usted tiene Slicer 1 relacionado con su tabla de hechos en una relación de uno a varios)

A continuación, cree una medida de la siguiente manera:

Countrows non-coinciding "Prestations" = 
VAR Pres1 = CALCULATETABLE(VALUES('Fact'[VISIT_ID]), 
            TREATAS(VALUES('Slicer 1'[Prestation1]), 'Fact'[ PRESTATION]))
VAR Pres2 = CALCULATETABLE(VALUES('Fact'[VISIT_ID]), 
            TREATAS(VALUES('Slicer 2'[Prestation2]), 'Fact'[ PRESTATION]))
RETURN
COUNTROWS(EXCEPT(Pres1, Pres2))

Y obtendrás esto:

Multi select slicers Result.JPG

He adjuntado el archivo PBIX para su referencia.





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






View solution in original post

4 REPLIES 4
E__
Helper III
Helper III

Gracias a ambos por sus sugerencias! Esto definitivamente resolverá mi problema.

Mejor

Eva

PaulDBrown
Community Champion
Community Champion

@E__

Siguiendo con @Greg_Deckler sugerencia, si desea permitir una selección múltiple en cualquiera de las segmentaciones, puede hacer lo siguiente.

Primero el modelo:

Model.JPG

(Sólo FYI, esto también funcionará si usted tiene Slicer 1 relacionado con su tabla de hechos en una relación de uno a varios)

A continuación, cree una medida de la siguiente manera:

Countrows non-coinciding "Prestations" = 
VAR Pres1 = CALCULATETABLE(VALUES('Fact'[VISIT_ID]), 
            TREATAS(VALUES('Slicer 1'[Prestation1]), 'Fact'[ PRESTATION]))
VAR Pres2 = CALCULATETABLE(VALUES('Fact'[VISIT_ID]), 
            TREATAS(VALUES('Slicer 2'[Prestation2]), 'Fact'[ PRESTATION]))
RETURN
COUNTROWS(EXCEPT(Pres1, Pres2))

Y obtendrás esto:

Multi select slicers Result.JPG

He adjuntado el archivo PBIX para su referencia.





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






Greg_Deckler
Super User
Super User

@E__ Necesitará 2 tablas de segmentación de datos desconectadas para ejecutar las segmentaciones de datos. A continuación, puede utilizar SELECTEDVALUE para capturar el valor seleccionado.

Puede crear estas tablas de segmentación de datos mediante:

Tabla de segmentación 1 - DISTINCT (SELECTCOLUMNS ('Tabla',PRESTATION')

Tabla de segmentación 2 - DISTINCT (SELECTCOLUMNS ('Tabla',PRESTATION')

Después de crearlas, vaya a la vista de modelo y asegúrese de que se quitan las relaciones con estas tablas


@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...

Hola @Greg_Deckler,

Al tratar de implementar la solución, no parece estar funcionando como yo esperaría. Reescribí mi medida de la siguiente manera:

Medidas ?
VAR Visita a MIN(Tabla[VISIT_ID])
Pres1 de VAR SELECTEDVALUE('Incl Benefits'[INCL Benefit))
VAR Pres2 - SELECTEDVALUE('Excl' Beneficios [Beneficio EXCL])
VAR AantalPres1 - CALCULATE (COUNTROWS (Tabla), FILTER (ALL(Benefits), 'Benefits'[Benefit] - Pres1), Table[VISIT_ID] - Visit)
VAR AantalPres2 - CALCULATE (COUNTROWS (Tabla), FILTER (ALL(Benefits), 'Benefits'[Benefit] - Pres2), Table[VISIT_ID] - Visit)
devolución
IF(AantalPres1 >- 1 && AantalPres2 < 1 , 1 , 0)
Cuando sustituyo las fórmulas para Pres1 y Pres2 con las cadenas literales para las preconfiguraciones, sigue funcionando, pero cuando uso SELECTEDVALUE (o una variante con DISTINCT, usando 'Prestations'[Prestation] IN Pres1), devuelve un resultado completamente incorrecto. ¿Puedes ayudarme a encontrar dónde me equivoqué? Cuando devuelvo Pres1 o Pres2 como resultado de la medida, devuelve los valores seleccionados correctos, por lo que realmente no sé dónde me voy mal.
Gracias de antemano!
Mejor
Eva

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.