diff --git a/app/scodoc/sco_apogee_csv.py b/app/scodoc/sco_apogee_csv.py index 6ac6d5ec4..633cfbebd 100644 --- a/app/scodoc/sco_apogee_csv.py +++ b/app/scodoc/sco_apogee_csv.py @@ -300,6 +300,11 @@ class ApoEtud(dict): return "ApoEtud( nom='%s', nip='%s' )" % (self["nom"], self["nip"]) def lookup_scodoc(self, context, etape_formsemestre_ids): + """Cherche l'étudiant ScoDoc associé à cet étudiant Apogée. + S'il n'est pas trouvé (état "orphelin", dans Apo mais pas chez nous), + met .etud à None. + Sinon, cherche le semestre, et met l'état à ETUD_OK ou ETUD_NON_INSCRIT. + """ etuds = sco_etud.get_etud_info(code_nip=self["nip"], filled=True) if not etuds: # pas dans ScoDoc @@ -417,7 +422,7 @@ class ApoEtud(dict): code in sem["elt_annee_apo"].split(",") ): export_res_etape = self.export_res_etape - if not export_res_etape: + if (not export_res_etape) and cur_sem: # exporte toujours le résultat de l'étape si l'étudiant est diplômé Se = sco_parcours_dut.SituationEtudParcours( context, self.etud, cur_sem["formsemestre_id"]