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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
Syndicate_Admin
Administrator
Administrator

¿Cómo sumar valores en función de la combinación de selección de segmentación de usuarios?

Hola
He creado varios parámetros de Power BI que se establecen en el servicio Power BI. Estos parámetros se alimentan, a través de PQ, al informe. Estos parámetros (estos valores) se utilizan como valor objetivo.
El objeto visual de segmentación de equipos consta de tres equipos (LS, PG y AHSS). Cada equipo tiene un valor de parámetro.
Me gustaría que si el usuario selecciona los tres equipos (ya sea individualmente todos o a través de un 'seleccionar todo') en la segmentación, se sumen los valores de los parámetros de los tres equipos.
Si sólo, por ejemplo, se seleccionan los equipos LS y PS, solo se suman los valores de los parámetros LS y PS.
Si sólo, por ejemplo, se seleccionan equipos LS, solo se muestra el valor del parámetro LS.

A continuación se muestra mi intento de hacer que esto funcione.

__Deal objetivo =

VAR _selectedvalues = VALORES( '__dim_Sub-Equipo'[Sub-Equipo] )

DONDE _result =

SI(

CONTIENE( _selectedvalues, '__dim_Sub-Team'[Sub-Team], "200000000" && "200000001" & "200000002" ),

VALUES( 'LS Deal target'[LS Deal target] ) + VALUES( 'PS Deal target'[PS Deal target] ) + VALUES( 'AHSS Deal target'[AHSS Deal target] ),

SI(

CONTIENE ( _selectedvalues, '__dim_Sub-Team'[Sub-Team], "200000000" && "200000001" ),

VALUES( 'LS Deal target'[LS Deal target] ) + VALUES( 'PS Deal target'[PS Deal target] ),

SI(

CONTIENE( _selectedvalues, '__dim_Sub-Team'[Sub-Team], "200000000" && "200000002" ),

VALUES( 'LS Deal target'[LS Deal target] ) + VALUES( 'AHSS Deal target'[AHSS Deal target] ),

SI(

CONTAINS( _selectedvalues, '__dim_Sub-Team'[Sub-Team], "200000001" && "200000002" ),

VALUES( 'PS Deal target'[PS Deal target] ) + VALUES( 'AHSS Deal target'[AHSS Deal target] ),

SI(

CONTAINS( _selectedvalues, '__dim_Sub-Team'[Sub-Team], "200000000" ), //"LS"

VALUES( 'LS Deal target'[LS Deal target] ),

SI(

CONTAINS( _selectedvalues, '__dim_Sub-Team'[Sub-Team], "200000001" ), //"PS"

VALUES( 'PS Deal target'[PS Deal target] ),

SI(

CONTAINS( _selectedvalues, '__dim_Sub-Team'[Sub-Team], "200000002" ), //"AHSS"

VALUES( 'Objetivo de la oferta AHSS'[Objetivo de la oferta AHSS]),

100

)

)

)

)

)

)

)

DEVOLUCIÓN

_result + 0


Lo que me devuelven es el siguiente error:

D_PBI_0-1716222994781.png


Por favor, ¿alguien puede ayudar con este error?
Gracias.

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Hola @D_PBI

De acuerdo con la captura de pantalla del error, los tipos de parámetros de la función CONTAINS tienen un tipo de texto y un tipo verdadero/falso, que no se pueden comparar, por ejemplo, "CONTAINS( _selectedvalues, '__dim_Sub-Team'[Sub-Team], "200000000" && " 200000001" && "200000002" )", donde los dos primeros argumentos son tipos de texto y el último es un tipo verdadero/falso. Mi sugerencia actual es que debe cambiar uno de los tipos de parámetros para que la comparación funcione.

Si su problema persiste, proporcione los datos de muestra y los resultados esperados basados en los datos de muestra para que pueda ayudarlo mejor. Proporcionar datos de ejemplo en el foro de Power BI - Microsoft Fabric Community O muéstralo como capturas de pantalla. Elimine cualquier dato confidencial por adelantado.

Saludos
Yulia Xu

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

Syndicate_Admin
Administrator
Administrator

@D_PBI , creo que el problema se debe a los valores, Pruebe como

Objetivo del negocio =
VAR _selectedValues = VALORES('__dim_Sub-Equipo'[Sub-Equipo])
DEVOLUCIÓN
INTERRUPTOR(
TRUE(),
CONTIENE(_selectedValues, '__dim_Sub-Equipo'[Sub-Equipo], "2000000000") && CONTIENE(_selectedValues, '__dim_Sub-Equipo'[Sub-Equipo], "200000001") && CONTIENE(_selectedValues, '__dim_Sub-Equipo'[Sub-Equipo], "200000002"),
SUMX(values('LS Deal target'[LS Deal target]), [LS Deal target]) +
SUMX(values('PS Deal target'[PS Deal target]), [PS Deal target]) +
SUMX(values('Objetivo del acuerdo AHSS'[Objetivo del acuerdo AHSS]), [Objetivo del acuerdo AHSS]),
CONTAINS(_selectedValues, '__dim_Sub-Team'[Sub-Team], "2000000000") && CONTAINS(_selectedValues, '__dim_Sub-Team'[Sub-Team], "200000001"),
SUMX(values('LS Deal target'[LS Deal target]), [LS Deal target]) +
SUMX(values('PS Deal target'[PS Deal target]), [PS Deal target]),
CONTIENE(_selectedValues, '__dim_Sub-Equipo'[Sub-Equipo], "2000000000") && CONTIENE(_selectedValues, '__dim_Sub-Equipo'[Sub-Equipo], "200000002"),
SUMX(values('LS Deal target'[LS Deal target]), [LS Deal target]) +
SUMX(values('Objetivo del acuerdo AHSS'[Objetivo del acuerdo AHSS]), [Objetivo del acuerdo AHSS]),
CONTIENE(_selectedValues, '__dim_Sub-Equipo'[Sub-Equipo], "200000001") && CONTIENE(_selectedValues, '__dim_Sub-Equipo'[Sub-Equipo], "200000002"),
SUMX(values('PS Deal target'[PS Deal target]), [PS Deal target]) +
SUMX(values('Objetivo del acuerdo AHSS'[Objetivo del acuerdo AHSS]), [Objetivo del acuerdo AHSS]),
CONTIENE(_selectedValues, '__dim_Sub-Team'[Sub-Team], "200000000"),
SUM('LS Deal target'[LS Deal target]),
CONTAINS(_selectedValues, '__dim_Sub-Team'[Sub-Team], "200000001"),
SUM('Objetivo del acuerdo PS'[Objetivo del acuerdo PS]),
CONTIENE(_selectedValues, '__dim_Sub-Team'[Sub-Team], "200000002"),
SUM('Objetivo de la oferta AHSS'[Objetivo de la oferta AHSS]),
100 // Incumplimiento u otros casos
)

@amitchandak - Gracias. Eso funcionó como se necesitaba.
@v-xuxinyi-msft - gracias por su respuesta. He seguido @amitchandak método para resolver la necesidad.

Helpful resources

Announcements
September Hackathon Carousel

Microsoft Fabric & AI Learning Hackathon

Learn from experts, get hands-on experience, and win awesome prizes.

Top Solution Authors