Utilise NA pour les notes manquants (et plus NA0, ...)
This commit is contained in:
parent
e249f45ce9
commit
3878d68b38
@ -630,7 +630,8 @@ class NotesTable(object):
|
|||||||
matiere_sum_notes += val * coef
|
matiere_sum_notes += val * coef
|
||||||
matiere_sum_coefs += coef
|
matiere_sum_coefs += coef
|
||||||
matiere_id_last = matiere_id
|
matiere_id_last = matiere_id
|
||||||
except:
|
except: # val == "NI" "NA"
|
||||||
|
assert val == "NI" or val == "NA"
|
||||||
nb_missing = nb_missing + 1
|
nb_missing = nb_missing + 1
|
||||||
coefs.append(0)
|
coefs.append(0)
|
||||||
coefs_mask.append(0)
|
coefs_mask.append(0)
|
||||||
@ -728,9 +729,7 @@ class NotesTable(object):
|
|||||||
|
|
||||||
Prend toujours en compte les UE capitalisées.
|
Prend toujours en compte les UE capitalisées.
|
||||||
"""
|
"""
|
||||||
# log('comp_etud_moy_gen(etudid=%s)' % etudid)
|
# Si l'étudiant a Démissionné ou est DEFaillant, on n'enregistre pas ses moyennes
|
||||||
|
|
||||||
# Si l'étudiant a Demissionné ou est DEFaillant, on n'enregistre pas ses moyennes
|
|
||||||
block_computation = (
|
block_computation = (
|
||||||
self.inscrdict[etudid]["etat"] == "D"
|
self.inscrdict[etudid]["etat"] == "D"
|
||||||
or self.inscrdict[etudid]["etat"] == DEF
|
or self.inscrdict[etudid]["etat"] == DEF
|
||||||
|
@ -160,7 +160,7 @@ def compute_user_formula(
|
|||||||
# log('expression : %s\nvariables=%s\n' % (formula, variables)) # debug
|
# log('expression : %s\nvariables=%s\n' % (formula, variables)) # debug
|
||||||
user_moy = sco_formulas.eval_user_expression(formula, variables)
|
user_moy = sco_formulas.eval_user_expression(formula, variables)
|
||||||
# log('user_moy=%s' % user_moy)
|
# log('user_moy=%s' % user_moy)
|
||||||
if user_moy != "NA0" and user_moy != "NA":
|
if user_moy != "NA":
|
||||||
user_moy = float(user_moy)
|
user_moy = float(user_moy)
|
||||||
if (user_moy > 20) or (user_moy < 0):
|
if (user_moy > 20) or (user_moy < 0):
|
||||||
etud = sco_etud.get_etud_info(etudid=etudid, filled=True)[0]
|
etud = sco_etud.get_etud_info(etudid=etudid, filled=True)[0]
|
||||||
@ -295,15 +295,17 @@ def compute_moduleimpl_moyennes(nt, modimpl):
|
|||||||
# il manque une note ! (si publish_incomplete, cela peut arriver, on ignore)
|
# il manque une note ! (si publish_incomplete, cela peut arriver, on ignore)
|
||||||
if e["coefficient"] > 0 and not e["publish_incomplete"]:
|
if e["coefficient"] > 0 and not e["publish_incomplete"]:
|
||||||
nb_missing += 1
|
nb_missing += 1
|
||||||
|
# ne devrait pas arriver ?
|
||||||
|
log("\nXXX SCM298\n")
|
||||||
if nb_missing == 0 and sum_coefs > 0:
|
if nb_missing == 0 and sum_coefs > 0:
|
||||||
if sum_coefs > 0:
|
if sum_coefs > 0:
|
||||||
R[etudid] = sum_notes / sum_coefs
|
R[etudid] = sum_notes / sum_coefs
|
||||||
moy_valid = True
|
moy_valid = True
|
||||||
else:
|
else:
|
||||||
R[etudid] = "na"
|
R[etudid] = "NA"
|
||||||
moy_valid = False
|
moy_valid = False
|
||||||
else:
|
else:
|
||||||
R[etudid] = "NA%d" % nb_missing
|
R[etudid] = "NA"
|
||||||
moy_valid = False
|
moy_valid = False
|
||||||
|
|
||||||
if user_expr:
|
if user_expr:
|
||||||
@ -361,7 +363,7 @@ def compute_moduleimpl_moyennes(nt, modimpl):
|
|||||||
if eval_rattr["evaluation_type"] == EVALUATION_RATTRAPAGE:
|
if eval_rattr["evaluation_type"] == EVALUATION_RATTRAPAGE:
|
||||||
# rattrapage classique: prend la meilleure note entre moyenne
|
# rattrapage classique: prend la meilleure note entre moyenne
|
||||||
# module et note eval rattrapage
|
# module et note eval rattrapage
|
||||||
if (R[etudid] == "NA0") or (note_sur_20 > R[etudid]):
|
if (R[etudid] == "NA") or (note_sur_20 > R[etudid]):
|
||||||
# log('note_sur_20=%s' % note_sur_20)
|
# log('note_sur_20=%s' % note_sur_20)
|
||||||
R[etudid] = note_sur_20
|
R[etudid] = note_sur_20
|
||||||
elif eval_rattr["evaluation_type"] == EVALUATION_SESSION2:
|
elif eval_rattr["evaluation_type"] == EVALUATION_SESSION2:
|
||||||
|
@ -669,11 +669,11 @@ def make_formsemestre_recapcomplet(
|
|||||||
else:
|
else:
|
||||||
cells = '<tr class="recap_row_odd" id="etudid%s">' % etudid
|
cells = '<tr class="recap_row_odd" id="etudid%s">' % etudid
|
||||||
ir += 1
|
ir += 1
|
||||||
# XXX nsn = [ x.replace('NA0', '-') for x in l[:-2] ]
|
# XXX nsn = [ x.replace('NA', '-') for x in l[:-2] ]
|
||||||
# notes sans le NA0:
|
# notes sans le NA:
|
||||||
nsn = l[:-2] # copy
|
nsn = l[:-2] # copy
|
||||||
for i in range(len(nsn)):
|
for i in range(len(nsn)):
|
||||||
if nsn[i] == "NA0":
|
if nsn[i] == "NA":
|
||||||
nsn[i] = "-"
|
nsn[i] = "-"
|
||||||
cells += '<td class="recap_col">%s</td>' % nsn[0] # rang
|
cells += '<td class="recap_col">%s</td>' % nsn[0] # rang
|
||||||
cells += '<td class="recap_col">%s</td>' % el # nom etud (lien)
|
cells += '<td class="recap_col">%s</td>' % el # nom etud (lien)
|
||||||
|
@ -280,7 +280,7 @@ def get_etud_tagged_modules(etudid, tagname):
|
|||||||
R.append(
|
R.append(
|
||||||
{
|
{
|
||||||
"sem": sem,
|
"sem": sem,
|
||||||
"moy": moy, # valeur réelle, ou NI (non inscrit au module ou NA0 (pas de note)
|
"moy": moy, # valeur réelle, ou NI (non inscrit au module ou NA (pas de note)
|
||||||
"moduleimpl": modimpl,
|
"moduleimpl": modimpl,
|
||||||
"tags": tags,
|
"tags": tags,
|
||||||
}
|
}
|
||||||
|
@ -132,7 +132,7 @@ def fmt_note(val, note_max=None, keep_numeric=False):
|
|||||||
s = "0" * (5 - len(s)) + s # padding: 0 à gauche pour longueur 5: "12.34"
|
s = "0" * (5 - len(s)) + s # padding: 0 à gauche pour longueur 5: "12.34"
|
||||||
return s
|
return s
|
||||||
else:
|
else:
|
||||||
return val.replace("NA0", "-") # notes sans le NA0
|
return val.replace("NA", "-")
|
||||||
|
|
||||||
|
|
||||||
def fmt_coef(val):
|
def fmt_coef(val):
|
||||||
|
Loading…
Reference in New Issue
Block a user