From dc7ab812fc38af1e81892bb3861a702b8ff9eaaf Mon Sep 17 00:00:00 2001 From: sawaneh1 Date: Thu, 12 Jun 2025 14:45:56 +0000 Subject: [PATCH] correct contribution margin --- debitor/kassespor.php | 106 +++++++++++++++++++----------------------- 1 file changed, 48 insertions(+), 58 deletions(-) diff --git a/debitor/kassespor.php b/debitor/kassespor.php index 8f0b7ea9..50176773 100755 --- a/debitor/kassespor.php +++ b/debitor/kassespor.php @@ -521,45 +521,35 @@ function udskriv($fakturadatoer,$logtimes,$afdelinger,$sort,$nysort,$idnumre,$fa $dkksum[$x]=dkdecimal($sum[$x]+$moms[$x],2); - $q_dg = db_fetch_array(db_select(" - SELECT - COALESCE(SUM(pris * antal), 0) AS total_sales, - COALESCE(SUM( - CASE - WHEN LOWER(TRIM(COALESCE(rabatart, ''))) = 'amount' THEN rabat * antal - ELSE (pris * rabat / 100) * antal - END - ), 0) AS discount, - COALESCE(SUM(kostpris * antal), 0) AS kostpris, - COALESCE(SUM( - ( - pris - - CASE - WHEN LOWER(TRIM(COALESCE(rabatart, ''))) = 'amount' THEN rabat - ELSE (pris * rabat / 100) - END - - kostpris - ) * antal - ), 0) AS dg - FROM ordrelinjer - WHERE ordre_id = '{$id[$x]}' - - ", __FILE__ . ' linje ' . __LINE__)); - - + $q_dg = db_fetch_array(db_select(" +SELECT +COALESCE(SUM(pris * antal), 0) AS total_sales, +COALESCE(SUM( + CASE + WHEN LOWER(TRIM(COALESCE(rabatart, ''))) = 'amount' THEN rabat * antal + ELSE (pris * rabat / 100) * antal + END +), 0) AS discount, +COALESCE(SUM(kostpris * antal), 0) AS kostpris, +COALESCE(SUM( + ( + pris - + CASE + WHEN LOWER(TRIM(COALESCE(rabatart, ''))) = 'amount' THEN rabat + ELSE (pris * rabat / 100) + END + - kostpris + ) * antal +), 0) AS dg +FROM ordrelinjer +WHERE ordre_id = '{$id[$x]}' + AND NOT (pris = 0 AND kostpris > 0) +", __FILE__ . ' linje ' . __LINE__)); $discount[$x] = $q_dg['discount']; $gross_profit[$x] = $q_dg['dg']; $kostpris[$x] = $q_dg['kostpris']; $total_discount += $discount[$x]; $total_gross_profit += $gross_profit[$x]; - - - - - - - - $x++; } for ($x=0;$x".dkdecimal($retur,2)."
\n"; $retursum+=$retur; - $q_dg = db_fetch_array(db_select(" - SELECT - COALESCE(SUM(pris * antal), 0) AS total_sales, - COALESCE(SUM( - CASE - WHEN LOWER(TRIM(COALESCE(rabatart, ''))) = 'amount' THEN rabat * antal - ELSE (pris * rabat / 100) * antal - END - ), 0) AS discount, - COALESCE(SUM(kostpris * antal), 0) AS kostpris, - COALESCE(SUM( - ( - pris - - CASE - WHEN LOWER(TRIM(COALESCE(rabatart, ''))) = 'amount' THEN rabat - ELSE (pris * rabat / 100) - END - - kostpris - ) * antal - ), 0) AS dg - FROM ordrelinjer - WHERE ordre_id = '{$id[$x]}' - ", __FILE__ . ' linje ' . __LINE__)); - + $q_dg = db_fetch_array(db_select(" +SELECT +COALESCE(SUM(pris * antal), 0) AS total_sales, +COALESCE(SUM( + CASE + WHEN LOWER(TRIM(COALESCE(rabatart, ''))) = 'amount' THEN rabat * antal + ELSE (pris * rabat / 100) * antal + END +), 0) AS discount, +COALESCE(SUM(kostpris * antal), 0) AS kostpris, +COALESCE(SUM( + ( + pris - + CASE + WHEN LOWER(TRIM(COALESCE(rabatart, ''))) = 'amount' THEN rabat + ELSE (pris * rabat / 100) + END + - kostpris + ) * antal +), 0) AS dg +FROM ordrelinjer +WHERE ordre_id = '{$id[$x]}' + AND NOT (pris = 0 AND kostpris > 0) +", __FILE__ . ' linje ' . __LINE__)); $discount_val = $q_dg['discount']; $gross_profit_val = $q_dg['dg'];