Distinct is not a function. It does not take parameters. It does not give you distinct of a column that you put brackets around. It gets you distinct rows.
For better understanding, correct how it's written (and fix the joins):
select distinct
cetshnumber, INVOICEITEMS.ItemQuantity 'Quantity Manufactured',INVOICEITEMS.ItemQuantity 'Quantity Cleared'
from INVOICEITEMS inner join invoice ON invoice.invoicenumber=invoiceitems.invoicenumber
CROSS JOIN cetsh
where month(InvoiceDate)=11 and year(InvoiceDate)=2012
group by cetshnumber, INVOICEITEMS.ItemQuantity
Now you can see you're missing a join clause, which is probably why you have duplicate rows.
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability
We walk in the dark places no others will enter
We stand on the bridge and no one may pass