Jasper, Certificado en blanco

Estimados, estamos en la versión 3.18.1 y tenemos problemas con los certificados (no todos, solo algunos). Por ejemplo el certificado de “Constancia de Titulo en Tramite”, no tiene ninguna personalización. Adjunto la salida de los logs.

Me fije las versiones de java, php, etc… y por lo que veo son las correctas.

Lo más raro es que algunos de los certificados en testing funcionan bien, pero en produccion salen blancos.

Muchas gracias


sistema.zip (3.77 KB)

Hola Sergio,

Fíjate que algunas constancias tienen queries dentro del Jasper, por ejemplo “Constancia de Titulo en Tramite” exportaciones/jasper/ConstanciaTituloTramite.jrxml ejecuta la siguiente query para armar el PDF:


SELECT
	vw_personas.apellido || ' ' || vw_personas.nombres as apellido_y_nombre,
	vw_personas.desc_tipo_documento || ' ' || vw_personas.nro_documento as documento_principal,
	to_char(mdp_personas.fecha_nacimiento,'DD/MM/YYYY') as fecha_nacimiento_alumno,
	CASE vw_personas.sexo
		WHEN 'M' THEN sga_certificados.nombre
		WHEN 'F' THEN sga_certificados.nombre_femenino
	END AS certificado_nombre,
	COALESCE(sga_certificados_otorg.nro_expediente, ' - ') AS nro_expediente,
	to_char(sga_certificados_otorg.fecha_egreso, 'DD/MM/YYYY') as fecha_egreso_alumno,
	mug_localidades.nombre as localidad_nombre,
	mug_provincias.nombre as provincia_nombre,
	mug_paises.nombre as pais_nombre,
	sga_instituciones.nombre as nombre_institucion,
	f_responsables_academicas_propuesta(sga_alumnos.propuesta) as nombre_ra
FROM
	sga_certificados_otorg,
	sga_certificados,
	sga_alumnos,
	vw_personas,
	mdp_personas,
	sga_ubicaciones,
	sga_instituciones,
	mug_localidades,
    mug_dptos_partidos,
	mug_provincias,
    mug_paises
WHERE sga_certificados_otorg.nro_solicitud = $P{nro_solicitud}
	AND sga_certificados_otorg.certificado = sga_certificados.certificado
	AND sga_alumnos.alumno = sga_certificados_otorg.alumno
	AND sga_alumnos.persona = vw_personas.persona
	AND vw_personas.persona = mdp_personas.persona
	AND sga_alumnos.ubicacion = sga_ubicaciones.ubicacion
	AND sga_ubicaciones.localidad = mug_localidades.localidad
    AND mug_localidades.dpto_partido = mug_dptos_partidos.dpto_partido
	AND mug_dptos_partidos.provincia = mug_provincias.provincia
	AND mug_provincias.pais = mug_paises.pais
	AND sga_instituciones.institucion = get_ra_inst_araucano_propuesta(sga_alumnos.propuesta, 'IG')

$P{nro_solicitud} reemplazalo por el nro_solicitud de la tabla sga_certificados_otorg, y fíjate si la query da algún error.

También podes ver los logs de Apache y de Jasper para ver que esta pasando, quizás esta faltando enviar parámetros al Jasper.

saludos.
2

Probe con el nro de solicitud: 2640

SELECT
	vw_personas.apellido || ' ' || vw_personas.nombres as apellido_y_nombre,
	vw_personas.desc_tipo_documento || ' ' || vw_personas.nro_documento as documento_principal,
	to_char(mdp_personas.fecha_nacimiento,'DD/MM/YYYY') as fecha_nacimiento_alumno,
	CASE vw_personas.sexo
		WHEN 'M' THEN sga_certificados.nombre
		WHEN 'F' THEN sga_certificados.nombre_femenino
	END AS certificado_nombre,
	COALESCE(sga_certificados_otorg.nro_expediente, ' - ') AS nro_expediente,
	to_char(sga_certificados_otorg.fecha_egreso, 'DD/MM/YYYY') as fecha_egreso_alumno,
	mug_localidades.nombre as localidad_nombre,
	mug_provincias.nombre as provincia_nombre,
	mug_paises.nombre as pais_nombre,
	sga_instituciones.nombre as nombre_institucion,
	f_responsables_academicas_propuesta(sga_alumnos.propuesta) as nombre_ra
