Forum Discussion

wallace_santos's avatar
wallace_santos
New Member
2 years ago

OLE DB or ODBC error: Query (26,47) The syntax is incorrect

Hi, I have this
error in OLE DB or ODBC visuals: Query (26,47) The syntax is incorrect

calculated column: 

Tempo_reparo (horas paradas) = IF(OR(F_Indisponibilidade[unavailability_reason_text]="Indisponibilidade Motorista",OR(F_Indisponibilidade[unavailability_reason_text]="Preventiva",OR(F_Indisponibilidade[unavailability_reason_text]="Frota Legal",F_Indisponibilidade[unavailability_reason_text]="Sinistro"))), BLANK(),(DATEDIFF(F_Indisponibilidade[Inicio Indisponibilidade],F_Indisponibilidade[Fim Indisponibilidade],SECOND)/3600))


Column is Time_repair (MTTR_decimal).

2 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi wallace_santos 

     

    The nested functions seem to be the source of complexity and potential error.
    Maybe you can refactor it for clarity and correctness like this:

    Tempo_reparo (horas paradas) =
    IF (
        F_Indisponibilidade[unavailability_reason_text]
            IN { "Indisponibilidade Motorista", "Preventiva", "Frota Legal", "Sinistro" },
        BLANK (),
        (
            DATEDIFF (
                F_Indisponibilidade[Inicio Indisponibilidade],
                F_Indisponibilidade[Fim Indisponibilidade],
                SECOND
            ) / 3600
        )
    )

     

    Best Regards

    Zhengdong Xu
    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.