$tab_saisie = array(); // [eleve_id] => array(note,appreciation); $nb_lignes_epreuves = 0; // On compte 1 ligne par élève par rubrique, il peut falloir plus si l'appréciation est longue $DB_TAB = DB_STRUCTURE_BREVET::DB_recuperer_brevet_saisies_eleves($liste_eleve_id, 0, FALSE, TRUE); foreach ($DB_TAB as $DB_ROW) { if ($tab_eleve_infos[$DB_ROW['eleve_id']]['eleve_brevet_serie'] == $DB_ROW['brevet_serie_ref']) { $note = is_numeric($DB_ROW['saisie_note']) ? number_format($DB_ROW['saisie_note'], 1, ',', '') : $DB_ROW['saisie_note']; if ($DB_ROW['brevet_epreuve_code'] != CODE_BREVET_EPREUVE_TOTAL || !$DB_ROW['saisie_appreciation']) { $appreciation = $DB_ROW['saisie_appreciation']; } else { $avis_conseil_classe = $DB_ROW['saisie_appreciation'][0]; $txt_avis_conseil_classe = $avis_conseil_classe == 'F' ? 'Avis favorable - ' : 'Doit faire ses preuves - '; $appreciation = $txt_avis_conseil_classe . mb_substr($DB_ROW['saisie_appreciation'], 2); } $tab_saisie[$DB_ROW['eleve_id']] = array('note' => $note, 'appreciation' => suppression_sauts_de_ligne($appreciation)); $nb_lignes_epreuves += nombre_de_ligne($DB_ROW['saisie_appreciation']); } } // Fabrication du PDF $archivage_tableau_PDF = new PDF_archivage_tableau(FALSE, 'portrait', 10, 10, 5, 12, 'non'); $archivage_tableau_PDF->appreciation_initialiser_eleves_syntheses($nb_eleves, $nb_lignes_epreuves, TRUE); $archivage_tableau_PDF->appreciation_intitule('Fiches Brevet - ' . $annee_session_brevet . ' - ' . $classe_nom . ' - ' . 'Avis de synthèse'); // Pour avoir les élèves dans l'ordre alphabétique, il faut utiliser $tab_eleve_id. foreach ($tab_eleve_id as $eleve_id) { extract($tab_eleve_infos[$eleve_id]); // $eleve_nom $eleve_prenom $date_naissance $eleve_brevet_serie if (isset($tab_saisie[$eleve_id])) { extract($tab_saisie[$eleve_id]); // $note $appreciation } else {
} } // //////////////////////////////////////////////////////////////////////////////////////////////////// // Cas 6/6 imprimer_donnees_eleves_recapitulatif : Récapitulatif annuel des moyennes et appréciations par élève // //////////////////////////////////////////////////////////////////////////////////////////////////// if ($action == 'imprimer_donnees_eleves_recapitulatif') { // Rechercher et mémoriser les données enregistrées $tab_saisies = array(); // [eleve_id][rubrique_id] => array(note[periode],appreciation[periode],professeur[id]) $tab_periodes = array(); $tab_rubriques = array(); $DB_TAB = DB_STRUCTURE_OFFICIEL::DB_recuperer_bilan_officiel_saisies_eleves($BILAN_TYPE, 0, $liste_eleve_id, 0, TRUE, TRUE, FALSE); foreach ($DB_TAB as $DB_ROW) { if ($DB_ROW['rubrique_id']) { if ($DB_ROW['prof_id']) { $tab_saisies[$DB_ROW['eleve_id']][$DB_ROW['rubrique_id']]['appreciation'][$DB_ROW['periode_ordre']] = suppression_sauts_de_ligne($DB_ROW['saisie_appreciation']); $tab_saisies[$DB_ROW['eleve_id']][$DB_ROW['rubrique_id']]['professeur'][$DB_ROW['prof_id']] = afficher_identite_initiale($DB_ROW['user_nom'], FALSE, $DB_ROW['user_prenom'], TRUE, $DB_ROW['user_genre']); } else { if ($DB_ROW['saisie_note'] !== NULL && !in_array($DB_ROW['rubrique_id'], $tab_moyenne_exception_matieres)) { $tab_saisies[$DB_ROW['eleve_id']][$DB_ROW['rubrique_id']]['note'][$DB_ROW['periode_ordre']] = (double) $DB_ROW['saisie_note']; } } $tab_periodes[$DB_ROW['periode_ordre']] = $DB_ROW['periode_nom']; $tab_rubriques[$DB_ROW['rubrique_id']] = $DB_ROW['rubrique_nom']; } } // Calcul des moyennes annuelles et de classe $tab_moyennes = array(); // [rubrique_id][eleve_id|0] => moyenne foreach ($tab_rubriques as $rubrique_id => $rubrique_nom) { foreach ($tab_eleve_id as $eleve_id => $tab_eleve) {