Hi,
If I run your query I am not getting any output. I have changed join. Try this and let me know your feedback.
SELECT
T1.ItemCode, T1.ItemName, SUM(T0.Price * T0.Quantity) AS turnover,SUM(T0.Quantity) AS QTY,
Sum(IsNull(T0.LineTotal,0)) 'Sales Amt',
SUM(IsNull(T0.GrssProfit,0)) 'Gross Profit',
Case WHEN Sum(Isnull(T0.LineTotal,0)) = 0 THEN 0 ELSE
SUM(IsNUll(T0.GrssProfit,0))/Sum(Isnull(T0.LineTotal,0)) * 100 END 'Gross Profit %'
FROM INV1 T0 INNER JOIN OITM T1 ON T0.ItemCode = T1.ItemCode LEFT JOIN OITB T2 ON T2.ItmsGrpCod = T1.ItmsGrpCod LEFT JOIN OINV T3 ON T3.DocEntry = T0.DocEntry LEFT JOIN OCRD T4 ON T1.CardCode = T4.CardCode LEFT JOIN OCRG T5 ON T4.GroupCode = T5.GroupCode
WHERE T3.DocDate Between [%1] AND [%2]
GROUP BY T1.ItemCode, T1.ItemName
UNION ALL
SELECT
T1.ItemCode, T1.ItemName, SUM(-T0.Price * T0.Quantity) AS turnover,SUM(-T0.Quantity) AS QTY,
Sum(IsNull(-T0.LineTotal,0)) 'Sales Amt',
SUM(IsNull(-T0.GrssProfit,0)) 'Gross Profit',
Case WHEN Sum(Isnull(-T0.LineTotal,0)) = 0 THEN 0 ELSE
SUM(IsNUll(-T0.GrssProfit,0))/Sum(Isnull(-T0.LineTotal,0)) * 100 END 'Gross Profit %'
FROM RIN1 T0 LEFT JOIN OITM T1 ON T0.ItemCode = T1.ItemCode LEFT JOIN OITB T2 ON T2.ItmsGrpCod = T1.ItmsGrpCod LEFT JOIN ORIN T3 ON T3.DocEntry = T0.DocEntry LEFT JOIN OCRD T4 ON T1.CardCode = T4.CardCode LEFT JOIN OCRG T5 ON T4.GroupCode = T5.GroupCode
WHERE T3.DocDate Between [%1] AND [%2]
GROUP BY T1.ItemCode, T1.ItemName
Thanks & Regards,
Nagarajan