Probably should have done this with a CTE, but anyway, I think this works:
SELECT mx.SaleYear, mx.SaleWeek, mx.highestSale, sd.ProductID
FROM
(SELECT SaleYear
, SaleWeek
, MAX(Quantity) AS highestSale
FROM SalesData
GROUP BY SaleYear, SaleWeek) mx
INNER JOIN SalesData sd ON (
mx.SaleYear = sd.SaleYear
AND mx.SaleWeek = sd.SaleWeek
AND mx.highestSale = sd.Quantity
)
ORDER BY sd.ProductID
, mx.SaleYear
, mx.SaleWeek;