Compare commits

...

5 Commits

Author SHA1 Message Date
Jean-Marie PLACE 52a5fb68b5 add IUT LILLE logo 2022-03-03 18:24:53 +01:00
Jean-Marie PLACE b99839088b change templates 2022-03-03 18:24:52 +01:00
Jean-Marie PLACE aa0f9aab77 fichier des annotations multi ecoles 2022-03-03 18:24:52 +01:00
Jean-Marie PLACE a644fd2584 reprise pe 2022-03-03 18:24:47 +01:00
Jean-Marie PLACE 23b2c9ebce read multiple annotations 2022-03-03 18:17:58 +01:00
9 changed files with 402 additions and 166 deletions

View File

@ -218,6 +218,17 @@ def get_code_latex_avis_etudiant(
return code
def get_annotations(etudids, tag_annotation_pe):
annotations = {} # etudid -> ( general, [ ecole -> specifique ] )
ecoles = set()
for etudid in etudids: # parcours des étudiants
generale, specifiques = get_annotation_PE(etudid, tag_annotation_pe)
annotations[etudid] = (generale, specifiques)
for ecole in specifiques.keys():
ecoles.add(ecole)
return ecoles, annotations
# ----------------------------------------------------------------------------------------
def get_annotation_PE(etudid, tag_annotation_pe):
"""Renvoie l'annotation PE dans la liste de ces annotations ;
@ -225,6 +236,8 @@ def get_annotation_PE(etudid, tag_annotation_pe):
(cf. .get_preferences -> pe_tag_annotation_avis_latex).
Result: chaine unicode
patch JMP
Result: <generale> { <ecole> : wspecifique> }
"""
if tag_annotation_pe:
cnx = ndb.GetDBConnexion()
@ -255,8 +268,14 @@ def get_annotation_PE(etudid, tag_annotation_pe):
annotationPE = annotationPE.replace(
"<br/>", "\n\n"
) # Interprète les retours chariots html
return annotationPE
return "" # pas d'annotations
splitted = annotationPE.split("@")
generale = splitted[0]
specifiques = {}
for slice in splitted[1:]:
ecole, specifique = slice.split(":", 1)
specifiques[ecole] = specifique
return generale, specifiques
return "", {} # pas d'annotations
# ----------------------------------------------------------------------------------------
@ -381,22 +400,58 @@ def get_bilanParTag(donnees_etudiant, groupe="groupe"):
return code_latex
# ----------------------------------------------------------------------------------------
def get_avis_poursuite_par_etudiant(
jury, etudid, template_latex, tag_annotation_pe, footer_latex, prefs
):
if pe_tools.PE_DEBUG:
pe_tools.pe_print(
"avis etudiant: " + jury.syntheseJury[etudid]["nom"] + " " + str(etudid)
)
generale, specifiques = get_annotation_PE(etudid, tag_annotation_pe)
results = []
if len(specifiques) == 0:
annotation = generale
results.append(
get_avis_poursuite_par_candidature(
jury, template_latex, footer_latex, prefs, etudid, annotation
)
)
else:
for ecole, specifique in specifiques.items():
annotation = f"{generale}\n{ecole}:{specifique}"
results.append(
get_avis_poursuite_par_candidature(
jury, template_latex, footer_latex, prefs, etudid, annotation, ecole
)
)
return results
# candidature = etudiant x ecole
# ----------------------------------------------------------------------------------------
def get_avis_poursuite_par_candidature(
jury, template_latex, footer_latex, prefs, etudid, annotation, ecole=""
):
"""Renvoie un nom de fichier et le contenu de l'avis latex d'un étudiant dont l'etudid est fourni.
result: [ chaine unicode, chaine unicode ]
"""
if pe_tools.PE_DEBUG:
pe_tools.pe_print(jury.syntheseJury[etudid]["nom"] + " " + str(etudid))
pe_tools.pe_print(
"avis candidature: "
+ jury.syntheseJury[etudid]["nom"]
+ " "
+ str(etudid)
+ " "
+ ecole
)
civilite_str = jury.syntheseJury[etudid]["civilite_str"]
nom = jury.syntheseJury[etudid]["nom"].replace(" ", "-")
prenom = jury.syntheseJury[etudid]["prenom"].replace(" ", "-")
nom_fichier = scu.sanitize_filename(
"avis_poursuite_%s_%s_%s" % (nom, prenom, etudid)
"avis_poursuite_%s_%s_%s_%s" % (nom, prenom, etudid, ecole)
)
if pe_tools.PE_DEBUG:
pe_tools.pe_print("fichier latex =" + nom_fichier, type(nom_fichier))
@ -406,19 +461,14 @@ def get_avis_poursuite_par_etudiant(
"%% ---- Etudiant: " + civilite_str + " " + nom + " " + prenom + "\n"
)
# les annnotations
annotationPE = get_annotation_PE(etudid, tag_annotation_pe=tag_annotation_pe)
if pe_tools.PE_DEBUG:
pe_tools.pe_print(annotationPE, type(annotationPE))
# le LaTeX
avis = get_code_latex_avis_etudiant(
jury.syntheseJury[etudid], template_latex, annotationPE, footer_latex, prefs
jury.syntheseJury[etudid], template_latex, annotation, footer_latex, prefs
)
# if pe_tools.PE_DEBUG: pe_tools.pe_print(avis, type(avis))
contenu_latex += avis + "\n"
return [nom_fichier, contenu_latex]
return nom_fichier, contenu_latex
def get_templates_from_distrib(template="avis"):
@ -472,12 +522,16 @@ def table_syntheseAnnotationPE(syntheseJury, tag_annotation_pe):
maxParcours = max(
[syntheseJury[etudid]["nbSemestres"] for etudid in etudids]
) # le nombre de semestre le + grand
# calcul de l'inventaire des annotations
ecoles, annotations = get_annotations(etudids, tag_annotation_pe)
infos = ["civilite", "nom", "prenom", "age", "nbSemestres"]
entete = ["etudid"]
entete.extend(infos)
entete.extend(["P%d" % i for i in range(1, maxParcours + 1)]) # ajout du parcours
entete.append("Annotation PE")
for ecole in sorted(ecoles):
entete.append(ecole)
columns_ids = entete # les id et les titres de colonnes sont ici identiques
titles = {i: i for i in columns_ids}
@ -502,8 +556,10 @@ def table_syntheseAnnotationPE(syntheseJury, tag_annotation_pe):
n += 1
# L'annotation PE
annotationPE = get_annotation_PE(etudid, tag_annotation_pe=tag_annotation_pe)
row["Annotation PE"] = annotationPE if annotationPE else ""
generale, specifiques = annotations[etudid]
row["Annotation PE"] = generale
for ecole in sorted(ecoles):
row[ecole] = specifiques.get(ecole, "")
rows.append(row)
T = GenTable(

View File

@ -623,7 +623,7 @@ class JuryPE(object):
u" - %d étudiants classés " % (nbinscrit)
+ ": "
+ ",".join(
[etudid for etudid in self.semTagDict[fid].get_etudids()]
[str(etudid) for etudid in self.semTagDict[fid].get_etudids()]
)
)
if lesEtudidsManquants:
@ -631,7 +631,7 @@ class JuryPE(object):
u" - dont %d étudiants manquants ajoutés aux données du jury"
% (len(lesEtudidsManquants))
+ ": "
+ ", ".join(lesEtudidsManquants)
+ ", ".join(str(lesEtudidsManquants))
)
pe_tools.pe_print(u" - Export csv")
filename = self.NOM_EXPORT_ZIP + self.semTagDict[fid].nom + ".csv"