FROM
	sga_certificados_otorg,
	sga_certificados,
	sga_alumnos,
	vw_personas,
	mdp_personas,
	sga_ubicaciones,
	sga_instituciones,
	mug_localidades,
    mug_dptos_partidos,
	mug_provincias,
    mug_paises
WHERE sga_certificados_otorg.nro_solicitud = 2640
	AND sga_certificados_otorg.certificado = sga_certificados.certificado
	AND sga_alumnos.alumno = sga_certificados_otorg.alumno
	AND sga_alumnos.persona = vw_personas.persona
	AND vw_personas.persona = mdp_personas.persona
	AND sga_alumnos.ubicacion = sga_ubicaciones.ubicacion
	AND sga_ubicaciones.localidad = mug_localidades.localidad
    AND mug_localidades.dpto_partido = mug_dptos_partidos.dpto_partido
	AND mug_dptos_partidos.provincia = mug_provincias.provincia
	AND mug_provincias.pais = mug_paises.pais
	AND sga_instituciones.institucion = get_ra_inst_araucano_propuesta(sga_alumnos.propuesta, 'IG')

Y me tiro el siguiente error:


ERROR:  no existe la función get_ra_inst_araucano_propuesta(integer, unknown)
LÍNEA 38: AND sga_instituciones.institucion = get_ra_inst_araucano_pro...


Igualmente esa funcion no me aparece en “CertificadoAnalitico.jrxml”

