diff --git a/sco_apogee_csv.py b/sco_apogee_csv.py index 59382af5..770ac631 100644 --- a/sco_apogee_csv.py +++ b/sco_apogee_csv.py @@ -285,6 +285,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 = context.getEtudInfo(code_nip=self["nip"], filled=True) if not etuds: # pas dans ScoDoc @@ -400,7 +405,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"]