Pb lorsque je clique sur le menu Factures Clients

Lorsque je clique sur ce menu, à gauche, j’ai le problème suivant :

Url sollicitée:
Referer:
Gestionnaire de menu: eldy_menu.php

Type gestionnaire de base de données: pgsql
Requête dernier accès en base en erreur: SELECT f.rowid as facid, f.facnumber, f.ref_client, f.type, f.note_private, f.increment, f.total as total_ht, f.tva as total_tva, f.total_ttc, f.datef as df, f.date_lim_reglement as datelimite, f.paye as paye, f.fk_statut, s.nom, s.rowid as socid, s.code_client, s.client , SUM(pf.amount) as am FROM llx_societe as s, llx_facture as f LEFT JOIN llx_paiement_facture as pf ON pf.fk_facture = f.rowid WHERE f.fk_soc = s.rowid AND f.entity = 1 GROUP BY f.rowid, f.facnumber, f.type, f.increment, f.total,f.tva, f.total_ttc, f.datef, f.date_lim_reglement, f.paye, f.fk_statut, s.nom, s.rowid, f.note_private ORDER BY f.datef DESC, f.rowid DESC LIMIT 51
Code retour dernier accès en base en erreur: DB_ERROR_42803
Information sur le dernier accès en base en erreur: ERREUR: 42803: la colonne « f.ref_client » doit apparaître dans la clause GROUP BY ou doit être utilisé dans une fonction d’agrégat at character 39 LOCATION: check_ungrouped_columns_walker, parse_agg.c:543

Oui c’est une anomalie courante avec PGSql qui ne sort pas en errur dans MySQL.
je regarde asap pour un patch sur la 3.5

En attendant, pouvez vous me dire ce que je dois modifier et dans quel fichier php afin de débloquer mes utilisateurs?

Pouvez vous me dire quel URL dans votre navigateur ?
Je ne reproduit pas sur mon install PgSQL

Vous etes sur PgSQL depuis votre 3.0 ou vous avez migrée de 3.0 en 3.5 puis vers pgSQL ?

Je suis sous Postgresql depuis le toujours

L’url dans mon navigateur :
http://dolibarr.afsol66.fr:33/compta/facture/list.php?leftmenu=customers_bills

Je ne reproduit pas,

mais pour corriger fichier htdocs/compta/facture/list.php
ligne 219 :

if (! $sall)
{
    $sql.= ' GROUP BY f.rowid, f.facnumber, f.type, f.increment, f.total,f.tva, f.total_ttc,';
    $sql.= ' f.datef, f.date_lim_reglement,';
    $sql.= ' f.paye, f.fk_statut,';
    $sql.= ' s.nom, s.rowid, f.note_private';
}
else
{
    $sql .= natural_search(array('s.nom', 'f.facnumber', 'f.note_public', 'fd.description'), $sall);
}

remplacer par

if (! $sall)
{
    $sql.= ' GROUP BY f.rowid, f.facnumber, f.type, f.increment, f.total,f.tva, f.total_ttc,';
    $sql.= ' f.datef, f.date_lim_reglement,';
    $sql.= ' f.paye, f.fk_statut,';
    $sql.= ' s.nom, s.rowid, f.note_private,f.ref_client';
}
else
{
    $sql .= natural_search(array('s.nom', 'f.facnumber', 'f.note_public', 'fd.description','f.ref_client'), $sall);
}

C’est étrange ; pour info, j’ai postgresql 8.4…

Après avoir effectué la modification, j’ai maintenant l’erreur suivante :

Petit UP!

Personne n’a une idée?

Pour info j’ai simplement remplacé
$sql.= ’ s.nom, s.rowid, f.note_private,f.ref_client’;
Par
$sql.= ’ s.nom, s.rowid, f.note_private,f.ref_client, s.code_client,s.client’;

Bonjour, Elegall : est-ce que ça a marché ? parce que dans mon cas, il m’arrive d’être bloqué à ce stade à cause de ce dysfonctionnement et je ne veux pas essayé à moins que tu témoignes que ça marche pour toi.

Bonjour

Oui cela fonctionne bien depuis cette modif.