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

¿Cómo devolver Hit and Miss filtrando 3 columnas?

¡Hola! Necesito ayuda para determinar si alcanzamos o fallamos el objetivo, tengo una columna para (1) País, (2) Fecha de vencimiento, (3) Fecha de envío.
Tengo que satisfacer a 3 países primero. Esto es lo que utilicé:

IF ( SELECTEDVALUE('On Time Renewal'[Country]) = "PH", 'On Time Renewal'[Fecha de caducidad de la licencia] - 'On Time Renewal'[Fecha de envío real] >= 0, "Hit",
IF ( SELECTEDVALUE('On Time Renewal'[País]) = "PH", 'On Time Renewal'[Fecha de caducidad de la licencia] - 'On Time Renewal'[Fecha de envío real] < 1, "Miss",
IF ( SELECTEDVALUE('On Time Renewal'[Country]) = "IN", 'On Time Renewal'[Fecha de caducidad de la licencia] - 'On Time Renewal'[Fecha de envío real] < 1, "Miss")))))))
Anteriormente, estoy probando esta fórmula, pero es demasiado complicada:

if( isblank ('On Time Renewal'[Fecha de caducidad de la licencia]), en blanco (),

if ('On Time Renewal'[Fecha de caducidad de la licencia] && 'On Time Renewal'[País] = "PH" && 'On Time Renewal'[(Working) Type of Registration] = "Renewal" && 'On Time Renewal'[Fecha de envío real] && 'On Time Renewal'[Fecha de caducidad de la licencia] - 'On Time Renewal'[Fecha de envío real] >= 0, "Hit",

if ('On Time Renewal'[Fecha de caducidad de la licencia] && 'On Time Renewal'[País] = "PH" && 'On Time Renewal'[(Working) Type of Registration] = "Renewal" && 'On Time Renewal'[Fecha de envío real] && 'On Time Renewal'[Fecha de caducidad de la licencia] - 'On Time Renewal'[On Time Renewal' [Fecha de envío real] < 1, "Miss",

if ('On Time Renewal'[Fecha de caducidad de la licencia] && 'On Time Renewal'[País] = "IN" && 'On Time Renewal'[(Working) Type of Registration] = "Renewal" && 'On Time Renewal'[Fecha de envío real] && 'On Time Renewal'[Fecha de caducidad de la licencia] - 'On Time Renewal'[On Time Renewal' [Fecha de envío real] > = 270, "Hit",

if ('On Time Renewal'[Fecha de caducidad de la licencia] && 'On Time Renewal'[País] = "IN" && 'On Time Renewal'[(Working) Type of Registration] = "Renewal" && 'On Time Renewal'[Fecha de envío real] && 'On Time Renewal'[Fecha de caducidad de la licencia] - 'On Time Renewal'[Fecha de envío real] < 270, "Miss",

if ('On Time Renewal'[Fecha de caducidad de la licencia] && 'On Time Renewal'[País] = "TH" && 'On Time Renewal'[(Working) Type of Registration] = "Renewal" && 'On Time Renewal'[Real Pre-Sub Date] && 'On Time Renewal' [Fecha de aprobación real] && 'On Time Renewal'[Fecha de aprobación real].[ Fecha] > 'Renovación a tiempo'[Fecha de caducidad de la licencia], "Señorita",

if ('On Time Renewal'[Fecha de caducidad de la licencia] && 'On Time Renewal'[País] = "TH" && 'On Time Renewal'[(Working) Type of Registration] = "Renewal" && 'On Time Renewal'[Real Pre-Sub Date] && ISBLANK('On Time Renewal'[Fecha de aprobación real]) && TODAY() > 'On Time Renewal'[Fecha de caducidad de la licencia], "Miss",

if ('On Time Renewal'[Fecha de caducidad de la licencia] && 'On Time Renewal'[País] = "TH" && 'On Time Renewal'[(Working) Type of Registration] = "Renewal" && 'On Time Renewal'[Real Pre-Sub Date] && 'On Time Renewal'[Real Pre-Sub Date] <= 'On Time Renewal'[Fecha de caducidad de la licencia], "Hit",

if ('On Time Renewal'[Fecha de caducidad de la licencia] && 'On Time Renewal'[País] = "TH" && 'On Time Renewal'[(Working) Tipo de registro] = "Renewal" && ISBLANK('On Time Renewal'[Real Pre-Sub Date]) && 'On Time Renewal'[Fecha de aprobación real] && 'On Time Renewal'[&& 'On Time Renewal'[Fecha de aprobación real] <= 'On Time Renewal'[Fecha de caducidad de la licencia], "Hit",

if ('On Time Renewal'[Fecha de caducidad de la licencia] && 'On Time Renewal'[(Working) Type of Registration] = "Renewal" && 'On Time Renewal'[Fecha de aprobación real] && 'On Time Renewal'[Fecha de aprobación real] > 'On Time Renewal'[Fecha de caducidad de la licencia], "Miss",

if ('On Time Renewal'[Fecha de caducidad de la licencia] && 'On Time Renewal'[(Working) Type of Registration] = "Renewal" && ISBLANK('On Time Renewal'[Fecha de aprobación real]) && TODAY() > 'On Time Renewal'[Fecha de caducidad de la licencia], "Miss",

if ('On Time Renewal'[Fecha de caducidad de la licencia] && 'On Time Renewal'[(Working) Type of Registration] = "Renewal" && 'On Time Renewal'[Fecha de aprobación real] <= 'On Time Renewal'[Fecha de caducidad de la licencia], "Hit")))))))))

Espero que puedas ayudarme con esto.

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

@katerinepr ,

Pruebe la fórmula como la siguiente:

Renewal =
IF (
    'On Time Renewal'[License Expiry Date] = BLANK (),
    BLANK (),
    IF (
        'On Time Renewal'[Country]
            IN { "PH", "IN", "TH" }
            && 'On Time Renewal'[License Expiry Date] <= 'On Time Renewal'[Actual Submission Date],
        "Miss",
        IF (
            'On Time Renewal'[Country] = "PH"
                && 'On Time Renewal'[License Expiry Date] > 'On Time Renewal'[Actual Submission Date],
            "Hit",
            "Other"
        )
    )
)

O

Renewal =
IF (
    ISBLANK ( 'On Time Renewal'[License Expiry Date] ),
    BLANK (),
    SWITCH (
        TRUE (),
        'On Time Renewal'[Country]
            IN { "PH", "IN", "TH" }
            && 'On Time Renewal'[License Expiry Date] <= 'On Time Renewal'[Actual Submission Date], "Miss",
        'On Time Renewal'[Country] = "PH"
            && 'On Time Renewal'[License Expiry Date] > 'On Time Renewal'[Actual Submission Date], "Hit",
        "Other"
    )
)

Si el problema aún no se resuelve, proporcione información detallada sobre el error y hágamelo saber de inmediato. Esperamos sus comentarios.


Saludos
Henrio


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

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

@katerinepr ,

Pruebe la fórmula como la siguiente:

Renewal =
IF (
    'On Time Renewal'[License Expiry Date] = BLANK (),
    BLANK (),
    IF (
        'On Time Renewal'[Country]
            IN { "PH", "IN", "TH" }
            && 'On Time Renewal'[License Expiry Date] <= 'On Time Renewal'[Actual Submission Date],
        "Miss",
        IF (
            'On Time Renewal'[Country] = "PH"
                && 'On Time Renewal'[License Expiry Date] > 'On Time Renewal'[Actual Submission Date],
            "Hit",
            "Other"
        )
    )
)

O

Renewal =
IF (
    ISBLANK ( 'On Time Renewal'[License Expiry Date] ),
    BLANK (),
    SWITCH (
        TRUE (),
        'On Time Renewal'[Country]
            IN { "PH", "IN", "TH" }
            && 'On Time Renewal'[License Expiry Date] <= 'On Time Renewal'[Actual Submission Date], "Miss",
        'On Time Renewal'[Country] = "PH"
            && 'On Time Renewal'[License Expiry Date] > 'On Time Renewal'[Actual Submission Date], "Hit",
        "Other"
    )
)

Si el problema aún no se resuelve, proporcione información detallada sobre el error y hágamelo saber de inmediato. Esperamos sus comentarios.


Saludos
Henrio


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

¡Hola! ¡Gracias por esto! He usado esta fórmula pero hice algunas ediciones en mis datos, eliminé las relaciones en la fecha y la devolví cuando DAX está aceptando la fórmula.

Syndicate_Admin
Administrator
Administrator

Hola, gracias por tu respuesta. Sin embargo, me estoy encontrando con un error, dice que 'Switch' no admite la comparación de valores de tipo True / False con valores de texto de tipo ". Cambié todo el tipo hasta la fecha y agregué isblank.

Renovación = IF( ISBLANK('On Time Renewal'[Fecha de caducidad de la licencia]), en blanco(),
Switch( True() ,
'On Time Renewal'[País] en {"PH","IN","TH"} && 'On Time Renewal'[Fecha de caducidad de la licencia] <= 'On Time Renewal'[Fecha de envío real] , "Miss" ,
'On Time Renewal'[País] = "PH" , 'On Time Renewal'[Fecha de caducidad de la licencia] > 'On Time Renewal'[Fecha de envío real] ,"Hit" ,
"Otros"
))

Muchas gracias de antemano por su ayuda.
Syndicate_Admin
Administrator
Administrator

@katerinepr , Necesita crear una nueva columna como

Switch( True() ,
'On Time Renewal'[País] en {"PH","IN"} && 'On Time Renewal'[Fecha de caducidad de la licencia] <= 'On Time Renewal'[Fecha de envío real] , "Miss" ,
'On Time Renewal'[País] = "PH" , 'On Time Renewal'[Fecha de caducidad de la licencia] > 'On Time Renewal'[Fecha de envío real] ,"Hit" ,
"Otros"
)

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.