Hi Faizan,
There is no problem in having company code with different currencies in same client.
Now i understand that you would like to have reporting for all company codes in USD, for this purpose as suggested by Preet, please go ahead define additional currencies in OB22.
So you can define, currency type 10 as local currency for each of your company code say GBP
Then you can define currency type 30 as group currency for all the company code and define it as USD.
Also you can control the exchange rate type and translation dates for USD in this OB22 t. code.
This way you would have reporting in both GBP (probably for local reporting purposes) and USD (for group reporting purposes)
Thanks,
Gaurav