guarani 3.13.0 gestin operacion oferta de comision error filtro propuesta

Buenas Tardes!
al hacer un filtro en este reporte cuando selecciono la propuesta este no se filtra quedan todos los del periodo lectivo, les anexo la co
saludos


set search_path=‘negocio’;

SELECT – Comisiones SIN Subcomisiones.
vw_actividades.elemento,
vw_actividades.codigo as actividad_codigo,
vw_actividades.nombre as actividad_nombre,
‘(’ || vw_actividades.codigo || ') ’ || vw_actividades.nombre AS actividad_desc,
vw_periodos_lectivos.anio_academico,
vw_periodos_lectivos.periodo_lectivo,
vw_periodos_lectivos.nombre as periodo_nombre,
sga_comisiones.comision,
sga_comisiones.nombre as comision_nombre,
sga_comisiones.ubicacion,
sga_ubicaciones.nombre as ubicacion_nombre,
sga_comisiones.turno as turno,
sga_turnos_cursadas.nombre as turno_nombre,
sga_comisiones_cupo.cupo as comision_cupo,
sga_comisiones_cupo.cant_inscriptos as comision_inscriptos,
f_modalidad_cursada_comision(sga_comisiones.comision) as nombre_modalidad,

– Datos de la Asignación de la Comisión.
sga_clases_tipos.nombre as tipo_clase_nombre,
sga_asignaciones.dia_semana as dia_semana,
CASE WHEN sga_asignaciones.dia_semana = ‘Lunes’ THEN ‘Lunes’ WHEN sga_asignaciones.dia_semana = ‘Martes’ THEN ‘Martes’ WHEN sga_asignaciones.dia_semana = ‘Miercoles’ THEN ‘Miércoles’ WHEN sga_asignaciones.dia_semana = ‘Jueves’ THEN ‘Jueves’ WHEN sga_asignaciones.dia_semana = ‘Viernes’ THEN ‘Viernes’ WHEN sga_asignaciones.dia_semana = ‘Sabado’ THEN ‘Sábado’ WHEN sga_asignaciones.dia_semana = ‘Domingo’ THEN ‘Domingo’ END as dia_semana_nombre,
to_char(sga_asignaciones.hora_inicio, ‘HH24:MI’) || ’ a ’ || to_char(sga_asignaciones.hora_finalizacion, ‘HH24:MI’) as horario,
sga_espacios.espacio,
sga_espacios.nombre as espacio_nombre,

– Datos de las Subcomisiones (no existen pero se unifica para poder realizar el Union)
CAST(null as integer) as subcomision,
CAST(null as varchar) as subcomision_nombre,
CAST(null as integer) as subcomision_cupo,
CAST(null as integer) as subcomision_inscriptos,
f_docentes_comision(sga_comisiones.comision, true) as docentes_resp,

sga_comisiones.nombre as com_subcom_nombre,
sga_comisiones.comision || ‘-0’ as com_subcom_codigo

FROM vw_actividades,
sga_comisiones
LEFT JOIN sga_comisiones_cupo ON sga_comisiones.comision = sga_comisiones_cupo.comision
LEFT JOIN sga_turnos_cursadas ON sga_turnos_cursadas.turno = sga_comisiones.turno
LEFT JOIN sga_comisiones_bh ON sga_comisiones_bh.comision = sga_comisiones.comision
LEFT JOIN sga_clases_tipos ON sga_comisiones_bh.tipo_clase = sga_clases_tipos.tipo_clase
LEFT JOIN sga_asignaciones ON sga_asignaciones.asignacion = sga_comisiones_bh.asignacion
LEFT JOIN sga_espacios ON sga_espacios.espacio = sga_asignaciones.espacio,
sga_ubicaciones,
vw_periodos_lectivos,
sga_propuestas

WHERE vw_actividades.elemento = sga_comisiones.elemento
AND vw_actividades.estado = ‘A’
AND vw_actividades.disponible_para IN (‘T’, ‘C’)
AND sga_ubicaciones.ubicacion = sga_comisiones.ubicacion
AND vw_periodos_lectivos.periodo_lectivo = sga_comisiones.periodo_lectivo
AND NOT EXISTS
( SELECT *
FROM sga_subcomisiones
WHERE sga_subcomisiones.comision = sga_comisiones.comision)
AND vw_periodos_lectivos.anio_academico = ‘2018’
AND vw_periodos_lectivos.periodo_lectivo = ‘65’
AND sga_propuestas.propuesta = ‘16’ AND sga_comisiones.estado = ‘A’

UNION ALL

SELECT – Comisiones CON Subcomisiones.
vw_actividades.elemento,
vw_actividades.codigo as actividad_codigo,
vw_actividades.nombre as actividad_nombre,
‘(’ || vw_actividades.codigo || ') ’ || vw_actividades.nombre AS actividad_desc,
vw_periodos_lectivos.anio_academico,
vw_periodos_lectivos.periodo_lectivo,
vw_periodos_lectivos.nombre as periodo_nombre,
sga_comisiones.comision,
sga_comisiones.nombre as comision_nombre,
sga_comisiones.ubicacion,
sga_ubicaciones.nombre as ubicacion_nombre,
sga_comisiones.turno as turno,
sga_turnos_cursadas.nombre as turno_nombre,
sga_comisiones_cupo.cupo as comision_cupo,
sga_comisiones_cupo.cant_inscriptos as comision_inscriptos,
f_modalidad_cursada_comision(sga_comisiones.comision) as nombre_modalidad,

– Datos de la Asignación de la Comisión.
sga_clases_tipos.nombre as tipo_clase_nombre,
sga_asignaciones.dia_semana as dia_semana,
CASE WHEN sga_asignaciones.dia_semana = ‘Lunes’ THEN ‘Lunes’ WHEN sga_asignaciones.dia_semana = ‘Martes’ THEN ‘Martes’ WHEN sga_asignaciones.dia_semana = ‘Miercoles’ THEN ‘Miércoles’ WHEN sga_asignaciones.dia_semana = ‘Jueves’ THEN ‘Jueves’ WHEN sga_asignaciones.dia_semana = ‘Viernes’ THEN ‘Viernes’ WHEN sga_asignaciones.dia_semana = ‘Sabado’ THEN ‘Sábado’ WHEN sga_asignaciones.dia_semana = ‘Domingo’ THEN ‘Domingo’ END as dia_semana_nombre,
to_char(sga_asignaciones.hora_inicio, ‘HH24:MI’) || ’ a ’ || to_char(sga_asignaciones.hora_finalizacion, ‘HH24:MI’) as horario,
sga_espacios.espacio,
sga_espacios.nombre as espacio_nombre,

– Datos de las Subcomisiones
sga_subcomisiones.subcomision,
sga_subcomisiones.nombre as subcomision_nombre,
sga_subcomisiones_cupo.cupo as subcomision_cupo,
sga_subcomisiones_cupo.cant_inscriptos as subcomision_inscriptos,
f_docentes_subcomision(sga_subcomisiones.subcomision, true) as docentes_resp,

sga_comisiones.nombre || ’ - ’ || sga_subcomisiones.nombre as com_subcom_nombre,
sga_comisiones.comision || ‘-’ || sga_subcomisiones.subcomision as com_subcom_codigo

FROM vw_actividades,
sga_comisiones
LEFT JOIN sga_comisiones_cupo ON sga_comisiones.comision = sga_comisiones_cupo.comision
LEFT JOIN sga_turnos_cursadas ON sga_turnos_cursadas.turno = sga_comisiones.turno,
sga_subcomisiones
LEFT JOIN sga_subcomisiones_cupo ON sga_subcomisiones_cupo.subcomision = sga_subcomisiones.subcomision
LEFT JOIN sga_subcomisiones_bh ON sga_subcomisiones_bh.subcomision = sga_subcomisiones.subcomision
LEFT JOIN sga_comisiones_bh ON sga_comisiones_bh.banda_horaria = sga_subcomisiones_bh.banda_horaria
LEFT JOIN sga_clases_tipos ON (sga_comisiones_bh.tipo_clase = sga_clases_tipos.tipo_clase AND sga_subcomisiones.tipo_clase = sga_clases_tipos.tipo_clase)
LEFT JOIN sga_asignaciones ON sga_asignaciones.asignacion = sga_comisiones_bh.asignacion
LEFT JOIN sga_espacios ON sga_espacios.espacio = sga_asignaciones.espacio,
sga_ubicaciones,
vw_periodos_lectivos,
sga_propuestas

WHERE vw_actividades.elemento = sga_comisiones.elemento
AND vw_actividades.estado = ‘A’
AND vw_actividades.disponible_para IN (‘T’, ‘C’)
AND sga_subcomisiones.comision = sga_comisiones.comision
AND sga_ubicaciones.ubicacion = sga_comisiones.ubicacion
AND vw_periodos_lectivos.periodo_lectivo = sga_comisiones.periodo_lectivo
AND vw_periodos_lectivos.anio_academico = ‘2018’
AND vw_periodos_lectivos.periodo_lectivo = ‘65’
AND sga_propuestas.propuesta = ‘16’ AND sga_comisiones.estado = ‘A’

ORDER BY actividad_nombre, comision_nombre, subcomision_nombre

Buenas. Por lo que entendí tu pregunta es que al agregar un filtro nuevo por propuesta está no lo filtra?
Cuando revisé el query veo que esta filtrando por propuesta, por año academico y periodolectivo y comisión activa.

AND vw_periodos_lectivos.anio_academico = '2018'
AND vw_periodos_lectivos.periodo_lectivo = '65'
AND sga_propuestas.propuesta = '16' AND sga_comisiones.estado = 'A'

Saludos.

hola Jose si es asi cuando agrego el filtro no esta filtrando por la propuesta si bien en la query esta me trae todo lo del periodo lectivo con actividades de distintas propuestas
no me queda claro la vinculacion sga_propuestas con otra tabla o vista para relacionarlas

Buenas, la tabla que vincula la comisión con la propuesta se llama sga_comisiones_propuestas.
Al agregar el filtro deberías utilizar esa tabla para buscar por propuestas las comisiones.

Saludos.

ok en la query no figura debe se eso entonces

creo que con agregar esto en el where lo soluciona.

   AND sga_comisiones_propuestas.propuesta = sga_propuestas.propuesta 
   AND sga_comisiones_propuestas.comision = sga_comisiones.comision