Somme de certaines colonnes dans un tableau
Posté : 19 mai 2016, 09:56
Bonjour,
J'ai créé une requête (voir en bas de page), afin de pouvoir afficher dans un template PDF les valeurs d'un tableau.
La requête ci-dessous affiche/regroupe bien les catégories (Boisson, Divers, Vin), mais ne calcule pas la somme des articles et des prix TTC :
J'ai effectivement deux records de la catégorie Boisson dans la BDD :
Le résultat de la catégorie Boisson devrait donc être :
Je souhaiterais donc faire la somme des articles (fab_booking_44_repeat.nombre_art) et du prix TTC (fab_booking_44_repeat.prix_ttc).
J'ai essayé différentes variantes telles que :
mais sans succès.
La solution doit être triviale, mais étant encore un débutant, cela dépasse mes capacités actuelles.
Merci d'avance pour vos suggestions et conseils.
Marc
Requête
J'ai créé une requête (voir en bas de page), afin de pouvoir afficher dans un template PDF les valeurs d'un tableau.
La requête ci-dessous affiche/regroupe bien les catégories (Boisson, Divers, Vin), mais ne calcule pas la somme des articles et des prix TTC :
Code : Tout sélectionner
À facturer
Boisson | 10 | 25.00 |
Divers | 20 | 112.00 |
Vin | 2 | 20.20 |
Code : Tout sélectionner
Boisson | 10 | 25.00 |
Boisson | 10 | 25.00 |
Code : Tout sélectionner
À facturer
Boisson | 20 | 50.00 |
Divers | 20 | 112.00 |
Vin | 2 | 20.20 |
J'ai essayé différentes variantes telles que :
Code : Tout sélectionner
array('fab_booking.id', 'fab_catering_categories.categories', 'SUM(fab_booking_44_repeat.nombre_art)', 'SUM(fab_booking_44_repeat.prix_ttc)'))
ou encore
array('fab_booking.id', 'fab_catering_categories.categories', SUM('fab_booking_44_repeat.nombre_art'), SUM('fab_booking_44_repeat.prix_ttc')))
La solution doit être triviale, mais étant encore un débutant, cela dépasse mes capacités actuelles.
Merci d'avance pour vos suggestions et conseils.
Marc
Requête
Code : Tout sélectionner
$bookingid = JRequest::getVar('rowid');
$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query
->select (array('fab_booking.id', 'fab_catering_categories.categories', 'fab_booking_44_repeat.nombre_art', 'fab_booking_44_repeat.prix_ttc'))
->from('fab_booking')
->leftJoin('fab_booking_44_repeat ON fab_booking.id = fab_booking_44_repeat.parent_id')
->leftJoin('fab_catering_categories ON fab_booking_44_repeat.categorie = fab_catering_categories.id')
->having('fab_booking.id = ' . $db->quote($bookingid))
->group('fab_catering_categories.categories');
$db->setQuery($query);
$row = $db->loadObjectList();
echo "<div style='font-family: arial, helvetica, sans-serif; font-size: 11pt;'>";
foreach ($row as $item)
{
echo "$item->categories | ";
echo "$item->nombre_art | ";
echo "$item->prix_ttc | <br />";
echo "";
}
echo "</div>";