Forum Discussion
Anonymous
3 years agoNot applicable
Error en formula DAX
Hola agradecería la ayuda, tengo la siguiente formula y me sale el error de "La expresión hace referencia a varias columnas. No se pueden convertir varias columnas a un valor escalar.", me pueden ayudar porfa. Gracias
Medida 2 =
VAR Mujeres= Filter('CÁNCER','CÁNCER'[Órganos] IN { "Mama", "Cervix" })
var Hombres= filter('CÁNCER','CÁNCER'[Órganos] IN { "Prostata" })
Var DemasOrganos = filter('CÁNCER','CÁNCER'[Órganos] IN { "Otros", "Estomago","Colorrectal","Pulmón","Melanoma","Hodgkin","No Hodgkin","Leucemia linfoide aguda","Leucemia mieloide aguda"})
var PoblacionMujeres = if(mujeres, SUMX(FILTER('CÁNCER BD AFILIADOS ACTIVOS','CÁNCER BD AFILIADOS ACTIVOS'=[Sexo]= "F"),'CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados]))
var PoblacionHombres = if(Hombres, SUMX(FILTER('CÁNCER BD AFILIADOS ACTIVOS','CÁNCER BD AFILIADOS ACTIVOS'=[Sexo]= "M"),'CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados]))
var PoblacionTotal = if(DemasOrganos, SUM('CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados]))
Var Incidencia2= IF(Mujeres,count('CÁNCER'[TieneTNM])/PoblacionMujeres*100000,if(Hombres,count('CÁNCER'[TieneTNM])/PoblacionHombres*100000,if(DemasOrganos,count('CÁNCER'[TieneTNM])/PoblacionTotal*100000)))
RETURN
Incidencia2
Anonymous
Please tryMedida 2 = VAR Mujeres = FILTER ( 'CÁNCER', 'CÁNCER'[Órganos] IN { "Mama", "Cervix" } ) VAR Hombres = FILTER ( 'CÁNCER', 'CÁNCER'[Órganos] IN { "Prostata" } ) VAR DemasOrganos = FILTER ( 'CÁNCER', 'CÁNCER'[Órganos] IN { "Otros", "Estomago", "Colorrectal", "Pulmón", "Melanoma", "Hodgkin", "No Hodgkin", "Leucemia linfoide aguda", "Leucemia mieloide aguda" } ) VAR PoblacionMujeres = IF ( NOT ISEMPTY ( mujeres ), SUMX ( FILTER ( 'CÁNCER BD AFILIADOS ACTIVOS', 'CÁNCER BD AFILIADOS ACTIVOS'[Sexo] = "F" ), 'CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados] ) ) VAR PoblacionHombres = IF ( NOT ISEMPTY ( Hombres ), SUMX ( FILTER ( 'CÁNCER BD AFILIADOS ACTIVOS', 'CÁNCER BD AFILIADOS ACTIVOS'[Sexo] = "M" ), 'CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados] ) ) VAR PoblacionTotal = IF ( NOT ISEMPTY ( DemasOrganos ), SUM ( 'CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados] ) ) VAR Incidencia2 = IF ( NOT ISEMPTY ( Mujeres ), COUNT ( 'CÁNCER'[TieneTNM] ) / PoblacionMujeres * 100000, IF ( NOT ISEMPTY ( Hombres ), COUNT ( 'CÁNCER'[TieneTNM] ) / PoblacionHombres * 100000, IF ( NOT ISEMPTY ( DemasOrganos ), COUNT ( 'CÁNCER'[TieneTNM] ) / PoblacionTotal * 100000 ) ) ) RETURN Incidencia2
9 Replies
- djurecicSuper User
Hola Anonymous ,
Puede intentar crear medidas separadas para cada variable.
Entonces puedes ver cuál está causando el problema.
(Usando Google Translate)
- tamerj1Community Champion
Hi Anonymous
It is not allowed to place a table as an IF statement argument. The first argument need to be boolean (TRUE/FALSE) argument. Do you mean to say:
Medida 2 = VAR Mujeres = FILTER ( 'CÁNCER', 'CÁNCER'[Órganos] IN { "Mama", "Cervix" } ) VAR Hombres = FILTER ( 'CÁNCER', 'CÁNCER'[Órganos] IN { "Prostata" } ) VAR DemasOrganos = FILTER ( 'CÁNCER', 'CÁNCER'[Órganos] IN { "Otros", "Estomago", "Colorrectal", "Pulmón", "Melanoma", "Hodgkin", "No Hodgkin", "Leucemia linfoide aguda", "Leucemia mieloide aguda" } ) VAR PoblacionMujeres = IF ( NOT ISEMPTY ( mujeres ), SUMX ( FILTER ( 'CÁNCER BD AFILIADOS ACTIVOS', 'CÁNCER BD AFILIADOS ACTIVOS' = [Sexo] = "F" ), 'CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados] ) ) VAR PoblacionHombres = IF ( NOT ISEMPTY ( Hombres ), SUMX ( FILTER ( 'CÁNCER BD AFILIADOS ACTIVOS', 'CÁNCER BD AFILIADOS ACTIVOS' = [Sexo] = "M" ), 'CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados] ) ) VAR PoblacionTotal = IF ( NOT ISEMPTY ( DemasOrganos ), SUM ( 'CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados] ) ) VAR Incidencia2 = IF ( NOT ISEMPTY ( Mujeres ), COUNT ( 'CÁNCER'[TieneTNM] ) / PoblacionMujeres * 100000, IF ( NOT ISEMPTY ( Hombres ), COUNT ( 'CÁNCER'[TieneTNM] ) / PoblacionHombres * 100000, IF ( NOT ISEMPTY ( DemasOrganos ), COUNT ( 'CÁNCER'[TieneTNM] ) / PoblacionTotal * 100000 ) ) ) RETURN Incidencia2- AnonymousNot applicable
Hola, acabo de ejecutar la formula que me pasaste y sigue saliendo el mismo error de "La expresión hace referencia a varias columnas. No se pueden convertir varias columnas a un valor escalar". Entiendo que colocaste "NOT ISEMPTY" después del IF, pero aún así no me da. Agradezco si me puedes seguir ayudando
- tamerj1Community Champion
Anonymous
Please tryMedida 2 = VAR Mujeres = FILTER ( 'CÁNCER', 'CÁNCER'[Órganos] IN { "Mama", "Cervix" } ) VAR Hombres = FILTER ( 'CÁNCER', 'CÁNCER'[Órganos] IN { "Prostata" } ) VAR DemasOrganos = FILTER ( 'CÁNCER', 'CÁNCER'[Órganos] IN { "Otros", "Estomago", "Colorrectal", "Pulmón", "Melanoma", "Hodgkin", "No Hodgkin", "Leucemia linfoide aguda", "Leucemia mieloide aguda" } ) VAR PoblacionMujeres = IF ( NOT ISEMPTY ( mujeres ), SUMX ( FILTER ( 'CÁNCER BD AFILIADOS ACTIVOS', 'CÁNCER BD AFILIADOS ACTIVOS'[Sexo] = "F" ), 'CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados] ) ) VAR PoblacionHombres = IF ( NOT ISEMPTY ( Hombres ), SUMX ( FILTER ( 'CÁNCER BD AFILIADOS ACTIVOS', 'CÁNCER BD AFILIADOS ACTIVOS'[Sexo] = "M" ), 'CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados] ) ) VAR PoblacionTotal = IF ( NOT ISEMPTY ( DemasOrganos ), SUM ( 'CÁNCER BD AFILIADOS ACTIVOS'[ Total Afiliados] ) ) VAR Incidencia2 = IF ( NOT ISEMPTY ( Mujeres ), COUNT ( 'CÁNCER'[TieneTNM] ) / PoblacionMujeres * 100000, IF ( NOT ISEMPTY ( Hombres ), COUNT ( 'CÁNCER'[TieneTNM] ) / PoblacionHombres * 100000, IF ( NOT ISEMPTY ( DemasOrganos ), COUNT ( 'CÁNCER'[TieneTNM] ) / PoblacionTotal * 100000 ) ) ) RETURN Incidencia2