Hola Sergio,
Viendo los logs de Jasper no veo ningún error.
¿en que versión de Guaraní están?
El reporte exportaciones/jasper/CertificadoAnalitico.jasper tiene varias queries dentro, las podes ver mejor en exportaciones/jasper/CertificadoAnalitico.jxrml, podes probarlas, revisa que valores están llegando para los parámetros $P{plan_version}, $P{alumno}, $P{alumno}, $P{certificado} y $P{nro_solicitud}.
SELECT
CASE (SELECT COUNT(*) FROM vw_optativas_plan op WHERE op.plan_version = $P{plan_version} AND op.elemento = p.elemento)
WHEN 0 THEN -- No es una actividad optativa
COALESCE(p.actividad_codigo || ' - ', '') || COALESCE(ep.nombre, p.actividad_nombre)
ELSE -- Es una optativa que se encuentra en una o más de una Genérica
COALESCE(get_generica_optativa_alumno(p.elemento, $P{plan_version}, $P{alumno}, 1),'') || ' - ' || COALESCE(p.actividad_codigo || ' - ', '') || COALESCE(ep.nombre, p.actividad_nombre)
END as actividad_descr,
p.fecha,
p.nota || ' (' || p.nota_descripcion || ' - ' || p.resultado_descripcion || ')' as nota_completa,
p.resultado_descripcion,
p.origen as origen,
CASE
WHEN p.tipo = 'Aprob. por Resolución' THEN 'Resol.'
WHEN p.tipo = 'Equivalencia' THEN 'Equiv.'
ELSE p.tipo
END as tipo,
p.actividad_documento,
p.folio_fisico as folio_fisico,
p.datos_origen_equivalencia,
ep.creditos
FROM f_certificado_actividades($P{alumno},'T','T','A', true, true, false) as p
JOIN sga_elementos_revision as er ON er.elemento = p.elemento
LEFT JOIN sga_elementos_plan as ep ON (ep.elemento_revision = er.elemento_revision AND ep.plan_version = $P{plan_version})
WHERE p.elemento IN (SELECT * FROM get_actividades_certificado_alumno($P{alumno}, $P{certificado}, $P{plan_version}, true, false))
ORDER BY to_date(p.fecha,'DD/MM/YYYY');
SELECT sga_suplemento_tipos.descripcion
FROM sga_certificados_otorg_anexo
JOIN sga_suplemento_tipos ON sga_certificados_otorg_anexo.tipo_suplemento = sga_suplemento_tipos.tipo_suplemento
WHERE sga_certificados_otorg_anexo.nro_solicitud = $P{nro_solicitud}
GROUP BY sga_suplemento_tipos.descripcion, sga_suplemento_tipos.orden
ORDER BY sga_suplemento_tipos.orden;
SELECT
sga_alumnos.alumno,
(SELECT descripcion FROM negocio.mdp_nacionalidades WHERe nacionalidad = vw_personas.nacionalidad) as nacionalidad,
(SELECT imagen FROM mdp_personas_foto WHERe mdp_personas.persona = mdp_personas_foto.persona) as imagen,
to_char(fecha_nacimiento, 'DD/MM/YYYY') AS fecha_nacimiento,
(SELECT vw_localidades.localidad_nombre FROM vw_localidades WHERE vw_localidades.localidad = mdp_personas.localidad_nacimiento) as lugar_nacimiento,
COALESCE(sga_alumnos.legajo, ' -- ') AS legajo,
COALESCE(ROUND(sga_certificados_otorg.promedio,2)::varchar,' ') AS promedio_con_aplazos,
COALESCE(ROUND(sga_certificados_otorg.promedio_sin_aplazos,2)::varchar,' ') AS promedio_sin_aplazos,
vw_personas.apellido || ', ' || vw_personas.nombres AS apellido_y_nombre,
vw_personas.desc_tipo_documento || ' ' || vw_personas.nro_documento AS documento_principal,
sga_certificados_otorg.certificado,
sga_certificados_otorg.plan_version,
CASE vw_personas.sexo
WHEN 'F' THEN COALESCE(sga_certificados.nombre_femenino, sga_certificados.nombre)
WHEN 'X' THEN COALESCE(sga_certificados.nombre_no_binario, sga_certificados.nombre)
ELSE sga_certificados.nombre
END AS certificado_nombre,
COALESCE(sga_certificados_otorg.nro_expediente, ' - ') AS nro_expediente,
COALESCE(to_char(sga_certificados_otorg.fecha_egreso, 'DD/MM/YYYY'), ' ') AS fecha_egreso_alumno,
f_fecha_a_texto(sga_certificados_otorg.fecha_egreso, 2) AS fecha_egreso_alumno_narrada,
to_char(CURRENT_DATE, 'DD/MM/YYYY') AS fecha_actual,
f_fecha_a_texto(CURRENT_DATE, 1) AS fecha_actual_narrada,
sga_instituciones.nombre AS nombre_institucion,
f_responsables_academicas_propuesta(sga_propuestas.propuesta) AS ra_nombre,
sga_responsables_academicas.localidad AS ra_localidad,
COALESCE(mug_localidades.nombre, ' -- ') AS localidad_nombre,
sga_propuestas.nombre AS propuesta_nombre,
'(' || sga_propuestas.codigo || ') ' || sga_propuestas.nombre AS propuesta_nombre_completo,
sga_propuestas.nombre_abreviado AS propuesta_nombre_abreviado,
sga_propuestas.propuesta_tipo,
sga_planes.codigo AS plan_codigo,
sga_planes.nombre AS plan_nombre,
'(' || sga_planes.codigo || ') ' || COALESCE(sga_planes.nombre, ' ') AS plan_nombre_completo,
COALESCE(sga_certificados_otorg.duracion_real_en_meses::VARCHAR, ' ') AS duracion_en_meses,
COALESCE(resol_plan.documento_numero, ' ') AS resolucion_plan_nro,
COALESCE(to_char(resol_plan.fecha, 'DD/MM/YYYY'), ' ') AS resolucion_plan_fecha,
COALESCE(get_titulo_resolucion(sga_certificados_otorg.alumno, sga_certificados_otorg.plan_version, sga_certificados_otorg.certificado, sga_certificados_otorg.fecha_egreso, 'MINISTERIAL'),' -- ') as nro_resolucion_ministerial,
COALESCE(get_titulo_resolucion(sga_certificados_otorg.alumno, sga_certificados_otorg.plan_version, sga_certificados_otorg.certificado, sga_certificados_otorg.fecha_egreso, 'CONEAU'),' -- ') as nro_resolucion_coneau,
COALESCE(get_titulo_institucion_habilitante(sga_alumnos.alumno, 1), ' -- ') AS titulo_anterior,
COALESCE(get_titulo_institucion_habilitante(sga_alumnos.alumno, 2), ' -- ') AS institucion_anterior,
CASE get_titulo_institucion_habilitante(sga_alumnos.alumno, 3)
WHEN 'E' THEN TRUE
WHEN 'N' THEN FALSE
END AS institucion_extranjera
FROM sga_certificados_otorg
JOIN sga_planes_certificados ON (sga_planes_certificados.certificado = sga_certificados_otorg.certificado AND
sga_planes_certificados.plan_version = sga_certificados_otorg.plan_version)
JOIN sga_certificados ON sga_certificados.certificado = sga_certificados_otorg.certificado
JOIN sga_alumnos ON sga_alumnos.alumno = sga_certificados_otorg.alumno
JOIN vw_personas ON vw_personas.persona = sga_alumnos.persona
JOIN mdp_personas ON mdp_personas.persona = vw_personas.persona
JOIN sga_planes_versiones ON sga_planes_versiones.plan_version = sga_certificados_otorg.plan_version
JOIN sga_planes ON sga_planes.plan = sga_planes_versiones.plan
JOIN sga_propuestas ON sga_propuestas.propuesta = sga_planes.propuesta
JOIN sga_responsables_academicas ON true
JOIN sga_instituciones ON sga_instituciones.institucion = sga_responsables_academicas.institucion
LEFT JOIN sga_documentos as resol_plan ON resol_plan.documento = sga_planes.documento_alta
LEFT JOIN mug_localidades ON sga_responsables_academicas.localidad = mug_localidades.localidad
WHERE sga_certificados_otorg.nro_solicitud = $P{nro_solicitud}
AND sga_responsables_academicas.responsable_academica = get_ra_inst_araucano_propuesta(sga_propuestas.propuesta, 'RA');
saludos.
2