Why dont you just do it as a sub query?
DECLARE @StartYear CHAR(4);
DECLARE @EndYear CHAR(4);
DECLARE @StartMonth SMALLINT;
DECLARE @EndMonth SMALLINT;
DECLARE @TopN SMALLINT;
SET @StartYear = 2014
SET @EndYear = 2014
SET @StartMonth = 1
SET @EndMonth = 3
SET @TopN = 10
select [Customer No.], [Customer Name], [Address1], TEXTSTRE2, [Address2], City, [State], Zip, sum([Sale / Return Amount]) [Sale / Return Amount Total]
from(
SELECT OrdHist.CUSTOMER AS [Customer No.], Cust.NAMECUST AS [Customer Name], Cust.TEXTSTRE1 AS [Address1], Cust.TEXTSTRE2 AS [Address2],
Cust.NAMECITY AS City, Cust.CODESTTE AS [State], Cust.CODEPSTL AS Zip,
CASE
WHEN OrdHist.TRANTYPE=1 THEN OrdHist.FAMTSALES
WHEN OrdHist.TRANTYPE=2 AND OrdHist.FRETSALES = 0 THEN OrdHist.FAMTSALES
ELSE OrdHist.FRETSALES * -1
END AS [Sale / Return Amount]
FROM OESHDT OrdHist INNER JOIN ARCUS Cust ON OrdHist.CUSTOMER = Cust.IDCUST
WHERE OrdHist.YR BETWEEN @StartYear AND @EndYear AND OrdHist.PERIOD BETWEEN @StartMonth AND @EndMonth
--ORDER BY OrdHist.CUSTOMER ASC
) as d
group by [Customer No.], [Customer Name], [Address1], TEXTSTRE2, [Address2], City, [State], Zip
order by [Customer No.]
Thanks,
John