// ////////////////////////////////////////////////////////////////////////////////////////////////////
// Cas 3/3 imprimer_donnees_eleves_moyennes : Tableau des notes pour chaque élève
// ////////////////////////////////////////////////////////////////////////////////////////////////////
if ($action == 'imprimer_donnees_eleves_moyennes') {
    // Récupérer les notes enregistrées pour tous les collègues, pour toutes les épreuves
    $tab_saisie = array();
    // [eleve_id][epreuve_code] => note;
    $DB_TAB = DB_STRUCTURE_BREVET::DB_recuperer_brevet_saisies_eleves($liste_eleve_id, 0, FALSE, FALSE);
    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'];
            $tab_saisie[$DB_ROW['eleve_id']][$DB_ROW['brevet_serie_ref'] . $DB_ROW['brevet_epreuve_code']] = $note;
        }
    }
    // Récupérer les notes enregistrées pour la classe
    $DB_TAB = DB_STRUCTURE_BREVET::DB_recuperer_brevet_saisies_classe($classe_id, 0, FALSE, FALSE);
    foreach ($DB_TAB as $DB_ROW) {
        $note = is_numeric($DB_ROW['saisie_note']) ? number_format($DB_ROW['saisie_note'], 1, ',', '') : $DB_ROW['saisie_note'];
        $tab_saisie[0][$DB_ROW['brevet_serie_ref'] . $DB_ROW['brevet_epreuve_code']] = $note;
    }
    // Pour insérer le groupe classe en dernier
    $tab_eleve_id[] = 0;
    $tab_eleve_infos[0] = array('eleve_nom' => $classe_nom, 'eleve_prenom' => '');
    // Fabrication du PDF ; on a besoin de tourner du texte à 90°
    // Fabrication d'un CSV en parallèle
    $tab_brevet_epreuve[$serie_ref][CODE_BREVET_EPREUVE_TOTAL] = 'Total des points';
    $nb_epreuves = count($tab_brevet_epreuve, COUNT_RECURSIVE) - count($tab_brevet_epreuve);
    $archivage_tableau_PDF = new PDF_archivage_tableau(FALSE, 'portrait', 10, 10, 5, 12, 'non');
    $archivage_tableau_PDF->moyennes_initialiser($nb_eleves + 1, $nb_epreuves);
    $archivage_tableau_CSV = '';
    $separateur = ';';
예제 #2
0
  }
}

// ////////////////////////////////////////////////////////////////////////////////////////////////////
// Récupération des notes et appréciations des fiches brevet par élève
// ////////////////////////////////////////////////////////////////////////////////////////////////////

// Récupérer les saisies déjà effectuées pour le bilan officiel concerné

$DB_TAB = DB_STRUCTURE_BREVET::DB_recuperer_brevet_saisies_eleves( $liste_eleve , 0 /*prof_id*/ , FALSE /*with_epreuve_nom*/ , FALSE /*only_total*/ );
foreach($DB_TAB as $DB_ROW)
{
  $prof_info = ($DB_ROW['prof_id']) ? afficher_identite_initiale( $DB_ROW['user_nom'] , FALSE , $DB_ROW['user_prenom'] , TRUE , $DB_ROW['user_genre'] ) : '' ;
  $tab_eleve_saisie[$DB_ROW['eleve_id']][$DB_ROW['brevet_epreuve_code']] = array( 'matieres_id'=>$DB_ROW['matieres_id'] , 'prof_id'=>$DB_ROW['prof_id'] , 'prof_info'=>$prof_info , 'appreciation'=>$DB_ROW['saisie_appreciation'] , 'note'=>$DB_ROW['saisie_note'] );
}
$DB_TAB = DB_STRUCTURE_BREVET::DB_recuperer_brevet_saisies_classe( $classe_id , 0 /*prof_id*/ , FALSE /*with_epreuve_nom*/ , FALSE /*only_total*/ );
foreach($DB_TAB as $DB_ROW)
{
  $tab_eleve_saisie[0][$DB_ROW['brevet_epreuve_code']] = $DB_ROW['saisie_note'];
}

// ////////////////////////////////////////////////////////////////////////////////////////////////////
/* 
 * Libérer de la place mémoire car les scripts de bilans sont assez gourmands.
 * Supprimer $DB_TAB ne fonctionne pas si on ne force pas auparavant la fermeture de la connexion.
 * SebR devrait peut-être envisager d'ajouter une méthode qui libère cette mémoire, si c'est possible...
 */
// ////////////////////////////////////////////////////////////////////////////////////////////////////

DB::close(SACOCHE_STRUCTURE_BD_NAME);
unset($DB_TAB);