28
« on: Agosto 24, 2020, 04:22:46 pm »
Hola!
estoy en la 3.15.1, tengo esta consulta que no termina nunca (desde la aplicación después de un rato me aparece un error en pantalla 524 de time out) . La probé en el dbeaver y tampoco. Es el filtro de la operación de procesar pendientes:
SELECT sga_ubicaciones.nombre AS ubicacion, '(' || vw_actividades_plan.codigo || ') ' ||
vw_actividades_plan.nombre AS actividades, vw_personas.apellido_nombres AS apellido_y_nombre,
vw_personas.tipo_nro_documento AS documento_principal, sga_insc_cursada.inscripcion,
sga_insc_cursada.nro_transaccion, sga_alumnos.alumno, sga_alumnos.legajo, sga_alumnos.persona,
sga_alumnos.propuesta, vw_actividades_plan.elemento, sga_periodos.periodo, sga_insc_cursada.plan_version,
sga_insc_cursada.comision AS id_comision, sga_comisiones.nombre AS comision,
sga_turnos_cursadas.nombre AS turno, sga_catedras.nombre AS catedra, sga_insc_cursada.estado,
sga_inscripciones_estados.nombre AS estado_inscr, sga_insc_cursada.fecha_inscripcion AS fecha,
to_char(sga_insc_cursada.fecha_inscripcion,'DD/MM/YYYY HH24:MI:SS') AS fecha_inscripcion,
to_char(sga_insc_cursada.fecha_inscripcion,'DD/MM/YYYY') AS fecha_inscripcion_visual,
sga_periodos.nombre AS periodo_nombre, sga_periodos.anio_academico,
sga_periodos.anio_academico || ' - ' || sga_periodos.nombre AS anio_periodo_nombre,
vw_actividades_plan.codigo AS cod_actividad, vw_actividades_plan.nombre AS actividad,
sga_propuestas.nombre_abreviado AS propuesta_nombre_abreviado,
f_instancias_insc_cursada(sga_insc_cursada.inscripcion) AS instancias,
f_comision_cant_clases(sga_alumnos.alumno, sga_comisiones.comision) AS cant_clases,
sga_insc_cursada.sq_token, vw_actividades_plan.nombre || ' (' || sga_comisiones.nombre || ')'
AS actividad_comision
FROM sga_insc_cursada, sga_comisiones
LEFT JOIN sga_catedras ON sga_catedras.catedra = sga_comisiones.catedra
LEFT JOIN sga_turnos_cursadas ON sga_turnos_cursadas.turno = sga_comisiones.turno,
vw_actividades_plan, sga_ubicaciones, sga_alumnos, vw_personas, sga_periodos_lectivos,
sga_periodos, sga_inscripciones_estados, sga_propuestas
WHERE sga_insc_cursada.comision = sga_comisiones.comision
AND sga_insc_cursada.alumno = sga_alumnos.alumno
AND sga_insc_cursada.estado = sga_inscripciones_estados.estado -- Estado de la Inscripcion
AND sga_comisiones.elemento = vw_actividades_plan.elemento
AND sga_insc_cursada.plan_version = vw_actividades_plan.plan_version
AND sga_comisiones.ubicacion = sga_ubicaciones.ubicacion AND sga_alumnos.persona = vw_personas.persona
AND sga_comisiones.periodo_lectivo = sga_periodos_lectivos.periodo_lectivo
AND sga_periodos_lectivos.periodo = sga_periodos.periodo AND sga_alumnos.propuesta = sga_propuestas.propuesta
AND sga_periodos.anio_academico = '2020' AND sga_periodos_lectivos.periodo_lectivo = '199'
AND f_limpiar_acentos(vw_actividades_plan.codigo || vw_actividades_plan.nombre::varchar)
ILIKE '%A0001%' AND sga_insc_cursada.estado = 'P' AND sga_insc_cursada.tipo = 'I'
AND sga_comisiones.estado = 'A' AND true
ORDER BY ubicacion, actividades, apellido_y_nombre
Empezando a modificarla para ver donde estaba el problema encontré que la vista vw_actividades_plan sería el problema. Además controlando la misma consulta en la 3.18 veo que sacaron esa vista (la reemplazan por sga_elementos y sga_elementos_plan ).
Lo raro es que en una base de prueba funciona bien ... cómo puedo resolverlo ?
Yo ahora para salir del paso, modifiqué la consulta y el filtro para que no use la vista, y puse la de la 3.18.
Pero quisiera saber si el problema es la vista, ya que se usa en otros reportes también ...
algo para chequear que esa vista esté bien ?