diff --git a/app/scodoc/sco_page_etud.py b/app/scodoc/sco_page_etud.py
index 5fe3561c988ae127e373ba924783fbec10004634..6c8b08b2c5e01b839407b8906636bfac28adc121 100644
--- a/app/scodoc/sco_page_etud.py
+++ b/app/scodoc/sco_page_etud.py
@@ -462,7 +462,10 @@ def fiche_etud(etudid=None):
# Liens vers compétences BUT
if last_formsemestre and last_formsemestre.formation.is_apc():
- but_cursus = cursus_but.EtudCursusBUT(etud, last_formsemestre.formation)
+ try:
+ but_cursus = cursus_but.EtudCursusBUT(etud, last_formsemestre.formation)
+ except ScoValueError:
+ but_cursus = None
refcomp = last_formsemestre.formation.referentiel_competence
if refcomp:
ue_validation_by_niveau = validations_view.get_ue_validation_by_niveau(
@@ -494,7 +497,7 @@ def fiche_etud(etudid=None):
cursus=but_cursus,
scu=scu,
validation_dut120_html=validation_dut120_html,
- )}
+ ) if but_cursus else '<span class="pb-config">problème configuration formation BUT</span>'}
<div class="fiche_but_col2">
<div class="link_validation_rcues">
<a class="stdlink" href="{url_for("notes.validation_rcues",
diff --git a/app/static/css/scodoc.css b/app/static/css/scodoc.css
index 4974a4e176e77816f9c46846315d3a5d43928ea0..0b4a1af6deacbe9561e5a934455cfb2667d0f919 100644
--- a/app/static/css/scodoc.css
+++ b/app/static/css/scodoc.css
@@ -963,6 +963,11 @@ div.section_but {
justify-content: space-evenly;
}
+div.section_but .pb-config {
+ font-style: italic;
+ color: red;
+}
+
div.fiche_but_col2 {
display: flex;
flex-direction: column;
diff --git a/app/static/js/releve-but.js b/app/static/js/releve-but.js
index 2523b227f7ee0f36b51d660142c8896607ed4c8d..3f7784b704bbfa6ff9bd59e16a99d9c9741bfe2d 100644
--- a/app/static/js/releve-but.js
+++ b/app/static/js/releve-but.js
@@ -276,7 +276,7 @@ class releveBUT extends HTMLElement {
${(() => {
let output = "";
data.semestre.decision_rcue.forEach((competence) => {
- output += `<div class=competence>${competence.niveau.competence.titre}</div><div>${competence.code}</div>`;
+ output += `<div class=competence>${competence.niveau?.competence?.titre || '?'}</div><div>${competence.code}</div>`;
});
return output;
})()}