Estoy realizando una consulta y arroja el siguiente error:
firebird_sdbc error:
*Dynamic SQL Error
*expression evaluation not supported
*Argument for SUM in dialect 3 must be numeric
La consulta es la siguiente:
SELECT “Trabajador”, CAST( SUM( “HorasTrabajadas” ) AS NUMERIC ( 12 , 2 ) ) “TotalHoras”, CAST( SUM( “Domingos” ) AS NUMERIC ( 12 , 2 ) ) “T_Domingos”, CAST( SUM( “Festivos” ) AS NUMERIC ( 12 , 2 ) ) “T_Festivos”, CAST( SUM( “Nocturnas” ) AS NUMERIC ( 12 , 2 ) ) “T_Nocturnas” FROM “HorariosEntreFechayTrabajador” GROUP BY “HorariosEntreFechayTrabajador”.“Trabajador”
Esta está basada en otra consulta, que se ejecuta correctamente:
SELECT “VHorariosCons”.“IdTrabajador” “Trabajador”, “VHorariosCons”.“Fecha” “Dia”, “VHorariosCons”.“IdJornada” “Clave”, “VHorariosCons”.“Jornada” “TipoJornada”, “VHorariosCons”.“Entrada”, “VHorariosCons”.“Salida”, “VHorariosCons”.“HorasTrabajadas”, “VHorariosCons”.“Domingos”, “VHorariosCons”.“Festivos”, “VHorariosCons”.“Nocturnas” FROM “VHorariosCons”, “Parametros” WHERE “VHorariosCons”.“IdTrabajador” = “Parametros”.“IdTrabajador” AND “VHorariosCons”.“Fecha” >= “Parametros”.“FechaInicio” AND “VHorariosCons”.“Fecha” <= “Parametros”.“FechaFin”
CAST lo he puesto porque me daba el mismo error si lo hacía sólo con SUM.
Horas trabajadas es procede de la diferencia de horas entre Entradas y Salidas:
CAST( ( ( “Salida” - “Entrada” ) / 3600 ) AS NUMERIC ( 10 , 2 ) ) “HorasTrabajadas”
Version: 24.2.0.2 (X86_64) / LibreOffice Community
Build ID: b1fd3a6f0759c6f806568e15c957f97194bbec8f
CPU threads: 8; OS: Linux 6.6; UI render: default; VCL: kf5 (cairo+wayland)
Locale: es-ES (es_ES.UTF-8); UI: es-ES
Calc: threaded
Fedora 39 Kde Plasma