IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Doctrine2 PHP Discussion :

[Doctrine2] Erreur requête : [Semantical Error] line 0, col 42 near 'xx': Error: Invalid PathExpress Must be


Sujet :

Doctrine2 PHP

  1. #1
    Membre régulier
    Inscrit en
    Juillet 2009
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 125
    Points : 104
    Points
    104
    Par défaut [Doctrine2] Erreur requête : [Semantical Error] line 0, col 42 near 'xx': Error: Invalid PathExpress Must be
    Salut.

    Je cherche à mettre en place la requêt suivante dans mon fichier VenteRepository.php en utilisant le QureyBuilder.
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT SUM(v.mntTotal) AS montantTotal, v.magasin FROM Vente v WHERE v.exercice = '2019' GROUP BY v.magasin ORDER BY v.montantTotal DESC
    .
    Voici le code de mon QueryBuilder
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    public function meilleurVendeurAnnee($idExer)
    {
     
    	$qb = $this->_em->createQueryBuilder();
    	$qb->select('SUM(v.mntTotal) AS montantTotal, v.magasin')
                ->from($this->_entityName, 'v')
                ->where('v.exercice = :exercice')
    	    ->setParameter('exercice', $idExer)
                ->groupBy('v.magasin')
                ->orderBy('v.montantTotal', 'DESC');
     
            $query = $qb->getQuery();
     
    	$results = $query->getResult();
    }
    Quand j'appel la fonction meilleurVendeurAnnee, j'ai cette erreur
    [Semantical Error] line 0, col 42 near 'magasin FROM': Error: Invalid PathExpression. Must be a StateFieldPathExpression.

  2. #2
    Membre régulier
    Inscrit en
    Juillet 2009
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 125
    Points : 104
    Points
    104
    Par défaut
    J'ai modifié ma fonction ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    public function meilleurVendeurAnnee($idExer)
    {
     
    	$qb = $this->_em->createQueryBuilder();
    	$qb->select('SUM(v.mntTotal) AS montantTotal, m.id')
                ->from($this->_entityName, 'v')
    	    ->leftJoin('v.magasin', 'm')
                ->where('v.exercice = :exercice')
    	    ->setParameter('exercice', $idExer)
                ->groupBy('m.id')
                ->orderBy('montantTotal', 'DESC');
    	$query = $qb->getQuery();
     
    	$results = $query->getResult();
    }
    je n'ai plus d'erreur , mais aucun résultat ne s'affiche

  3. #3
    Membre régulier
    Inscrit en
    Juillet 2009
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 125
    Points : 104
    Points
    104
    Par défaut
    après beaucoup de temps passé sur le net, j'ai finalement résolu mon problème. Voici la fonction finale qui donne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    public function meilleurVendeurAnnee($idExer)
    {
    	$em = $this->getEntityManager();
            $qb = $em		
    			->createQuery("SELECT SUM(V.mntTotal)as montant,
    							(SELECT M.nom FROM ZGZagabaBundle:Magasin M WHERE M.id = V.magasin) magasin 
    							FROM ZGZagabaBundle:Vente V 
    							JOIN V.exercice ex
    							JOIN V.magasin ma
    							WHERE ex.id = :exercice 
    							GROUP BY magasin 
    							ORDER BY montant DESC")
    			->setParameter('exercice', $idExer);
     
    	$results = $qb->getResult();	
    	return $results;
     
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/08/2012, 19h59
  2. [HQL] erreur requête delete
    Par PamelaGeek dans le forum Hibernate
    Réponses: 4
    Dernier message: 17/02/2006, 13h27
  3. Erreur requête - Types de données imcompatibles
    Par charleshbo dans le forum Access
    Réponses: 4
    Dernier message: 14/02/2006, 16h57
  4. [VB6] Erreur Requête
    Par yoda7666 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 30/01/2006, 21h20
  5. [erreur requête]
    Par viny dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 16/09/2005, 13h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo