Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago
Solved

Nested IF Statement Ignoring Blanks

Hi,   Im looking for some help creating a new column to distinguish wether an Appointment was Early, Late or In Target.    I have 3 fields that are going to be used APPOINTMENT ACTUAL_START_DATE,...
  • MartynRamsden's avatar
    MartynRamsden
    6 years ago

    Hi Anonymous 

     

    If you're adding this as a calculated column, you don't need all of the MAX functions. They are essentially calculating the max value for that entire column - not what you're after!

     

    I always favour the SWITCH function rather than nested IF statements as I find it easier to read.

     

    Try adding a calculated column with the expression below:

    APPTCTGY =
    SWITCH(
        TRUE(),
        ISBLANK( FACT_Appt[APPOINTMENT ACTUAL_START_DATE] ), "EARLY",
        FACT_Appt[APPOINTMENT ACTUAL_START_DATE] < FACT_Appt[APPOINTMENT_WINDOW_START_DATE ], "EARLY",
        FACT_Appt[APPOINTMENT ACTUAL_START_DATE] > FACT_Appt[APPOINTMENT_WINDOW_END_DATE], "LATE",
        FACT_Appt[APPOINTMENT ACTUAL_START_DATE] >= FACT_Appt[APPOINTMENT_WINDOW_START_DATE]
            && FACT_Appt[APPOINTMENT ACTUAL_START_DATE]
                <= MAX(FACT_Appt[APPOINTMENT_WINDOW_END_DATE] ), "IN TARGET"
    )

     

    Best regards,
    Martyn