Bonjour j'ai une requete ou j'ai besoin de regrouper des données, la voici:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
$q=$this->createQuery('a')
                ->select('a.classification_id,cl.id ,l.formation_id, f.id, max(e.date) as max_date')
                ->leftJoin('a.class cl')
                ->leftJoin('cl.list_formation l')
                ->leftJoin('l.formation f')
                ->leftJoin('f.eleves e ON e.formation_id=f.id AND e.user_id=a.user_id')
                ->where('a.user_id=?', $user_id)
                ->groupBy('a.classification_id, cl.id, l.formation_id, f.id')
                ;
 
        $data= $q->execute();
le but est d'avoir par utilisateur / classe les formation liés et la derniere date de sa participation

j'essaie bien un :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
foreach($data as $user_class)
        {
            echo $user_class->getUserId().' '.$user_class->getClass()->getName()."<br>";
            foreach($user_class->getClass()->getListFormation() as $formation)
            {
                echo $formation->getFormation()->getName()."<br>";
                echo $formation->getFormation()->getEleves()->getMaxDate()."<br>";
            }
 
 
 
        }
mais ça plante, il ne trouve pas getMaxDate.

ou se trouve mon erreur ???