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
JuanDtM23
Helper II
Helper II

Ayuda con nested if/and/or

Saludos! espero puedan ayudarme.
 
Tengo una tabla que contiene solicitudes de aprobación de servicios y deseo calcular la oportunidad de cada solicitud, para ello utilizo dos columnas:
la primera se llama "UBICACION_SOLICITUD" la cual contiene lostres posibles tipos de servicios:
"CONSULTA EXTERNA"
"HOSPITALARIO"
"URGENCIA"
Así mismo la segunda columna llamada "DIAS_APROBACION_" contiene el numero de dias que tardó en ser aprobada dicha solicitud.
 
Segun el tipo de solicitud de la columna "UBICACION SOLICITUD" existe un tiempo limite para que la autorizacion sea oportuna, estos son:
CONSULTA EXTERNA <= 5
HOSPITALARIO Y URGENCIA <=1
 
En ese orden de ideas deseo calcular una columna que me diga cuales registros fueron oportunos, y cuales no, lo intento de la siguiente manera pero obtengo un error de sintaxis.
 
 
Columna = if(

[UBICACION_SOLICITUD] = "CONSULTA EXTERNA" && [DIAS_APROBACION_] <=5,

"AUTORIZACIÓN OPORTUNA",

IF(

[UBICACION_APROBACION] = "HOSPITALARIO" || [UBICACION_APROBACION] = "URGENCIA" && [DIAS_APROBACION_] <> blank && [DIAS_APROBACION_] <=5,

"AUTORIZACIÓN OPORTUNA",

IF(

[DIAS_APROBACION_] = blank,

"SIN FECHA DE APROBACION",0)

)

)

Espero puedan ayudarme, De antemano muchas gracias.

 

1 ACCEPTED SOLUTION

@JuanDtM23

El problema es exactamente lo que dice el mensaje de error. Está devolviendo una mezcla de texto y números. Eso no está permitido,una columna solo puede tener un tipo de datos. El número es el cero al final. Una opción sería devolver ese cero como texto:

Columna =
IF (
    [UBICACION_SOLICITUD] = "CONSULTA EXTERNA"
        && [DIAS_APROBACION_] <= 5,
    "AUTORIZACION OPORTUNA",
    IF (
        [UBICACION_APROBACION] = "HOSPITALARIO"
            || [UBICACION_APROBACION] = "URGENCIA"
                && [DIAS_APROBACION_] <> BLANK ()
                && [DIAS_APROBACION_] <= 5,
        "HOSPITALIZACION OPORTUNA",
        IF ( [DIAS_APROBACION_] = BLANK (), "SIN FECHA DE APROBACIÓN", "0" )
    )
)

Otra opción sería no devolver nada en lugar de ese cero. La columna tendrá un espacio en blanco en esa fila:

Columna =
IF (
    [UBICACION_SOLICITUD] = "CONSULTA EXTERNA"
        && [DIAS_APROBACION_] <= 5,
    "AUTORIZACION OPORTUNA",
    IF (
        [UBICACION_APROBACION] = "HOSPITALARIO"
            || [UBICACION_APROBACION] = "URGENCIA"
                && [DIAS_APROBACION_] <> BLANK ()
                && [DIAS_APROBACION_] <= 5,
        "HOSPITALIZACION OPORTUNA",
        IF ( [DIAS_APROBACION_] = BLANK (), "SIN FECHA DE APROBACIÓN" )
    )
)

Otras opciones son posibles. La solución dependerá de lo que necesite.

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

View solution in original post

6 REPLIES 6
AlB
Super User
Super User

Hola @JuanDtM23

¿Qué dice exactamente el error?

Pruebe BLANK() en lugar de BLANK solamente

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

Hola @AlB  

El error es el siguiente:

"La sintaxis no es correcta"

JuanDtM23_0-1603260281311.png

 

y si utilizo blanck() en lugar de blank obtengo lo siguiente:

"las expresioones que producen los tipos de datos variant no se pueden usar para definir columnas calculadas"

JuanDtM23_1-1603260391070.png

 

adjunto el .Pbix: https://mutualsereps-my.sharepoint.com/:u:/g/personal/jtorres_mutualser_org/EXU70n2B2dRNh94N-LUkvkoB... 

 

@JuanDtM23

El problema es exactamente lo que dice el mensaje de error. Está devolviendo una mezcla de texto y números. Eso no está permitido,una columna solo puede tener un tipo de datos. El número es el cero al final. Una opción sería devolver ese cero como texto:

Columna =
IF (
    [UBICACION_SOLICITUD] = "CONSULTA EXTERNA"
        && [DIAS_APROBACION_] <= 5,
    "AUTORIZACION OPORTUNA",
    IF (
        [UBICACION_APROBACION] = "HOSPITALARIO"
            || [UBICACION_APROBACION] = "URGENCIA"
                && [DIAS_APROBACION_] <> BLANK ()
                && [DIAS_APROBACION_] <= 5,
        "HOSPITALIZACION OPORTUNA",
        IF ( [DIAS_APROBACION_] = BLANK (), "SIN FECHA DE APROBACIÓN", "0" )
    )
)

Otra opción sería no devolver nada en lugar de ese cero. La columna tendrá un espacio en blanco en esa fila:

Columna =
IF (
    [UBICACION_SOLICITUD] = "CONSULTA EXTERNA"
        && [DIAS_APROBACION_] <= 5,
    "AUTORIZACION OPORTUNA",
    IF (
        [UBICACION_APROBACION] = "HOSPITALARIO"
            || [UBICACION_APROBACION] = "URGENCIA"
                && [DIAS_APROBACION_] <> BLANK ()
                && [DIAS_APROBACION_] <= 5,
        "HOSPITALIZACION OPORTUNA",
        IF ( [DIAS_APROBACION_] = BLANK (), "SIN FECHA DE APROBACIÓN" )
    )
)

Otras opciones son posibles. La solución dependerá de lo que necesite.

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

@AlB  Muchas gracias!

amitchandak
Super User
Super User

@JuanDtM23 , Probar como

switch( True(),
[UBICACION_SOLICITUD] = "EXTERNAL CONSULTATION" && [DIAS_APROBACION_] <=5,  "TIMELY AUTHORIZATION",
[UBICACION_APROBACION] in {"HOSPITAL" , "URGENCIA"} && not(isblank([DIAS_APROBACION_]))&& [DIAS_APROBACION_] <=5, "TIMELY AUTHORIZATION",
isblank([DIAS_APROBACION_]), "NO APPROVAL DATE",
"0")

Proporcione sus comentarios y consejos para nuevos videos
Tutorial Series Dax Vs SQL Direct Query PBI Consejos
Apreciamos tus Felicitaciones.

@amitchandak Solo funcionó para consulta externa no funcionó con las demás.

 

A continuación comparto el .Pbix

 

https://mutualsereps-my.sharepoint.com/:u:/g/personal/jtorres_mutualser_org/EXU70n2B2dRNh94N-LUkvkoB...

 

 

 

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.