diff --git a/htdocs/compta/resultat/clientfourn.php b/htdocs/compta/resultat/clientfourn.php index f4a512ab3ea..261a384e684 100644 --- a/htdocs/compta/resultat/clientfourn.php +++ b/htdocs/compta/resultat/clientfourn.php @@ -34,31 +34,46 @@ if (!$user->rights->compta->resultat->lire) llxHeader(); $year=$_GET["year"]; -$month=$_GET["month"]; if (! $year) { $year = strftime("%Y", time()); } +$modecompta = $conf->compta->mode; +if ($_GET["modecompta"]) $modecompta=$_GET["modecompta"]; print_fiche_titre("Détail recettes-dépenses par client/fournisseur",($year?"  ".img_previous()." Année $year ".img_next()."":"")); - print '
'; -print ""; +if ($modecompta=="CREANCES-DETTES") +{ + print 'Il se base sur la date de validation des factures et inclut les factures dues, qu\'elles soient payées ou non'; + print ' (Voir le rapport sur les factures effectivement payées uniquement).
'; + print '
'; +} +else { + print 'Il se base sur la date de validation des factures et n\'inclut que les factures effectivement payées'; + print ' (Voir le rapport en créances-dettes qui inclut les factures non encore payée).
'; + print '
'; +} + + +print '
'; print ''; print ''; -print ""; +print ""; print "\n"; /* * Factures clients - * */ - $sql = "SELECT s.nom,s.idp,sum(f.total) as amount"; -$sql .= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."facture as f WHERE f.fk_soc = s.idp AND f.fk_statut = 1"; +$sql .= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."facture as f"; +$sql .= " WHERE f.fk_soc = s.idp AND f.fk_statut = 1"; if ($year) { $sql .= " AND f.datef between '$year-01-01 00:00:00' and '$year-12-31 23:59:59'"; } +if ($modecompta != 'CREANCES-DETTES') { + $sql .= " AND f.paye = 1"; +} $sql .= " GROUP BY s.nom ASC"; @@ -88,20 +103,23 @@ if ($result) { } $db->free(); } else { - print $db->error(); + dolibarr_print_error($db); } print ''; /* * Frais, factures fournisseurs. - * */ $sql = "SELECT s.nom,s.idp,sum(f.total_ht) as amount"; -$sql .= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."facture_fourn as f WHERE f.fk_soc = s.idp"; +$sql .= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."facture_fourn as f"; +$sql .= " WHERE f.fk_soc = s.idp"; if ($year) { $sql .= " AND f.datef between '$year-01-01 00:00:00' and '$year-12-31 23:59:59'"; } +if ($modecompta != 'CREANCES-DETTES') { + $sql .= " AND f.paye = 1"; +} $sql .= " GROUP BY s.nom ASC, s.idp"; print ''; @@ -118,7 +136,7 @@ if ($result) { $var=!$var; print ""; - print "\n"; + print "\n"; print "\n"; @@ -130,13 +148,12 @@ if ($result) { } $db->free(); } else { - print $db->error(); + dolibarr_print_error($db); } print ''; /* * Charges sociales - * */ $subtotal = 0; @@ -168,7 +185,7 @@ if ( $db->query($sql) ) { $i++; } } else { - print $db->error(); + dolibarr_print_error($db); } print ''; @@ -176,7 +193,6 @@ print ''; diff --git a/htdocs/compta/resultat/index.php b/htdocs/compta/resultat/index.php index 04cb7bca46c..ac01b6edc0f 100644 --- a/htdocs/compta/resultat/index.php +++ b/htdocs/compta/resultat/index.php @@ -36,25 +36,44 @@ if ($user->societe_id > 0) $socidp = $user->societe_id; } -$year_current = $_GET["year"];; +$year_current = $_GET["year"]; if (! $year_current) { $year_current = strftime("%Y", time()); } - +$modecompta = $conf->compta->mode; +if ($_GET["modecompta"]) $modecompta=$_GET["modecompta"]; print_titre("Résultat comptable, résumé annuel"); print '
'; +print "Ce rapport présente la balance entre les recettes et les dépenses facturées aux clients ou fournisseurs. Les dépenses de charges ne sont pas incluses.
\n"; +if ($modecompta=="CREANCES-DETTES") +{ + print 'Il se base sur la date de validation des factures et inclut les factures dues, qu\'elles soient payées ou non'; + print ' (Voir le rapport sur les factures effectivement payées uniquement).
'; + print '
'; +} +else { + print 'Il se base sur la date de validation des factures et n\'inclut que les factures effectivement payées'; + print ' (Voir le rapport en créances-dettes qui inclut les factures non encore payée).
'; + print '
'; +} +/* + * Factures clients + */ $sql = "SELECT sum(f.total) as amount, date_format(f.datef,'%Y-%m') as dm"; -$sql .= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."facture as f WHERE f.fk_soc = s.idp AND f.fk_statut = 1"; -if ($year) { - $sql .= " AND f.datef between '$year-01-01 00:00:00' and '$year-12-31 23:59:59'"; +$sql .= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."facture as f"; +$sql .= " WHERE f.fk_soc = s.idp AND f.fk_statut = 1"; +if ($_GET["year"]) { + $sql .= " AND f.datef between '".$_GET["year"]."-01-01 00:00:00' and '".$_GET["year"]."-12-31 23:59:59'"; } if ($socidp) { - $sql .= " WHERE f.fk_soc = $socidp"; + $sql .= " AND f.fk_soc = $socidp"; +} +if ($modecompta != 'CREANCES-DETTES') { + $sql .= " AND f.paye = 1"; } $sql .= " GROUP BY dm DESC"; - if ($db->query($sql)) { $num = $db->num_rows(); @@ -67,18 +86,25 @@ if ($db->query($sql)) } } else { - print $db->error(); + dolibarr_print_error($db); } +/* + * Frais, factures fournisseurs. + */ $sql = "SELECT sum(f.total_ht) as amount, date_format(f.datef,'%Y-%m') as dm"; -$sql .= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."facture_fourn as f WHERE f.fk_soc = s.idp"; -if ($year) { - $sql .= " AND f.datef between '$year-01-01 00:00:00' and '$year-12-31 23:59:59'"; +$sql .= " FROM ".MAIN_DB_PREFIX."societe as s,".MAIN_DB_PREFIX."facture_fourn as f"; +$sql .= " WHERE f.fk_soc = s.idp AND f.fk_statut = 1"; +if ($_GET["year"]) { + $sql .= " AND f.datef between '".$_GET["year"]."-01-01 00:00:00' and '".$_GET["year"]."-12-31 23:59:59'"; } if ($socidp) { $sql .= " AND f.fk_soc = $socidp"; } +if ($modecompta != 'CREANCES-DETTES') { + $sql .= " AND f.paye = 1"; +} $sql .= " GROUP BY dm DESC"; if ($db->query($sql)) @@ -93,10 +119,15 @@ if ($db->query($sql)) } } else { - print $db->error(); + dolibarr_print_error($db); } -print '
 ElémentMontant HT".$langs->trans("AmountHT")."
'.price($total).'
Facturation fournisseurs
 Factures idp."\">$objp->nom".$langs->trans("Bills")." idp."\">$objp->nom".price($objp->amount)."
'.price($subtotal).'
'.price($subtotal).'
R /* * Charges sociales non déductibles - * */ $subtotal = 0; @@ -208,7 +224,7 @@ if ( $db->query($sql) ) { $i++; } } else { - print $db->error(); + dolibarr_print_error($db); } print '
'.price($subtotal).'
'; +/* + * Charges sociales + */ + + +print '
'; print '';
'.$langs->trans("Month").'