Estas son las consultas dentro del certificado:


			<![CDATA[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) 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 p.fecha]]>


			<![CDATA[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]]>


		<![CDATA[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 'M' THEN sga_certificados.nombre
						WHEN 'F' THEN COALESCE(sga_certificados.nombre_femenino, 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 =
												(SELECT sga_propuestas_ra.responsable_academica
												 FROM sga_propuestas_ra
												 WHERE sga_propuestas_ra.propuesta = sga_propuestas.propuesta
												 ORDER BY sga_propuestas_ra.responsable_academica
												 LIMIT 1)]]>

Adjunto archivo


CertificadoAnalitico.zip (7.13 KB)

Perdon, esta mirando otro certificado. Pero igual mente en “ConstanciaTituloTramite.jrxml” tampoco aparece.


		<![CDATA[SELECT
	vw_personas.apellido || ' ' || vw_personas.nombres as apellido_y_nombre,
	vw_personas.desc_tipo_documento || ' ' || vw_personas.nro_documento as documento_principal,
	to_char(mdp_personas.fecha_nacimiento,'DD/MM/YYYY') as fecha_nacimiento_alumno,
	CASE vw_personas.sexo
		WHEN 'M' THEN sga_certificados.nombre
		WHEN 'F' THEN sga_certificados.nombre_femenino
	END AS certificado_nombre,
	COALESCE(sga_certificados_otorg.nro_expediente, ' - ') AS nro_expediente,
	to_char(sga_certificados_otorg.fecha_egreso, 'DD/MM/YYYY') as fecha_egreso_alumno,
    	mug_localidades.nombre as localidad_nombre,
	mug_provincias.nombre as provincia_nombre,
	mug_paises.nombre as pais_nombre,
	sga_instituciones.nombre as nombre_institucion,
	f_responsables_academicas_propuesta(sga_planes.propuesta) as nombre_ra
FROM
	sga_certificados_otorg,
	sga_certificados,
	sga_alumnos,
	vw_personas,
	mdp_personas,
	sga_ubicaciones,
	sga_instituciones,
	mug_localidades,
    	mug_dptos_partidos,
	mug_provincias,
    	mug_paises,
	sga_planes_versiones,
	sga_planes,
	sga_responsables_academicas
WHERE
	sga_certificados_otorg.nro_solicitud = $P{nro_solicitud}
	AND sga_certificados_otorg.certificado = sga_certificados.certificado
	AND sga_alumnos.alumno = sga_certificados_otorg.alumno
	AND sga_alumnos.persona = vw_personas.persona
	AND vw_personas.persona = mdp_personas.persona
	AND sga_alumnos.ubicacion = sga_ubicaciones.ubicacion
	AND sga_ubicaciones.localidad = mug_localidades.localidad
    	AND mug_localidades.dpto_partido = mug_dptos_partidos.dpto_partido
	AND mug_dptos_partidos.provincia = mug_provincias.provincia
	AND mug_provincias.pais = mug_paises.pais
	AND sga_certificados_otorg.plan_version = sga_planes_versiones.plan_version
	AND sga_planes_versiones.plan = sga_planes.plan
	AND sga_responsables_academicas.responsable_academica = (SELECT sga_propuestas_ra.responsable_academica
									FROM sga_propuestas_ra
									WHERE sga_planes.propuesta = sga_propuestas_ra.propuesta
								LIMIT 1)
	AND sga_responsables_academicas.institucion = sga_instituciones.institucion]]>

Adjunto archivo


ConstanciaTituloTramite.zip (2.42 KB)

Hola Sergio,

Claro, yo te pase la query dentro de Constancia de Titulo en Tramite (exportaciones/jasper/ConstanciaTituloTramite.jrxml) que es una de las que decías que fallaba.

Certificado Analítico (exportaciones/jasper/CertificadoAnalitico.jrxml) es otra que tiene dos queries dentro, también podes probar dichas queries, recorda que tenes que reemplazar $P{plan_version}, $P{alumno} y $P{nro_solicitud} por los datos reales.

Recorda también ver los logs de Apache y la salida de Jasper.

saludos.
2

En el log de apache cuando mando a imrpimir la constancia no aparece nada.

Perdón, la query de ConstanciaTituloTramite.jrxml que te copie en la primer respuesta tiene cambios para la 3.19.0, las siguientes dos cosas no están en la 3.18.1:


mug_localidades.nombre as localidad_nombre,
f_responsables_academicas_propuesta(sga_alumnos.propuesta) as nombre_ra
AND sga_instituciones.institucion = get_ra_inst_araucano_propuesta(sga_alumnos.propuesta, 'IG')

Para la 3.18.1 es la siguiente: https://colab.siu.edu.ar/trac/guarani3/browser/nodos/unlpam/gestion/trunk/3.18.1/exportaciones/jasper/ConstanciaTituloTramite.jrxml

Proba las queries como las tenes en tus archivos .jrxml.

saludos.
2

Probe el SQL que aparece en la plantilla


SELECT
	vw_personas.apellido || ' ' || vw_personas.nombres as apellido_y_nombre,
	vw_personas.desc_tipo_documento || ' ' || vw_personas.nro_documento as documento_principal,
	to_char(mdp_personas.fecha_nacimiento,'DD/MM/YYYY') as fecha_nacimiento_alumno,
	CASE vw_personas.sexo
		WHEN 'M' THEN sga_certificados.nombre
		WHEN 'F' THEN sga_certificados.nombre_femenino
	END AS certificado_nombre,
	COALESCE(sga_certificados_otorg.nro_expediente, ' - ') AS nro_expediente,
	to_char(sga_certificados_otorg.fecha_egreso, 'DD/MM/YYYY') as fecha_egreso_alumno,
    	mug_localidades.nombre as localidad_nombre,
	mug_provincias.nombre as provincia_nombre,
	mug_paises.nombre as pais_nombre,
	sga_instituciones.nombre as nombre_institucion,
	f_responsables_academicas_propuesta(sga_planes.propuesta) as nombre_ra
FROM
	sga_certificados_otorg,
	sga_certificados,
	sga_alumnos,
	vw_personas,
	mdp_personas,
	sga_ubicaciones,
	sga_instituciones,
	mug_localidades,
    	mug_dptos_partidos,
	mug_provincias,
    	mug_paises,
	sga_planes_versiones,
	sga_planes,
	sga_responsables_academicas
WHERE
	sga_certificados_otorg.nro_solicitud = 2640
	AND sga_certificados_otorg.certificado = sga_certificados.certificado
	AND sga_alumnos.alumno = sga_certificados_otorg.alumno
	AND sga_alumnos.persona = vw_personas.persona
	AND vw_personas.persona = mdp_personas.persona
	AND sga_alumnos.ubicacion = sga_ubicaciones.ubicacion
	AND sga_ubicaciones.localidad = mug_localidades.localidad
    	AND mug_localidades.dpto_partido = mug_dptos_partidos.dpto_partido
	AND mug_dptos_partidos.provincia = mug_provincias.provincia
	AND mug_provincias.pais = mug_paises.pais
	AND sga_certificados_otorg.plan_version = sga_planes_versiones.plan_version
	AND sga_planes_versiones.plan = sga_planes.plan
	AND sga_responsables_academicas.responsable_academica = (SELECT sga_propuestas_ra.responsable_academica
									FROM sga_propuestas_ra
									WHERE sga_planes.propuesta = sga_propuestas_ra.propuesta
								LIMIT 1)
	AND sga_responsables_academicas.institucion = sga_instituciones.institucion;

Y me devulve vacio. Creo que aca esta el problema. No entiendo porque devuleve vacio, me dijeron que esta persona tiene el titulo en tramite.

Perdón otra vez, estaba probando con otro nro de solicitud.


SELECT
	vw_personas.apellido || ' ' || vw_personas.nombres as apellido_y_nombre,
	vw_personas.desc_tipo_documento || ' ' || vw_personas.nro_documento as documento_principal,
	to_char(mdp_personas.fecha_nacimiento,'DD/MM/YYYY') as fecha_nacimiento_alumno,
	CASE vw_personas.sexo
		WHEN 'M' THEN sga_certificados.nombre
		WHEN 'F' THEN sga_certificados.nombre_femenino
	END AS certificado_nombre,
	COALESCE(sga_certificados_otorg.nro_expediente, ' - ') AS nro_expediente,
	to_char(sga_certificados_otorg.fecha_egreso, 'DD/MM/YYYY') as fecha_egreso_alumno,
    	mug_localidades.nombre as localidad_nombre,
	mug_provincias.nombre as provincia_nombre,
	mug_paises.nombre as pais_nombre,
	sga_instituciones.nombre as nombre_institucion,
	f_responsables_academicas_propuesta(sga_planes.propuesta) as nombre_ra
FROM
	sga_certificados_otorg,
	sga_certificados,
	sga_alumnos,
	vw_personas,
	mdp_personas,
	sga_ubicaciones,
	sga_instituciones,
	mug_localidades,
    	mug_dptos_partidos,
	mug_provincias,
    	mug_paises,
	sga_planes_versiones,
	sga_planes,
	sga_responsables_academicas
WHERE
	sga_certificados_otorg.nro_solicitud = 2260
	AND sga_certificados_otorg.certificado = sga_certificados.certificado
	AND sga_alumnos.alumno = sga_certificados_otorg.alumno
	AND sga_alumnos.persona = vw_personas.persona
	AND vw_personas.persona = mdp_personas.persona
	AND sga_alumnos.ubicacion = sga_ubicaciones.ubicacion
	AND sga_ubicaciones.localidad = mug_localidades.localidad
    	AND mug_localidades.dpto_partido = mug_dptos_partidos.dpto_partido
	AND mug_dptos_partidos.provincia = mug_provincias.provincia
	AND mug_provincias.pais = mug_paises.pais
	AND sga_certificados_otorg.plan_version = sga_planes_versiones.plan_version
	AND sga_planes_versiones.plan = sga_planes.plan
	AND sga_responsables_academicas.responsable_academica = (SELECT sga_propuestas_ra.responsable_academica
									FROM sga_propuestas_ra
									WHERE sga_planes.propuesta = sga_propuestas_ra.propuesta
								LIMIT 1)
	AND sga_responsables_academicas.institucion = sga_instituciones.institucion;

Y la salida fue


   apellido_y_nombre    | documento_principal | fecha_nacimiento_alumno | certificado_nombre | nro_expediente | fecha_egreso_alumno | localidad_nombre | provincia_nombre | pais_nombre |        nombre_institucion        |                  nombre_ra
------------------------+---------------------+-------------------------+--------------------+----------------+---------------------+------------------+------------------+-------------+----------------------------------+---------------------------------------------
 Quevedo Jonatan Nahuel | DNI 35236490        | 10/09/1990              | Abogado            |  -             | 31/03/2021          | SANTA ROSA       | La Pampa         | Argentina   | Universidad Nacional de La Pampa | Facultad de Ciencias Económicas y Jurídicas
(1 fila)

La salida en jasper es:


root@virt0038:/usr/local/proyectos/guarani# java -jar /usr/local/proyectos/guarani/vendor/siu-toba/jasper/JavaBridge/WEB-INF/lib/JavaBridge.jar SERVLET:8081
Apr 12 11:00:48 VMBridge INFO : VM                  : 1.8.0_275@http://java.oracle.com/
Apr 12 11:00:48 VMBridge INFO : VMBridge version             : 5.5.2
Apr 12 11:00:48 VMBridge INFO : logFile             :
Apr 12 11:00:48 VMBridge INFO : default logLevel    : 3
Apr 12 11:00:48 VMBridge INFO : socket              : SERVLET:8081
Apr 12 11:00:48 VMBridge INFO : java.ext.dirs       : /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/ext:/usr/java/packages/lib/ext
Apr 12 11:00:48 VMBridge INFO : php.java.bridge.base: /root
Apr 12 11:00:48 VMBridge INFO : thread pool size    : 20
Apr 12 11:00:48 VMBridge INFO : JavaBridgeRunner started on port INET:8081
log4j:WARN No appenders could be found for logger (net.sf.jasperreports.extensions.ExtensionsEnvironment).
log4j:WARN Please initialize the log4j system properly.

Que son las dos ultimas lineas

Hola Sergio,

Revise y la query trae todos los datos que se usan en los $F{nombre_campo} del Jasper (exportaciones/jasper/ConstanciaTituloTramite.jrxml).

¿volviste a correr el Jasper y luego volviste a intentar generar el reporte? porque sino no te va a mostrar nada la salida del Jasper.

¿En los logs de la aplicación no genera ningún error de Jasper?

saludos.
2

Hola Leonel, si, si. Lo tengo corriendo con supervisor.

Lo detuve y lo deje corriendo por consola para mostrar los resultados y luego relizo la solicitud de certificado. La cual me devuelve un PDF en blanco.

En los los de Jasper me tira lo que te pase, y en apache cuando le doy click a imprimir (captura) no muestra ningun mensaje.

Adjunto la salida de “sistema.log”


captura.jpg

captura.png

sistema.zip (3.17 KB)

Hola Sergio, gracias por los logs, no estoy viendo ningún error ni nada extraño en los mismos!!!

¿sera un problema con los acentos? ¿que ocurre si le quitas los acentos de manera momentánea a el nombre de la RA “Facultad de Ciencias Económicas y Jurídicas”?

¿que ocurre si ejecutas exportaciones/jasper/ConstanciaTituloTramite.jrxml desde la herramiento Ireport? Quizás allí se vea mejor el error.

saludos.
2

Hola Leonel, respecto a los acentos probe y no funciono. Sigue saliendo el PDF en blanco.


   apellido_y_nombre    | documento_principal | fecha_nacimiento_alumno | certificado_nombre | nro_expediente | fecha_egreso_alumno | localidad_nombre | provincia_nombre | pais_nombre |        nombre_institucion        |                  nombre_ra
------------------------+---------------------+-------------------------+--------------------+----------------+---------------------+------------------+------------------+-------------+----------------------------------+---------------------------------------------
 Quevedo Jonatan Nahuel | DNI 35236490        | 10/09/1990              | Abogado            |  -             | 31/03/2021          | SANTA ROSA       | La Pampa         | Argentina   | Universidad Nacional de La Pampa | Facultad de Ciencias Economicas y Juridicas
(1 fila)

Esa seria la salida del SQL.

¿que ocurre si ejecutas exportaciones/jasper/ConstanciaTituloTramite.jrxml desde la herramiento Ireport? Quizás allí se vea mejor el error.

Ireport lo tengo en una maquina con windows, no se como conectarlo con el servidor para poder probar (el servidor es de producción con Debian 9 sin entorno grafico, solo tiene instalado lo necesario).

Hola Sergio,

¿desde que operación están imprimiendo este reporte?

vos estas corriendo la query desde un editor de SQL para probar que no se rompa, pero habría que ver si se le están pasando bien los parámetros a dicha query desde el Jasper, ej: exportaciones/jasper/ConstanciaTituloTramite.jrxml recibe el parámetro nro_solicitud.

saludos.
4

Hola Leonel, parece que la cuando actualizan el estado lo pueden imprimir, pero desde Constancias y Certificados => Solicitar constancia y certificado. Me devuelve vacio.

Probe en “php/operaciones/constancias/administrar_solicitudes/ci_edi_administrar_solicitudes_constancias.php” colocar un ei_arbol antes de imprimir el certificado.


$parametros = toba::consulta_php('co_constancias')->get_solicitud_params($this->s__solicitud);
ei_arbol($this->s__solicitud);
ei_arbol($parametros);
exit(0);


DUMPEO de VALORES
2648

DUMPEO de VALORES

Osea que “get_solicitud_params” me esta devolviendo vacio.

Hola Sergio,

Hay constancias que no se pueden descargar desde la operación Solicitar Constancias y Certificados .

En la operación Administrar Constancias y Certificados vas a ver que solo admite las plantillas que están en la tabla mce_plantillas y que la columna admite_solicitud = 1, vas a ver que Constancia de Título en Trámite tiene admite_solicitud = 0.

La Constancia de Título en Trámite se imprime en el circuito de egreso, fíjate en la operación Administrar Circuitos de Egreso solapa Transiciones.

¿No se como hiciste para agregarla en la operación Administrar Constancias y Certificados, no te lo debería permitir el sistema?

saludos.
2

Hola Leonel, esa parte la configura el personal funcional. Revise la tabla mce_plantilla y la Constancia de Título en Trámite esta con admite_solicitud = 0.


 plantilla |                    nombre                     |                 descripcion                  |            archivo_plantilla             | admite_solicitud
-----------+-----------------------------------------------+----------------------------------------------+------------------------------------------+------------------
         1 | Constancia de Alumno Regular                  | Constancia de Alumno Regular                 | ConstanciaRegular.jasper                 |                1
         3 | Constancia de Promedio Académico sin Aplazos  |                                              | ConstanciaPromedioSinAplazos.jasper      |                1
         2 | Constancia de Promedio Académico              |                                              | ConstanciaPromedio.jasper                |                1
         4 | Constancia de Actividades Rendidas por Examen |                                              | ConstanciaActividadesRendidas.jasper     |                1
         5 | Constancia de Actividades Aprobadas           |                                              | ConstanciaActividadesAprobadas.jasper    |                1
         6 | Constancia de Actividades Desaprobadas        |                                              | ConstanciaActividadesDesaprobadas.jasper |                1
         7 | Constancia de Examen Final                    |                                              | ConstanciaExamenFinal.jasper             |                1
         8 | Constancia de Examen Parcial                  |                                              | ConstanciaExamenParcial.jasper           |                1
        11 | TED1a                                         | TED1a                                        | TED1a.jasper                             |                0
        12 | TED1b                                         | TED1b                                        | TED1b.jasper                             |                0
        13 | TED1c                                         | TED1c                                        | TED1c.jasper                             |                0
        14 | TED1d                                         | TED1d                                        | TED1d.jasper                             |                0
        16 | TED1f                                         | TED1f                                        | TED1f.jasper                             |                0
        17 | TED1g                                         | TED1g                                        | TED1g.jasper                             |                0
        18 | TEDII                                         | TEDII                                        | TEDII.jasper                             |                0
        20 | Constancia de Asistencia a Curso              | Constancia de Asistencia a Curso             | ConstanciaAsistenciaCurso.jasper         |                1
        21 | Constancia de Aprobacion de Curso             | Constancia de Aprobacion de Curso            | ConstanciaAprobacionCurso.jasper         |                1
        22 | Constancia de Asistencia a Clase              | Constancia de Asistencia a Clase             | ConstanciaAsistenciaClase.jasper         |                1
        15 | Certificado Analítico                         | Certificado Analítico                        | CertificadoAnalitico.jasper              |                0
      1001 | Certificado de Estudiante - UNLPam            | Certificado de Estudiante - UNLPam           | CertificadoEstudianteUNLPam.jasper       |                1
      1002 | Constancia Actividades Curriculares - UNLPam  | Constancia Actividades Curriculares - UNLPam | ConstanciaActividadesCurriculares.jasper |                1
        19 | Certificado de Fin de Carrera                 | Certificado de Fin de Carrera                | CertificadoFinCarrera.jasper             |                1
         9 | Constancia de Inicio de Tramite de Titulo     | Constancia de Inicio de Tramite de Titulo    | ConstanciaInicioTramite.jasper           |                1
        10 | Constancia de Título en Trámite               | Constancia de Título en Trámite              | ConstanciaTituloTramite.jasper           |                1
(24 filas)

Por lo que vi, tambien se puede modificar desde Administración » Administrar Plantillas.

Hola Sergio,

Claro, hicimos una prueba con el caso que nos contas y pasa lo mismo (sale el PDF en blanco).

El problema es que en la función vista_jasperreports de php/operaciones/constancias/administrar_solicitudes/ci_edi_administrar_solicitudes_constancias.php vienen vacíos los parámetros:

$parametros = toba::consulta_php('co_constancias')->get_solicitud_params($this->s__solicitud); 

La Constancia de Título en Trámite esta pensada para usarse en el Circuito de Egreso, lo asignas en la operación Administrar Circuitos de Egreso, y se imprime en Actualizar Trámites de Certificación, te dejo captura.

Por ahora las plantillas que tienen admite_solicitud = 0 en la tabla mce_plantillas no se pueden descargar desde Solicitar Constancias y Certificados.

saludos.
4


Screenshot from 2021-04-14 10-52-58.png

Screenshot from 2021-04-14 10-52-58.png