Erreur lors de l’ouverture des listes de charges sociales sur la v12

Bonjour.

Je tombe sur une nouvelle erreur de la v12 lorsqu’on ouvre les listes de charges sociales et lorsque le module projet est activé :

Dolibarr a détecté une erreur technique.
Voici les informations qui pourront aider au diagnostic (Vous pouvez fixer l'option $dolibarr_main_prod sur '1' pour supprimer quelques notifications):
Date: 20200625111947
Dolibarr: 12.0.0 - https://www.dolibarr.org
Niveau de fonctionnalités: 0
PHP: 7.3.19-1+0~20200612.60+debian10~1.gbp6c8fe1
Server: Apache/2.4.38 (Debian)
OS: Linux dolibarr 5.4.41-1-pve #1 SMP PVE 5.4.41-1 (Fri, 15 May 2020 15:06:08 +0200) x86_64
UserAgent: Mozilla/5.0 (X11; Linux x86_64; rv:77.0) Gecko/20100101 Firefox/77.0

Url sollicitée: /compta/sociales/list.php?leftmenu=tax_social
Referer: https://dolibarr.mithril.re/compta/sociales/card.php?leftmenu=tax_social&action=create
Gestionnaire de menu: eldy_menu.php

Modules/Applications: syslog, user, ficheinter, fckeditor, kantickets, tax, stock, ldap, margin, categorie, contrat, banque, product, expedition, paypal, api, blockedlog, modulebuilder, socialnetworks, export, prelevement, import, emailcollector, ticket, extraitcompteclient, workflow, accounting, agenda, barcode, cron, commande, ecm, expensereport, facture, fournisseur, holiday, resource, salaries, societe, service, variants, projet, propal
Type gestionnaire de base de données: pgsql
Requête dernier accès en base en erreur: SELECT cs.rowid as id, cs.fk_type as type, cs.amount, cs.date_ech, cs.libelle as label, cs.paye, cs.periode, p.rowid as project_id, p.ref as project_ref, p.title as project_label, c.libelle as type_label, SUM(pc.amount) as alreadypayed FROM llx_c_chargesociales as c, llx_chargesociales as cs LEFT JOIN llx_projet as p ON p.rowid = cs.fk_projet LEFT JOIN llx_paiementcharge as pc ON pc.fk_charge = cs.rowid WHERE cs.fk_type = c.id AND cs.entity = 1 GROUP BY cs.rowid, cs.fk_type, cs.amount, cs.date_ech, cs.libelle, cs.paye, cs.periode, c.libelle ORDER BY cs.date_ech DESC LIMIT 26
Code retour dernier accès en base en erreur: DB_ERROR_42803
Information sur le dernier accès en base en erreur: ERROR: 42803: column "p.rowid" must appear in the GROUP BY clause or be used in an aggregate function\nLINE 1: ...te_ech, cs.libelle as label, cs.paye, cs.periode, p.rowid as...\n ^\nLOCATION: check_ungrouped_columns_walker, parse_agg.c:1388

Il s’agit d’un autre problème de groupement qu’on peut résoudre en ajoutant la ligne suivante après la ligne 154 du fichier compta/sociales/list.php :

if (!empty($conf->projet->enabled)) $sql .= ", p.rowid";

Pour le moment je ne me sens pas prêt à faire moi même les Pull Request (il faudrait que je lise un peu plus les bonnes pratiques)… si quelqu’un peut le faire ? Peut-être @aspangaro-Easya comme sur mon autre post ?

Merci d’avance.

1 « J'aime »

Bonjour :slightly_smiling_face:
@jnoel974 merci pour ce partage!

Bonsoir,

C’est fait, merci @jnoel974

1 « J'aime »