1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| SELECT SUM("DATA"."Numéro de la facture du trimestre précédent")"Numéro de la facture du trimestre précédent"
,SUM("DATA"."Numéro de la facture du trimestre en cours") "Numéro de la facture du trimestre en cours",
"DATA"."CardName","DATA"."CardCode", "DATA"."ItemCode",SUM("DATA"."Quantités du trimestre précédent")"Quantités du trimestre précédent",
SUM("DATA"."Quantités du trimestre en cours") "Quantités du trimestre en cours", ((SUM("DATA"."Quantités du trimestre en cours")-SUM("DATA"."Quantités du trimestre précédent"))/SUM("DATA"."Quantités du trimestre précédent")*100) "Variation en pourcentage"
FROM(
SELECT SUM(T0."DocEntry") "Numéro de la facture du trimestre précédent",0 "Numéro de la facture du trimestre en cours",T1."CardName",T1."CardCode",
T0."ItemCode",SUM(T0."Quantity")"Quantités du trimestre précédent",0 "Quantités du trimestre en cours"
FROM INV1 T0 INNER JOIN OINV T1 ON T0."DocEntry"=T1."DocEntry"
WHERE CASE WHEN EXTRACT(MONTH FROM CURRENT_DATE) BETWEEN 01 and 03
AND EXTRACT(YEAR FROM T1."DocDueDate") = EXTRACT(YEAR FROM CURRENT_DATE) - 1
AND EXTRACT(MONTH FROM T1."DocDueDate") BETWEEN 10 AND 12
THEN 1
WHEN EXTRACT(MONTH FROM CURRENT_DATE) BETWEEN 04 AND 06
AND EXTRACT(MONTH FROM T1."DocDueDate") BETWEEN 01 AND 03
THEN 1
WHEN EXTRACT(MONTH FROM CURRENT_DATE) BETWEEN 07 AND 09
AND EXTRACT(MONTH FROM T1."DocDueDate") BETWEEN 04 AND 06
THEN 1
WHEN EXTRACT(MONTH FROM CURRENT_DATE) BETWEEN 10 AND 12
AND EXTRACT(MONTH FROM T1."DocDueDate") BETWEEN 07 AND 09
THEN 1
ELSE 0
END = 1
AND T1."U_OB1_FactRecAuto"='OUI'
GROUP BY T1."CardName",T1."CardCode", T0."ItemCode"
UNION
SELECT 0"Numéro de la facture du trimestre précédent",SUM(T0."DocEntry") "Numéro de la facture du trimestre en cours",
T1."CardName",T1."CardCode", T0."ItemCode",0" Quantités du trimestre précédent",SUM(T0."Quantity")" Quantités du trimestre en cours"
FROM INV1 T0 INNER JOIN OINV T1 ON T0."DocEntry"=T1."DocEntry"
WHERE QUARTER(T1."DocDueDate") = QUARTER(CURRENT_DATE) AND YEAR(T1."DocDueDate")=YEAR(CURRENT_DATE)
AND T1."U_OB1_FactRecAuto"='OUI'
GROUP BY T1."CardName",T1."CardCode", T0."ItemCode") "DATA"
GROUP BY "DATA"."CardName","DATA"."CardCode","DATA"."ItemCode"
HAVING ((SUM("DATA"."Quantités du trimestre en cours")-SUM("DATA"."Quantités du trimestre précédent"))/SUM("DATA"."Quantités du trimestre précédent")*100)<-10 |
Partager