diff --git a/htdocs/compta/resultat/clientfourn.php b/htdocs/compta/resultat/clientfourn.php
index e2db6d5d0c4..e3c2f6193de 100644
--- a/htdocs/compta/resultat/clientfourn.php
+++ b/htdocs/compta/resultat/clientfourn.php
@@ -44,20 +44,20 @@ 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 recettes-dépenses pour n\'inclure que les factures effectivement payées).
';
+ print $langs->trans("RulesResultDue");
+ print '(Voir le rapport recettes-dépenses pour n\'inclure que les factures effectivement payées).
';
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 pour inclure les factures non encore payée).
';
+ print $langs->trans("RulesResultInOut");
+ print '(Voir le rapport en créances-dettes pour inclure les factures non encore payée).
';
print '
';
}
print '
';
print '';
-print '| | Elément | ';
+print ' | '.$langs->trans("Element").' | ';
print "".$langs->trans("AmountHT")." | ";
print "".$langs->trans("AmountTTC")." | ";
print "
\n";
@@ -66,47 +66,51 @@ print "\n";
/*
* Factures clients
*/
-$sql = "SELECT s.nom, s.idp, sum(f.total) as amount_ht, sum(f.total_ttc) as amount_ttc";
-$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";
+if ($conf->compta->mode == 'CREANCES-DETTES') {
+ $sql = "SELECT s.nom, s.idp, sum(f.total) as amount_ht, sum(f.total_ttc) as amount_ttc";
+ $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'";
+ }
+} else {
+ $sql = "SELECT 'Fournisseurs' as nom, '0' as idp, sum(p.amount) as amount_ttc, date_format(p.datep,'%Y-%m') as dm";
+ $sql .= " FROM ".MAIN_DB_PREFIX."paiement as p ";
+ $sql .= "left join ".MAIN_DB_PREFIX."facture as f ";
+ $sql .= "on f.rowid = p.fk_facture";
+ if ($_GET["year"]) {
+ $sql .= " AND p.datep between '".$_GET["year"]."-01-01 00:00:00' and '".$_GET["year"]."-12-31 23:59:59'";
+ }
+}
+$sql .= " GROUP BY nom ASC";
print '| Facturation clients |
';
$result = $db->query($sql);
if ($result) {
- $num = $db->num_rows();
-
- $i = 0;
-
- if ($num > 0) {
- $var=True;
- while ($i < $num) {
- $objp = $db->fetch_object($result);
- $var=!$var;
+ $num = $db->num_rows($result);
+ $i = 0;
+ $var=true;
+ while ($i < $num)
+ {
+ $objp = $db->fetch_object($result);
+ $var=!$var;
- print "|   | ";
- print "".$langs->trans("Factures")." idp\">$objp->nom | \n";
-
- print "".price($objp->amount_ht)." | \n";
- print "".price($objp->amount_ttc)." | \n";
-
- $total_ht = $total_ht + $objp->amount_ht;
- $total_ttc = $total_ttc + $objp->amount_ttc;
- print "
\n";
- $i++;
+ print "|   | ";
+ print "".$langs->trans("Factures")." idp\">$objp->nom | \n";
+
+ print "".price($objp->amount_ht)." | \n";
+ print "".price($objp->amount_ttc)." | \n";
+
+ $total_ht = $total_ht + $objp->amount_ht;
+ $total_ttc = $total_ttc + $objp->amount_ttc;
+ print "
\n";
+ $i++;
}
- }
- $db->free();
+ $db->free($result);
} else {
- dolibarr_print_error($db);
+ dolibarr_print_error($db);
}
print '';
print '| '.price($total_ht).' | ';
@@ -116,26 +120,31 @@ print '
';
/*
* Frais, factures fournisseurs.
*/
-
-$sql = "SELECT s.nom, s.idp, sum(f.total_ht) as amount_ht, sum(f.total_ttc) as amount_ttc";
-$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 ($conf->compta->mode == 'CREANCES-DETTES') {
+ $sql = "SELECT s.nom, s.idp, sum(f.total_ht) as amount_ht, sum(f.total_ttc) as amount_ttc, date_format(f.datef,'%Y-%m') as dm";
+ $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'";
+ }
+} else {
+ $sql = "SELECT 'Fournisseurs' as nom, '0' as idp, sum(p.amount) as amount_ttc, date_format(p.datep,'%Y-%m') as dm";
+ $sql .= " FROM ".MAIN_DB_PREFIX."paiementfourn as p ";
+ $sql .= "left join ".MAIN_DB_PREFIX."facture_fourn as f ";
+ $sql .= "on f.rowid = p.fk_facture_fourn";
+ if ($_GET["year"]) {
+ $sql .= " AND p.datep between '".$_GET["year"]."-01-01 00:00:00' and '".$_GET["year"]."-12-31 23:59:59'";
+ }
}
-if ($modecompta != 'CREANCES-DETTES') {
- $sql .= " AND f.paye = 1";
-}
-$sql .= " GROUP BY s.nom ASC, s.idp";
+$sql .= " GROUP BY nom ASC, idp";
print '| Facturation fournisseurs |
';
$subtotal_ht = 0;
$subtotal_ttc = 0;
$result = $db->query($sql);
if ($result) {
- $num = $db->num_rows();
+ $num = $db->num_rows($result);
$i = 0;
-
if ($num > 0) {
$var=True;
while ($i < $num) {
@@ -156,7 +165,7 @@ if ($result) {
$i++;
}
}
- $db->free();
+ $db->free($result);
} else {
dolibarr_print_error($db);
}
diff --git a/htdocs/compta/resultat/index.php b/htdocs/compta/resultat/index.php
index fff913f6ee1..04f560f4176 100644
--- a/htdocs/compta/resultat/index.php
+++ b/htdocs/compta/resultat/index.php
@@ -54,98 +54,105 @@ $modecompta = $conf->compta->mode;
if ($_GET["modecompta"]) $modecompta=$_GET["modecompta"];
-$title="Résultat comptable, résumé annuel";
+$title="Résultat comptable (HT), résumé annuel";
$lien=($year_start?"".img_previous()." ".img_next()."":"");
print_fiche_titre($title,$lien);
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";
+// Affiche règles de calcul
+print "Ce rapport présente la balance entre les recettes et les dépenses facturées aux clients ou fournisseurs:
\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 recettes-dépenses pour n\'inclure que les factures effectivement payées).
';
+ print $langs->trans("RulesResultDue");
+ print '(Voir le rapport recettes-dépenses pour n\'inclure que les factures effectivement payées).
';
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 pour inclure les factures non encore payée).
';
+ print $langs->trans("RulesResultInOut");
+ print '(Voir le rapport en créances-dettes pour inclure les factures non encore payée).
';
print '
';
}
/*
* Factures clients
*/
-$sql = "SELECT sum(f.total) as amount_ht, sum(f.total_ttc) as amount_ttc, date_format(f.datef,'%Y-%m') as dm";
-$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 ($conf->compta->mode == 'CREANCES-DETTES') {
+ $sql = "SELECT sum(f.total) as amount_ht, sum(f.total_ttc) as amount_ttc, date_format(f.datef,'%Y-%m') as dm";
+ $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";
+} else {
+ $sql = "SELECT sum(p.amount) as amount_ttc, date_format(p.datep,'%Y-%m') as dm";
+ $sql .= " FROM ".MAIN_DB_PREFIX."paiement as p ";
+ $sql .= "left join ".MAIN_DB_PREFIX."facture as f ";
+ $sql .= "on f.rowid = p.fk_facture";
}
if ($socidp)
{
$sql .= " AND f.fk_soc = $socidp";
}
-if ($modecompta != 'CREANCES-DETTES') {
- $sql .= " AND f.paye = 1";
-}
$sql .= " GROUP BY dm DESC";
+
$result=$db->query($sql);
if ($result)
{
- $num = $db->num_rows($result);
- $i = 0;
- while ($i < $num)
+ $num = $db->num_rows($result);
+ $i = 0;
+ while ($i < $num)
{
- $row = $db->fetch_object($result);
- $encaiss[$row->dm] = $row->amount_ht;
- $encaiss_ttc[$row->dm] = $row->amount_ttc;
- $i++;
+ $row = $db->fetch_object($result);
+ $encaiss[$row->dm] = $row->amount_ht;
+ $encaiss_ttc[$row->dm] = $row->amount_ttc;
+ $i++;
}
+ $db->free($result);
}
else {
dolibarr_print_error($db);
}
-$db->free($result);
+
/*
* Frais, factures fournisseurs.
*/
-$sql = "SELECT sum(f.total_ht) as amount_ht, sum(f.total_ttc) as amount_ttc, date_format(f.datef,'%Y-%m') as dm";
-$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 ($conf->compta->mode == 'CREANCES-DETTES') {
+ $sql = "SELECT sum(f.total_ht) as amount_ht, sum(f.total_ttc) as amount_ttc, date_format(f.datef,'%Y-%m') as dm";
+ $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";
+} else {
+ $sql = "SELECT sum(p.amount) as amount_ttc, date_format(p.datep,'%Y-%m') as dm";
+ $sql .= " FROM ".MAIN_DB_PREFIX."paiementfourn as p ";
+ $sql .= "left join ".MAIN_DB_PREFIX."facture_fourn as f ";
+ $sql .= "on f.rowid = p.fk_facture_fourn";
}
if ($socidp)
{
$sql .= " AND f.fk_soc = $socidp";
}
-if ($modecompta != 'CREANCES-DETTES') {
- $sql .= " AND f.paye = 1";
-}
$sql .= " GROUP BY dm DESC";
$result=$db->query($sql);
if ($result)
{
- $num = $db->num_rows($result);
- $i = 0;
- while ($i < $num)
+ $num = $db->num_rows($result);
+ $i = 0;
+ while ($i < $num)
{
- $row = $db->fetch_object($result);
- $decaiss[$row->dm] = $row->amount_ht;
- $decaiss_ttc[$row->dm] = $row->amount_ttc;
- $i++;
+ $row = $db->fetch_object($result);
+ $decaiss[$row->dm] = $row->amount_ht;
+ $decaiss_ttc[$row->dm] = $row->amount_ttc;
+ $i++;
}
+ $db->free($result);
}
else {
dolibarr_print_error($db);
}
-$db->free($result);
+
+
/*
- * Tableau
+ * Affiche tableau
*/
print '';
diff --git a/htdocs/compta/stats/index.php b/htdocs/compta/stats/index.php
index f30ea664840..666e6b84542 100644
--- a/htdocs/compta/stats/index.php
+++ b/htdocs/compta/stats/index.php
@@ -50,21 +50,37 @@ if ($user->societe_id > 0)
$socidp = $user->societe_id;
}
-$mode='recettes';
-if ($conf->compta->mode == 'CREANCES-DETTES') { $mode='creances'; }
+$modecompta = $conf->compta->mode;
+if ($_GET["modecompta"]) $modecompta=$_GET["modecompta"];
-if ($mode=='creances') {
- $title="Chiffre d'affaire (".$conf->monnaie." HT, ".$mode.")";
+if ($modecompta=='CREANCES-DETTES') {
+ $title="Chiffre d'affaire (".$conf->monnaie." HT)";
} else {
- $title="Chiffre d'affaire (".$conf->monnaie." TTC, ".$mode.")";
+ $title="Chiffre d'affaire (".$conf->monnaie." TTC)";
}
$lien=($year_start?"".img_previous()." ".img_next()."":"");
print_fiche_titre($title,$lien);
+
+// Affiche règles de calcul
+print "Ce rapport présente le CA:
\n";
+if ($modecompta=="CREANCES-DETTES")
+{
+ print $langs->trans("RulesCADue");
+ print '(Voir le rapport recettes-dépenses pour n\'inclure que les factures effectivement payées).
';
+ print '
';
+}
+else {
+ print $langs->trans("RulesCAIn");
+ print '(Voir le rapport en créances-dettes pour inclure les factures non encore payée).
';
+ print '
';
+}
+
print '
';
+
if ($conf->compta->mode == 'CREANCES-DETTES') {
- $sql = "SELECT sum(f.total) as amount , date_format(f.datef,'%Y-%m') as dm";
+ $sql = "SELECT sum(f.total) as amount, sum(f.total_ttc) as amount_ttc, date_format(f.datef,'%Y-%m') as dm";
$sql .= " FROM ".MAIN_DB_PREFIX."facture as f";
$sql .= " WHERE f.fk_statut = 1";
$sql .= " AND f.paye = 1";
@@ -78,24 +94,28 @@ if ($conf->compta->mode == 'CREANCES-DETTES') {
$sql .= "left join ".MAIN_DB_PREFIX."facture as f ";
$sql .= "on f.rowid = p.fk_facture";
}
-
if ($socidp)
{
$sql .= " AND f.fk_soc = $socidp";
}
$sql .= " GROUP BY dm DESC";
+
$result = $db->query($sql);
if ($result)
{
- $num = $db->num_rows();
- $i = 0;
- while ($i < $num)
+ $num = $db->num_rows($result);
+ $i = 0;
+ while ($i < $num)
{
- $row = $db->fetch_row($i);
- $cum[$row[1]] = $row[0];
- $i++;
+ $obj = $db->fetch_object($result);
+ $cum[$obj->dm] = $obj->amount;
+ $i++;
}
+ $db->free($result);
+}
+else {
+ dolibarr_print_error($db);
}
print '';
diff --git a/htdocs/langs/en_US/compta.lang b/htdocs/langs/en_US/compta.lang
index 33fc4e26221..98088f54080 100644
--- a/htdocs/langs/en_US/compta.lang
+++ b/htdocs/langs/en_US/compta.lang
@@ -20,4 +20,8 @@ VATSummary=VAT Summary
VATPayed=VAT payed
SocialContributions=Social contributions
AccountancyTreasuryArea=Accountancy/Treasury area
-NewPayment=New payment
\ No newline at end of file
+NewPayment=New payment
+RulesResultDue=- Les dépenses de charges ne sont pas incluses.
- Il se base sur la date de validation des factures.
- Il inclut les factures dues, qu'elles soient payées ou non
+RulesResultInOut=- Les dépenses de charges ne sont pas incluses.
- Il se base sur les paiements des factures effectivement réalisés
+RulesCADue=- Il se base sur la date de validation des factures.
- Il se base sur les factures dues, qu'elles soient payées ou non
+RulesCAIn=- Il se base sur la date des paiements de factures
- Il se base sur les paiements des factures effectivement réalisés
diff --git a/htdocs/langs/fr_FR/compta.lang b/htdocs/langs/fr_FR/compta.lang
index b781eb14808..6167a085335 100644
--- a/htdocs/langs/fr_FR/compta.lang
+++ b/htdocs/langs/fr_FR/compta.lang
@@ -22,3 +22,7 @@ SocialContributions=Charges sociales
AccountancyTreasuryArea=Espace Compta/Tréso
NewPayment=Nouveau paiement
ListPayment=Liste des paiements
+RulesResultDue=- Les dépenses de charges ne sont pas incluses.
- Il se base sur la date de validation des factures.
- Il inclut les factures dues, qu'elles soient payées ou non
+RulesResultInOut=- Les dépenses de charges ne sont pas incluses.
- Il se base sur les paiements des factures effectivement réalisés
+RulesCADue=- Il se base sur la date de validation des factures.
- Il se base sur les factures dues, qu'elles soient payées ou non
+RulesCAIn=- Il se base sur la date des paiements de factures
- Il se base sur les paiements des factures effectivement réalisés