Hola Sabrina,
¿que te devuelve si ejecutas la siguiente query?
SELECT
vw_insc_cursada.inscripcion,
vw_insc_cursada.alumno,
vw_insc_cursada.estado,
vw_insc_cursada.fecha_inscripcion,
vw_insc_cursada.nro_transaccion,
sga_comisiones.elemento,
vw_actividades_plan.codigo AS codigo_actividad,
vw_actividades_plan.nombre AS actividad_nombre,
sga_comisiones.comision,
sga_comisiones_cupo.cupo,
sga_comisiones_cupo.cant_inscriptos,
f_docentes_comision(sga_comisiones.comision, true) AS comision_docentes,
(SELECT COUNT(sga_subcomisiones.subcomision)
FROM sga_subcomisiones
WHERE sga_subcomisiones.comision = sga_comisiones.comision
) AS cant_subcomisiones,
sga_alumnos.persona,
sga_alumnos.plan_version,
sga_alumnos.propuesta,
sga_comisiones.nombre AS comision_nombre,
sga_ubicaciones.nombre AS ubicacion_nombre,
sga_turnos_cursadas.nombre AS turno_nombre,
vw_personas.apellido_nombres AS apellido_y_nombres,
vw_personas.apellido,
vw_personas.nombres,
vw_personas.documento,
vw_personas.tipo_documento,
vw_personas.tipo_nro_documento AS alumno_identificacion,
sga_alumnos.legajo,
sga_propuestas.nombre AS propuesta_nombre
FROM
vw_insc_cursada
JOIN sga_alumnos ON vw_insc_cursada.alumno = sga_alumnos.alumno
JOIN vw_personas ON sga_alumnos.persona = vw_personas.persona
JOIN sga_propuestas ON sga_alumnos.propuesta = sga_propuestas.propuesta
JOIN sga_comisiones ON vw_insc_cursada.comision = sga_comisiones.comision
JOIN vw_actividades_plan ON (sga_comisiones.elemento = vw_actividades_plan.elemento AND vw_insc_cursada.plan_version = vw_actividades_plan.plan_version)
JOIN sga_ubicaciones ON sga_comisiones.ubicacion = sga_ubicaciones.ubicacion
JOIN vw_periodos_lectivos ON sga_comisiones.periodo_lectivo = vw_periodos_lectivos.periodo_lectivo
JOIN sga_comisiones_cupo ON sga_comisiones.comision = sga_comisiones_cupo.comision
LEFT JOIN sga_turnos_cursadas ON sga_comisiones.turno = sga_turnos_cursadas.turno
LEFT JOIN sga_catedras ON sga_comisiones.catedra = sga_catedras.catedra
WHERE
vw_insc_cursada.prioridad = 1
AND vw_periodos_lectivos.fecha_tope_movimientos >= CURRENT_DATE
AND vw_insc_cursada.nro_transaccion = 640683
ORDER BY
sga_comisiones.comision,
vw_personas.apellido,
vw_personas.nombres;
La cual es la que se llama en la función guardar de la clase php/nucleo/cursadas/inscripciones/cn_man_inscripcion_cursadas.php donde hace:
$datos = toba::consulta_php('co_inscripciones_cursadas')->get_listado_alumnos_inscripciones_a_comisiones('vw_insc_cursada.nro_transaccion = ' . $nro_transaccion);
Luego cuando hace la siguiente query ya la hace mal porque no filtra por persona en el WHERE:
$parametros['email'] = toba::consulta_php('co_personas')->get_emails_personas([$fila['persona']]);
SELECT persona,
COALESCE(( SELECT email
FROM mdp_personas_contactos
WHERE mdp_personas_contactos.persona = mdp_personas.persona
AND contacto_tipo IN ('MP', 'MS', 'MI')
ORDER BY contacto_tipo = 'MP' DESC, contacto_tipo = 'MS' DESC, contacto_tipo = 'MI' DESC
LIMIT 1),
'') AS email
FROM mdp_personas
WHERE
recibe_mensajes_x_mail = 1 AND
false;
saludos.
2