Skip to Content

Top 10 Sales Item Report

Hi Experts,

Am using the following query to get Top 10 Sales Items Report.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

SELECT TOP 20 T1.ItemCode, T2.ItemName, cast(sum(T1.Quantity) as numeric) as 'Quantity Sold', sum(T1.LineTotal - T1.VatSum) as 'Total Net Value', sum(T1.LineTotal) as 'Total Gross Value', T1.Currency

FROM dbo.INV1 T1

LEFT OUTER JOIN OITM T2 on T1.ItemCode = T2.ItemCode

WHERE T1.ItemCode is not null

GROUP BY T1.ItemCode, T2.ItemName, T1.Currency

order by sum(T1.Quantity) desc

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Now I wand to return this report between a date range. How its possible

Please help Me

Thanks & Regards.

Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

2 Answers

  • Best Answer
    Jan 10, 2015 at 06:26 AM

    Hi,

    Try:

    SELECT TOP 20 T1.ItemCode, T2.ItemName, cast(sum(T1.Quantity) as numeric) as 'Quantity Sold', sum(T1.LineTotal - T1.VatSum) as 'Total Net Value', sum(T1.LineTotal) as 'Total Gross Value', T1.Currency

    FROM dbo.INV1 T1 inner join OINV T3 on T1.docentry = t3.docentry

    LEFT OUTER JOIN OITM T2 on T1.ItemCode = T2.ItemCode

    WHERE T1.ItemCode is not null and t3.docdate between [%0] and [%1]

    GROUP BY T1.ItemCode, T2.ItemName, T1.Currency

    order by sum(T1.Quantity) desc

    Thanks & Regards,

    Nagarajan

    Add comment
    10|10000 characters needed characters exceeded

  • Jan 10, 2015 at 07:13 AM

    Hi,

    Try this

    SELECT TOP 20 T1.ItemCode, T2.ItemName, cast(sum(T1.Quantity) as numeric) as 'Quantity Sold', sum(T1.LineTotal - T1.VatSum) as 'Total Net Value', sum(T1.LineTotal) as 'Total Gross Value', T1.Currency

    FROM dbo.INV1 T1 INNER JOIN OINV T3 ON T1.DocEntry=T3.DocEntry

    LEFT OUTER JOIN OITM T2 on T1.ItemCode = T2.ItemCode

    WHERE T1.ItemCode is not null AND T3.DocDate>= [%0] AND T3.DocDate<=[1%]

    GROUP BY T1.ItemCode, T2.ItemName, T1.Currency

    order by sum(T1.Quantity) desc

    Regards,

    Manish

    Add comment
    10|10000 characters needed characters exceeded