View File

@ -265,7 +265,7 @@ class TableTag(object):
for etudid in self.identdict:
descr = delim.join(
[
etudid,
str(etudid),
self.identdict[etudid]["nom"],
self.identdict[etudid]["prenom"],
]

View File

@ -48,7 +48,7 @@ import app.scodoc.sco_utils as scu
from app import log
from app.scodoc.sco_logos import find_logo
PE_DEBUG = 0
PE_DEBUG = 1
if not PE_DEBUG:
# log to notes.log
@ -56,6 +56,7 @@ if not PE_DEBUG:
# kw is ignored. log always add a newline
log(" ".join(a))
else:
pe_print = print # print function
@ -203,12 +204,12 @@ def add_pe_stuff_to_zip(zipfile, ziproot):
add_local_file_to_zip(zipfile, ziproot, pathname, "avis/" + filename)
# Logos: (add to logos/ directory in zip)
logos_names = ["header", "footer"]
logos_names = ["header", "footer", "IUT_LILLE"]
for name in logos_names:
logo = find_logo(logoname=name, dept_id=g.scodoc_dept_id)
if logo is not None:
add_local_file_to_zip(
zipfile, ziproot, logo.filepath, "avis/logos/" + logo.filename
zipfile, ziproot, logo.filepath, "avis/logos/logo_" + logo.filename
)

View File

@ -145,16 +145,17 @@ def pe_view_sem_recap(
latex_pages = {} # Dictionnaire de la forme nom_fichier => contenu_latex
for etudid in etudids:
[nom_fichier, contenu_latex] = pe_avislatex.get_avis_poursuite_par_etudiant(
for fichier_latex in pe_avislatex.get_avis_poursuite_par_etudiant(
jury,
etudid,
template_latex,
tag_annotation_pe,
footer_latex,
prefs,
)
jury.add_file_to_zip("avis/" + nom_fichier + ".tex", contenu_latex)
latex_pages[nom_fichier] = contenu_latex # Sauvegarde dans un dico
):
nom_fichier, contenu_latex = fichier_latex
jury.add_file_to_zip("avis/" + nom_fichier + ".tex", contenu_latex)
latex_pages[nom_fichier] = contenu_latex # Sauvegarde dans un dico
# Nouvelle version : 1 fichier par étudiant avec 1 fichier appelant créée ci-dessous
doc_latex = "\n% -----\n".join(

View File

@ -0,0 +1,164 @@
%% Original : Cléo BARAS
%%
%% Template LaTeX des avis
%%
%% Version 1.0
%%
%% Ce fichier est distribué par ScoDoc
%%
%% Si vous voulez le modifier sur le serveur, copiez le dans
%% ../local/
%% et éditez votre copie dans local.
%%
% Ce document est n'est pas utilisé si le paramètre eTemplate LaTeX des avis" est rempli.
% ************************************************************
% En-tête de l'avis
% ************************************************************
\begin{entete}{logos/header}
\textbf{\Huge{Avis de Poursuites d'Etudes}} \\
\ligne \\
\normalsize{Département **DeptFullName**} \\
\normalsize{**InstituteName**} \\
\end{entete}
\begin{nom}
**sexe** **prenom** **nom** (**age** ans)
\end{nom}
% ************************************************************
% Parcours scolaire de l'étudiant
% ************************************************************
\begin{rubrique}{Parcours scolaire}
% TIMELINE
**parcourstimeline**
{
\scriptsize
\textbf{Guide de lecture} :
$\bullet$ Les options de la formation: FI = initiale, UFA = alternance (contrat pro), ENEPS = École nationale de l'enseignement professionnel supérieur
}
\end{rubrique}
% ************************************************************
% Bilan scolaire
% ************************************************************
\begin{rubrique}{Bilan scolaire synthétique}
\begin{tabular}{|p{0.08\textwidth}|p{0.11\textwidth}|*{8}{p{0.07\textwidth}|}}
% Titres des colonnes
\hline & \textbf{Resultats} & \multicolumn{4}{c|}{\textbf{Dans le groupe}\textdagger}
& \multicolumn{4}{c|}{\textbf{Dans la promo}\textdagger} \\
& & Class. & Min & Moy & Max
& Class. & Min & Moy & Max \\
\hline
\hline S1 & **S1:groupe:dut:note** & **S1:groupe:dut:rang**
& {\scriptsize **S1:groupe:dut:min**}
& {\scriptsize **S1:groupe:dut:moy**}
& {\scriptsize **S1:groupe:dut:max**}
& **S1:promo:dut:rang**
& {\scriptsize **S1:promo:dut:min**}
& {\scriptsize **S1:promo:dut:moy**}
& {\scriptsize **S1:promo:dut:max**} \\
\hline S2 & **S2:groupe:dut:note** & **S2:groupe:dut:rang**
& {\scriptsize **S2:groupe:dut:min**}
& {\scriptsize **S2:groupe:dut:moy**}
& {\scriptsize **S2:groupe:dut:max**}
& **S2:promo:dut:rang**
& {\scriptsize **S2:promo:dut:min**}
& {\scriptsize **S2:promo:dut:moy**}
& {\scriptsize **S2:promo:dut:max**} \\
\hline
\hline \cellcolor{black!20} 1A & **1A:groupe:dut:note** & **1A:groupe:dut:rang**
& {\scriptsize **1A:groupe:dut:min**}
& {\scriptsize **1A:groupe:dut:moy**}
& {\scriptsize **1A:groupe:dut:max**}
& **1A:promo:dut:rang**
& {\scriptsize **1A:promo:dut:min**}
& {\scriptsize **1A:promo:dut:moy**}
& {\scriptsize **1A:promo:dut:max**} \\
\hline
\hline S3 & **S3:groupe:dut:note** & **S3:groupe:dut:rang**
& {\scriptsize **S3:groupe:dut:min**}
& {\scriptsize **S3:groupe:dut:moy**}
& {\scriptsize **S3:groupe:dut:max**}
& **S3:promo:dut:rang**
& {\scriptsize **S3:promo:dut:min**}
& {\scriptsize **S3:promo:dut:moy**}
& {\scriptsize **S3:promo:dut:max**} \\
\hline S4* & **S4:groupe:dut:note** & **S4:groupe:dut:rang**
& {\scriptsize **S4:groupe:dut:min**}
& {\scriptsize **S4:groupe:dut:moy**}
& {\scriptsize **S4:groupe:dut:max**}
& **S4:promo:dut:rang**
& {\scriptsize **S4:promo:dut:min**}
& {\scriptsize **S4:promo:dut:moy**}
& {\scriptsize **S4:promo:dut:max**} \\
\hline
\hline \cellcolor{black!20} 2A* & **2A:groupe:dut:note** & **2A:groupe:dut:rang**
& {\scriptsize **2A:groupe:dut:min**}
& {\scriptsize **2A:groupe:dut:moy**}
& {\scriptsize **2A:groupe:dut:max**}
& **2A:promo:dut:rang**
& {\scriptsize **2A:promo:dut:min**}
& {\scriptsize **2A:promo:dut:moy**}
& {\scriptsize **2A:promo:dut:max**} \\
\hline
\hline DUT* & **4S:groupe:dut:note** & **4S:groupe:dut:rang**
& {\scriptsize **4S:groupe:dut:min**}
& {\scriptsize **4S:groupe:dut:moy**}
& {\scriptsize **4S:groupe:dut:max**}
& **4S:promo:dut:rang**
& {\scriptsize **4S:promo:dut:min**}
& {\scriptsize **4S:promo:dut:moy**}
& {\scriptsize **4S:promo:dut:max**} \\
\hline
\end{tabular}
\begin{minipage}{\textwidth}
\scriptsize
\textbf{Guide de lecture} : * Sur notes disponibles ; \textdagger~Le groupe est l'ensemble des étudiants ayant suivi le même semestre que **prenom** **nom** alors que la promo est l'ensemble des étudiants recevant le diplôme de DUT à la même date que **prenom** **nom** (ayant donc des parcours potentiellement différents)
\end{minipage}
\end{rubrique}
% ************************************************************
% Avis de poursuite d'études manuscrit ou saisi dans les
% annotations de l'étudiant
% ************************************************************
\begin{rubrique}{Avis du jury de Poursuites d'Etudes}
**annotation**
\end{rubrique}
\newpage % Saut de page
% ------------------------------------------------------------
% ************************************************************
% Bilan automatisé par matières
% ************************************************************
\begin{rubrique}{Bilan par matières}
**bilanParTag**
\end{rubrique}
% ************************************************************
% Signature
% ************************************************************
\begin{rubrique}{Cachet de l'établissement}
\begin{flushright}
Le~\today,\\
**NomResponsablePE**~\\
\textit{Responsable des Poursuites d'Études du département **DeptName**}
\end{flushright}
\vspace{0.5cm}
\end{rubrique}
% Le pied de page (indiqué dans les paramètres ScoDoc) vient après cette ligne

View File

@ -1,164 +1,178 @@
%% Original : Cléo BARAS
%%
%% Template LaTeX des avis
%% Deux tableaux sur deux pages
%%
%%
%% Version 1.0
%%
%% Ce fichier est distribué par ScoDoc
%%
%% Si vous voulez le modifier sur le serveur, copiez le dans
%% ../local/
%% et éditez votre copie dans local.
%%
% Ce document est n'est pas utilisé si le paramètre eTemplate LaTeX des avis" est rempli.
% ************************************************************
% En-tête de l'avis
\begin{entete}{logos/logo_IUT_Lille}
\textbf{\Huge{Avis de Poursuites d'Etudes}} \\
\ligne \\
\normalsize{Département **DeptFullName**} \\
\normalsize{**InstituteName**} \\
\end{entete}\\
% ************************************************************
\begin{entete}{logos/header}
\textbf{\Huge{Avis de Poursuites d'Etudes}} \\
\ligne \\
\normalsize{Département **DeptFullName**} \\
\normalsize{**InstituteName**} \\
\end{entete}
\begin{nom}
**sexe** **prenom** **nom** (**age** ans)
\end{nom}
\end{nom}\\
% ************************************************************
% Parcours scolaire de l'étudiant
% ************************************************************
\begin{rubrique}{Parcours scolaire}
% TIMELINE
**parcourstimeline**
{
\scriptsize
\textbf{Guide de lecture} :
$\bullet$ Les options de la formation: FI = initiale, UFA = alternance (contrat pro), ENEPS = École nationale de l'enseignement professionnel supérieur
}
**parcourstimeline**
\end{rubrique}
% ************************************************************
% Bilan scolaire
% ************************************************************
\begin{rubrique}{Bilan scolaire synthétique}
\begin{tabular}{|p{0.08\textwidth}|p{0.11\textwidth}|*{8}{p{0.07\textwidth}|}}
\begin{tabular}{|p{0.11\textwidth}|p{0.11\textwidth}|*{8}{p{0.065\textwidth}|}}
% Titres des colonnes
\hline & \textbf{Resultats} & \multicolumn{4}{c|}{\textbf{Dans le groupe}\textdagger}
& \multicolumn{4}{c|}{\textbf{Dans la promo}\textdagger} \\
& & Class. & Min & Moy & Max
& Class. & Min & Moy & Max \\
\hline
\hline S1 & **S1:groupe:dut:note** & **S1:groupe:dut:rang**
& {\scriptsize **S1:groupe:dut:min**}
& {\scriptsize **S1:groupe:dut:moy**}
& {\scriptsize **S1:groupe:dut:max**}
& **S1:promo:dut:rang**
& {\scriptsize **S1:promo:dut:min**}
& {\scriptsize **S1:promo:dut:moy**}
& {\scriptsize **S1:promo:dut:max**} \\
\hline S2 & **S2:groupe:dut:note** & **S2:groupe:dut:rang**
& {\scriptsize **S2:groupe:dut:min**}
& {\scriptsize **S2:groupe:dut:moy**}
& {\scriptsize **S2:groupe:dut:max**}
& **S2:promo:dut:rang**
& {\scriptsize **S2:promo:dut:min**}
& {\scriptsize **S2:promo:dut:moy**}
& {\scriptsize **S2:promo:dut:max**} \\
& & \multicolumn{4}{c|}{\textbf{Dans le groupe}\textdagger}
& \multicolumn{4}{c|}{\textbf{Dans la promotion}\textdagger} \\
Semestres & Résultats & Class. & Min & Moy & Max
& Class. & Min & Moy & Max \\
\hline
\hline \cellcolor{black!20} 1A & **1A:groupe:dut:note** & **1A:groupe:dut:rang**
& {\scriptsize **1A:groupe:dut:min**}
& {\scriptsize **1A:groupe:dut:moy**}
& {\scriptsize **1A:groupe:dut:max**}
& **1A:promo:dut:rang**
& {\scriptsize **1A:promo:dut:min**}
& {\scriptsize **1A:promo:dut:moy**}
& {\scriptsize **1A:promo:dut:max**} \\
\hline S1
& **S1:groupe:dut:note**
& {\scriptsize **S1:groupe:dut:rang**}
& {\scriptsize **S1:groupe:dut:min**}
& {\scriptsize **S1:groupe:dut:moy**}
& {\scriptsize **S1:groupe:dut:max**}
& {\scriptsize **S1:promo:dut:rang**}
& {\scriptsize **S1:promo:dut:min**}
& {\scriptsize **S1:promo:dut:moy**}
& {\scriptsize **S1:promo:dut:max**} \\
\hline S2
& **S2:groupe:dut:note**
& {\scriptsize **S2:groupe:dut:rang**}
& {\scriptsize **S2:groupe:dut:min**}
& {\scriptsize **S2:groupe:dut:moy**}
& {\scriptsize **S2:groupe:dut:max**}
& {\scriptsize **S2:promo:dut:rang**}
& {\scriptsize **S2:promo:dut:min**}
& {\scriptsize **S2:promo:dut:moy**}
& {\scriptsize **S2:promo:dut:max**} \\
\hline S3
& **S3:groupe:dut:note**
& {\scriptsize **S3:groupe:dut:rang**}
& {\scriptsize **S3:groupe:dut:min**}
& {\scriptsize **S3:groupe:dut:moy**}
& {\scriptsize **S3:groupe:dut:max**}
& {\scriptsize **S3:promo:dut:rang**}
& {\scriptsize **S3:promo:dut:min**}
& {\scriptsize **S3:promo:dut:moy**}
& {\scriptsize **S3:promo:dut:max**} \\
\hline
\hline S3 & **S3:groupe:dut:note** & **S3:groupe:dut:rang**
& {\scriptsize **S3:groupe:dut:min**}
& {\scriptsize **S3:groupe:dut:moy**}
& {\scriptsize **S3:groupe:dut:max**}
& **S3:promo:dut:rang**
& {\scriptsize **S3:promo:dut:min**}
& {\scriptsize **S3:promo:dut:moy**}
& {\scriptsize **S3:promo:dut:max**} \\
\hline S4* & **S4:groupe:dut:note** & **S4:groupe:dut:rang**
& {\scriptsize **S4:groupe:dut:min**}
& {\scriptsize **S4:groupe:dut:moy**}
& {\scriptsize **S4:groupe:dut:max**}
& **S4:promo:dut:rang**
& {\scriptsize **S4:promo:dut:min**}
& {\scriptsize **S4:promo:dut:moy**}
& {\scriptsize **S4:promo:dut:max**} \\
\hline
\hline \cellcolor{black!20} 2A* & **2A:groupe:dut:note** & **2A:groupe:dut:rang**
& {\scriptsize **2A:groupe:dut:min**}
& {\scriptsize **2A:groupe:dut:moy**}
& {\scriptsize **2A:groupe:dut:max**}
& **2A:promo:dut:rang**
& {\scriptsize **2A:promo:dut:min**}
& {\scriptsize **2A:promo:dut:moy**}
& {\scriptsize **2A:promo:dut:max**} \\
\hline
\hline DUT* & **4S:groupe:dut:note** & **4S:groupe:dut:rang**
& {\scriptsize **4S:groupe:dut:min**}
& {\scriptsize **4S:groupe:dut:moy**}
& {\scriptsize **4S:groupe:dut:max**}
& **4S:promo:dut:rang**
& {\scriptsize **4S:promo:dut:min**}
& {\scriptsize **4S:promo:dut:moy**}
& {\scriptsize **4S:promo:dut:max**} \\
\hline
\end{tabular}
\begin{minipage}{\textwidth}
\scriptsize
\textbf{Guide de lecture} : * Sur notes disponibles ; \textdagger~Le groupe est l'ensemble des étudiants ayant suivi le même semestre que **prenom** **nom** alors que la promo est l'ensemble des étudiants recevant le diplôme de DUT à la même date que **prenom** **nom** (ayant donc des parcours potentiellement différents)
\end{tabular}\\
\begin{minipage}{0.9\textwidth}
\scriptsize
\textbf{Guide de lecture} : %* Sur notes disponibles ;
\textdagger~Le groupe est l'ensemble des étudiants ayant suivi le même semestre que **prenom** **nom** alors que la promo est l'ensemble des étudiants recevant le diplôme de DUT à la même date que **prenom** **nom** (ayant donc des parcours potentiellement différents)
\end{minipage}
\end{rubrique}
\end{rubrique}\\
% ************************************************************
% Avis de poursuite d'études manuscrit ou saisi dans les
% annotations de l'étudiant
\def\CaseACocher{\ensuremath{\;\begin{tikzpicture} \draw (0,0) rectangle (0.4,0.4); \end{tikzpicture}\;}}
\def\cg{\cellcolor{black!20}}
% ************************************************************
\begin{rubrique}{Avis du jury de Poursuites d'Études}
\begin{rubrique}{Avis du jury de Poursuites d'Etudes}
**annotation**
\end{rubrique}
\newpage % Saut de page
% ------------------------------------------------------------
% ************************************************************
% Bilan automatisé par matières
\newpage
% ************************************************************
\begin{rubrique}{Bilan par matières de **sexe** **prenom** **nom** }
\begin{center}
\def\si#1{\scriptsize \textit{#1}}
\begin{tabular}{|p{100mm}||c|c|c|c|}
\hline
& \textbf{S1} & \textbf{S2} & \textbf{S3} & \textbf{S1+S2+S3} \\
\hline\hline
\textbf{électrotechnique}
& **S1:groupe:electrotechnique:note** & **S2:groupe:electrotechnique:note**
& **S3:groupe:electrotechnique:note** & **3S:groupe:electrotechnique:note** \\
& \si{**S1:groupe:electrotechnique:rang**} & \si{**S2:groupe:electrotechnique:rang**}
& \si{**S3:groupe:electrotechnique:rang**} & \si{**3S:groupe:electrotechnique:rang**} \\
\hline
\textbf{électronique}
& **S1:groupe:electronique:note** & **S2:groupe:electronique:note**
& **S3:groupe:electronique:note** & **3S:groupe:electronique:note** \\
& \si{**S1:groupe:electronique:rang**} & \si{**S2:groupe:electronique:rang**}
& \si{**S3:groupe:electronique:rang**} & \si{**3S:groupe:electronique:rang**} \\
\hline
\textbf{automatisme et informatique industrielle}
& **S1:groupe:automatisme et informatique industrielle:note** & **S2:groupe:automatisme et informatique industrielle:note**
& **S3:groupe:automatisme et informatique industrielle:note** & **3S:groupe:automatisme et informatique industrielle:note** \\
& \si{**S1:groupe:automatisme et informatique industrielle:rang**} & \si{**S2:groupe:automatisme et informatique industrielle:rang**}
& \si{**S3:groupe:automatisme et informatique industrielle:rang**} & \si{**3S:groupe:automatisme et informatique industrielle:rang**} \\
\hline
\textbf{projets et réalisations}
& **S1:groupe:projets et realisations:note** & **S2:groupe:projets et realisations:note**
& **S3:groupe:projets et realisations:note** & **3S:groupe:projets et realisations:note** \\
& \si{**S1:groupe:projets et realisations:rang**} & \si{**S2:groupe:projets et realisations:rang**}
& \si{**S3:groupe:projets et realisations:rang**} & \si{**3S:groupe:projets et realisations:rang**} \\
\hline
\textbf{connaissances et compétences générales}
& **S1:groupe:connaissances et competences generales:note** & **S2:groupe:connaissances et competences generales:note**
& **S3:groupe:connaissances et competences generales:note** & **3S:groupe:connaissances et competences generales:note** \\
& \si{**S1:groupe:connaissances et competences generales:rang**} & \si{**S2:groupe:connaissances et competences generales:rang**}
& \si{**S3:groupe:connaissances et competences generales:rang**} & \si{**3S:groupe:connaissances et competences generales:rang**} \\
\hline
\textbf{anglais}
& **S1:groupe:anglais:note** & **S2:groupe:anglais:note**
& **S3:groupe:anglais:note** & **3S:groupe:anglais:note** \\
& \si{**S1:groupe:anglais:rang**} & \si{**S2:groupe:anglais:rang**}
& \si{**S3:groupe:anglais:rang**} & \si{**3S:groupe:anglais:rang**} \\
\hline
\end{tabular}
\end{center}
\begin{rubrique}{Bilan par matières}
**bilanParTag**
\end{rubrique}
% ************************************************************
% Signature
% ************************************************************
\vfill
%%%%%%%%%%%%%%%%
\def\unecaselargescriptsize#1{\multicolumn{2}{l}{{\scriptsize #1}}\\ }
\begin{rubrique}{Cachet de l'établissement}
\begin{flushright}
Le~\today,\\
**NomResponsablePE**~\\
\textit{Responsable des Poursuites d'Études du département **DeptName**}
\end{flushright}
\vspace{0.5cm}
\vspace{-10mm}
\begin{center}
\begin{tabular}{|*{2}{p{0.45\textwidth}|}}
\hline
Pour le Chef du Département
&
Pour l'administrateur provisoire de l'IUT
\\
et par délégation,
&
et par délégation,
\\
Jocelyne \textsc{Creton Nutten},
&
Vincent \textsc{Devlaminck},
\\
\textit{Responsable des Poursuites d'Études }
&
\textit{chargé de mission}
\\
\textit{du département GEII}
&
\textit{en charge de la Scolarité}
\\[15mm]
&\\ \hline
%%%%%%%%%%%%%%%%%
\unecaselargescriptsize{
IUT A de Lille ---
Av Paul Langevin - Cité scientifique - BP 90179 --- 59653 Villeneuve d'Ascq Cedex --- France
}
\unecaselargescriptsize{
\textbf{Secrétariat Département GEII}:
}
\unecaselargescriptsize{
Mme Séverine \textsc{Derenchy}, Tel (+33)3.59.63.21.91, \texttt{severine.derenchy@univ-lille.fr}
}
\unecaselargescriptsize{
\textbf{Responsable Poursuites d'Études Département GEII}:
}
\unecaselargescriptsize{
Mme Jocelyne \textsc{Creton Nutten}, \texttt{Jocelyne.Creton@univ-lille.fr}
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\end{tabular}
\end{center}
\end{rubrique}
% Le pied de page (indiqué dans les paramètres ScoDoc) vient après cette ligne
% ************************************************************

View File

@ -0,0 +1,7 @@
\begin{minipage}{\textwidth} \scriptsize
%IUT exemple - Dpt RT, 3 rue xxx, France
% \textbf{Secrétariat Poursuite d'Etudes}: Xxx Yyy, Tel 01.02.03.04.05, xxx.yyy@example.com
% \textbf{Responsables Poursuite d'Etudes RT}: Zzz Wwww, Tel 01.02.03.04.05, zzz.www@example.com
\end{minipage}

View File

@ -1,7 +0,0 @@
\begin{minipage}{\textwidth} \scriptsize
%IUT exemple - Dpt RT, 3 rue xxx, France
% \textbf{Secrétariat Poursuite d'Etudes}: Xxx Yyy, Tel 01.02.03.04.05, xxx.yyy@example.com
% \textbf{Responsables Poursuite d'Etudes RT}: Zzz Wwww, Tel 01.02.03.04.05, zzz.www@example.com
\end{minipage}