No, no hay duplicados en esa consulta.
Lo pude solucionar modificando el procedure sp_arau_nominal porque el error estaba cuando ejecutaba el sp_plan_de_alumno
así que modifiqué el foreach del select que sacaba los datos para que tome el plan de ahí
SELECT
a.unidad_academica,
a.carrera,
a.legajo,
a.plan,
a.nro_inscripcion,
p.tipo_documento,
p.nro_documento,
p.numero_cuil,
a.sede
INTO vcUa, vcCarrera, vcLegajo, vcPlan, vcNroInscripcion, viTipoDocumento, vcNroDocumento, vcCuit, vcSede
FROM
sga_alumnos as a,
sga_carrera_aspira as ca,
sga_periodo_insc as pi,
sga_personas as p,
sga_situacion_asp as sa
WHERE a.calidad IN (‘A’,‘P’,‘E’,‘N’)
AND ca.unidad_academica = a.unidad_academica
AND ca.nro_inscripcion = a.nro_inscripcion
AND ca.carrera = a.carrera
AND sa.situacion_asp = ca.situacion_asp
AND sa.resultado_asp IN (‘I’, ‘A’)
– AND sa.situacion_asp IN (‘IL’, ‘IC’,‘AC’)
AND pi.periodo_inscripcio = ca.periodo_inscripcio
AND pi.anio_academico <=pAnioAcademico
AND p.unidad_academica = a.unidad_academica
AND p.nro_inscripcion = a.nro_inscripcion
– Recupero el plan a la fecha de inicio del periodo lectivo
– EXECUTE PROCEDURE sp_plan_de_alumno( vcUa, vcCarrera, vcLegajo, ld_FechaIniAA) INTO vcPlan, vcVersion;