// Récupération de la liste des items travaillés durant la période choisie, pour les élèves selectionnés, toutes matières confondues
// Récupération de la liste des synthèses concernées (nom de thèmes ou de domaines suivant les référentiels)
// Récupération de la liste des matières concernées
// ////////////////////////////////////////////////////////////////////////////////////////////////////
if (empty($is_appreciation_groupe)) {
    if ($synthese_modele == 'matiere') {
        list($tab_item, $tab_synthese) = DB_STRUCTURE_BILAN::DB_recuperer_arborescence_synthese($liste_eleve, $matiere_id, $only_socle, $only_niveau, $mode_synthese, $fusion_niveaux, $date_mysql_debut, $date_mysql_fin);
        $tab_matiere[$matiere_id] = array('matiere_nom' => $matiere_nom, 'matiere_nb_demandes' => DB_STRUCTURE_DEMANDE::DB_recuperer_demandes_autorisees_matiere($matiere_id));
    } elseif ($synthese_modele == 'multimatiere') {
        $matiere_id = 0;
        list($tab_item, $tab_synthese, $tab_matiere) = DB_STRUCTURE_BILAN::DB_recuperer_arborescence_synthese($liste_eleve, $matiere_id, $only_socle, $only_niveau, 'predefini', $fusion_niveaux, $date_mysql_debut, $date_mysql_fin);
    }
} else {
    // Dans le cas d'une saisie globale sur le groupe, il faut "juste" récupérer les matières concernées.
    $liste_matiere_id = isset($liste_matiere_id) ? $liste_matiere_id : '';
    $DB_TAB = DB_STRUCTURE_BILAN::DB_recuperer_matieres_travaillees($classe_id, $liste_matiere_id, $date_mysql_debut, $date_mysql_fin);
    foreach ($DB_TAB as $DB_ROW) {
        $tab_matiere[$DB_ROW['rubrique_id']] = array('matiere_nom' => $DB_ROW['rubrique_nom'], 'matiere_nb_demandes' => NULL);
    }
}
$item_nb = count($tab_item);
if (!$item_nb && !$make_officiel) {
    exit('Aucun item évalué sur la période ' . $date_debut . ' ~ ' . $date_fin . ' selon les paramètres choisis !');
}
$tab_liste_item = array_keys($tab_item);
$liste_item = implode(',', $tab_liste_item);
// ////////////////////////////////////////////////////////////////////////////////////////////////////
// Récupération de la liste des élèves
// ////////////////////////////////////////////////////////////////////////////////////////////////////
if (empty($is_appreciation_groupe)) {
    $eleves_ordre = $groupe_type == 'Classes' ? 'alpha' : $eleves_ordre;
{

  // Période concernée
  $DB_ROW = DB_STRUCTURE_COMMUN::DB_recuperer_dates_periode($groupe_id,$periode_id);
  if(empty($DB_ROW))
  {
    exit('La classe et la période ne sont pas reliées !');
  }
  $date_mysql_debut = $DB_ROW['jointure_date_debut'];
  $date_mysql_fin   = $DB_ROW['jointure_date_fin'];

  // Rubriques concernées
  $tab_rubriques = array() ;
  if($OBJET=='modifier')
  {
    $DB_TAB = (in_array($BILAN_TYPE,array('releve','bulletin'))) ? DB_STRUCTURE_BILAN::DB_recuperer_matieres_travaillees( $classe_id , $liste_matiere_id , $date_mysql_debut , $date_mysql_fin , $_SESSION['USER_ID'] ) : DB_STRUCTURE_SOCLE::DB_recuperer_piliers( (int)substr($BILAN_TYPE,-1) );
    foreach($DB_TAB as $DB_ROW)
    {
      $tab_rubriques[$DB_ROW['rubrique_id']] = $DB_ROW['rubrique_nom'];
    }
  }
  else if($OBJET=='tamponner')
  {
    $tab_rubriques = array( 0 => 'Synthèse générale' ) ;
  }

  // Élèves concernés
  $DB_TAB = (!$is_sous_groupe) ? DB_STRUCTURE_COMMUN::DB_lister_users_regroupement( 'eleve' /*profil_type*/ , 1 /*statut*/ , 'classe' , $classe_id , 'alpha' /*eleves_ordre*/ ) : DB_STRUCTURE_COMMUN::DB_lister_eleves_classe_et_groupe($classe_id,$groupe_id) ;
  if(empty($DB_TAB))
  {
    exit('Aucun élève trouvé dans ce regroupement !');