Hola, es el mismo problema original por lo que veo en logs:
-- SQL -----------------------------------------------------------------------
SELECT sga_propuestas_aspira.propuesta_aspira,
sga_propuestas_aspira.persona,
sga_propuestas_aspira.propuesta,
sga_planes.plan,
sga_planes.codigo AS plan_codigo,
sga_planes.cobrable AS plan_cobrable,
sga_planes.sq_sincronizado AS plan_sq_sincronizado,
sga_planes_versiones.plan_version,
sga_propuestas_aspira.nro_transaccion,
sga_propuestas_aspira.sq_token,
sga_propuestas_aspira.sq_sincronizado
FROM sga_propuestas_aspira
JOIN sga_planes_versiones ON (sga_propuestas_aspira.plan_version = sga_planes_versiones.plan_version)
JOIN sga_planes ON (sga_planes.plan = sga_planes_versiones.plan)
WHERE sga_propuestas_aspira.propuesta_aspira = '115969'
-- ## datos ## ---------------------------------------------------------------
Array
(
[propuesta_aspira] => 115969
[persona] => 14421
[propuesta] => 174
[plan] => 318
[plan_codigo] => COR
[plan_cobrable] => S
[plan_sq_sincronizado] => 1
[plan_version] => 2097
[nro_transaccion] => 1468934
[sq_token] =>
[sq_sincronizado] => 0
)
-- SQL -----------------------------------------------------------------------
SELECT
sga_comisiones.comision,
sga_comisiones.nombre,
sga_comisiones.elemento,
sga_periodos.anio_academico,
sga_comisiones.periodo_lectivo,
sga_periodos.nombre as periodo_lectivo_nombre,
sga_elementos.elemento AS actividad,
get_nombre_actividad_comision(sga_comisiones.comision, 1) as actividad_nombre,
sga_elementos.codigo AS actividad_codigo,
'(' || sga_elementos.codigo || ') ' || get_nombre_actividad_comision(sga_comisiones.comision, 1) as actividad_codigo_y_nombre,
get_nombre_actividad_comision(sga_comisiones.comision, 1) || ' - ' || sga_comisiones.nombre AS actividad_comision,
f_horario_comision(sga_comisiones.comision) AS horario_descr,
f_horario_comision_aula(sga_comisiones.comision, false) AS horario_aula_descr,
sga_comisiones.ubicacion,
sga_comisiones.cobrable,
sga_ubicaciones.nombre AS ubicacion_nombre,
f_docentes_comision(sga_comisiones.comision, false) AS docentes,
f_docentes_comision(sga_comisiones.comision, true) AS docentes_responsabilidad,
COALESCE(sga_comisiones_excep_perlect.fecha_inicio_dictado, sga_periodos_lectivos.fecha_inicio_dictado) AS fecha_inicio_dictado,
to_char(COALESCE(sga_comisiones_excep_perlect.fecha_inicio_dictado, sga_periodos_lectivos.fecha_inicio_dictado), 'DD/MM/YYYY') as fecha_inicio_dictado_visual,
COALESCE(sga_comisiones_excep_perlect.fecha_fin_dictado, sga_periodos_lectivos.fecha_fin_dictado) AS fecha_fin_dictado,
to_char(COALESCE(sga_comisiones_excep_perlect.fecha_fin_dictado, sga_periodos_lectivos.fecha_fin_dictado), 'DD/MM/YYYY') as fecha_fin_dictado_visual,
f_comision_con_tope_bajas_vigente('2097', sga_comisiones.comision, 1, NULL) as baja_habilitada,
CASE
WHEN (cupo.cupo IS NULL OR cupo.cupo = 0 OR cupo.cupo > cupo.cant_inscriptos) THEN 'S'
ELSE 'N'
END as tiene_cupo,
cupo.cupo,
sga_comisiones.inscripcion_cerrada,
sga_comisiones.inscripcion_cerrada_codigo
,cupo.cant_inscriptos as cant_inscriptos,
f_modalidad_cursada_comision(sga_comisiones.comision) as modalidad ,
(SELECT array_to_string(array_agg(DISTINCT dia_semana), ',')
FROM sga_comisiones_bh
JOIN sga_asignaciones ON (sga_comisiones_bh.asignacion = sga_asignaciones.asignacion)
WHERE sga_comisiones_bh.comision = sga_comisiones.comision) AS dias_semana
FROM
sga_comisiones
JOIN sga_elementos ON sga_comisiones.elemento = sga_elementos.elemento
JOIN sga_elementos_revision ON sga_elementos.elemento = sga_elementos_revision.elemento
JOIN sga_elementos_plan ON sga_elementos_revision.elemento_revision = sga_elementos_plan.elemento_revision
JOIN sga_ubicaciones ON sga_comisiones.ubicacion = sga_ubicaciones.ubicacion
JOIN sga_periodos_lectivos ON sga_comisiones.periodo_lectivo = sga_periodos_lectivos.periodo_lectivo
JOIN sga_periodos ON sga_periodos_lectivos.periodo = sga_periodos.periodo
LEFT JOIN sga_comisiones_cupo AS cupo ON cupo.comision = sga_comisiones.comision
LEFT JOIN sga_comisiones_excep_perlect ON sga_comisiones_excep_perlect.comision = sga_comisiones.comision
WHERE
sga_elementos_plan.plan_version = '2097'
-- Comisiones activas y pendientes
AND sga_comisiones.estado IN ('A', 'P')
AND sga_comisiones.comision = '30626' AND CURRENT_DATE <= COALESCE(sga_comisiones_excep_perlect.fecha_fin_dictado, sga_periodos_lectivos.fecha_fin_dictado)
-- ## datos ## ---------------------------------------------------------------
Array
(
[0] => Array
(
[comision] => 30626
[nombre] => Curso de Oratoria 1
[elemento] => 7469
[anio_academico] => 2024
[periodo_lectivo] => 96
[periodo_lectivo_nombre] => Cursos 2024
[actividad] => 7469
[actividad_nombre] => Actividad CObrable Curso de Oratoria
[actividad_codigo] => ACCO
[actividad_codigo_y_nombre] => (ACCO) Actividad CObrable Curso de Oratoria
[actividad_comision] => Actividad CObrable Curso de Oratoria - Curso de Oratoria 1
[horario_descr] =>
[horario_aula_descr] =>
[ubicacion] => 2
[cobrable] => S
[ubicacion_nombre] => Viedma
[docentes] =>
[docentes_responsabilidad] =>
[fecha_inicio_dictado] => 2024-03-01
[fecha_inicio_dictado_visual] => 01/03/2024
[fecha_fin_dictado] => 2025-02-28
[fecha_fin_dictado_visual] => 28/02/2025
[baja_habilitada] => 1
[tiene_cupo] => S
[cupo] => 0
[inscripcion_cerrada] => N
[inscripcion_cerrada_codigo] =>
[cant_inscriptos] => 0
[modalidad] => A distancia/Presencial
[dias_semana] =>
)
)
El plan y la actividad son cobrables, debería ser solo la actividad y comisión cobrables.
Saludos.
2