Shipping would be a field based on location using a case statement
Location would be UK or WW Case Location equals UK sets Shipping to UK shipping charge, etc
I see two possibilities based on your example numbers.
With numbers you posted, your worldwide shipping charge is always twice the UK rate. If that is always true for all objects, you can simply look up and total the UK rate for all objects and double it for customers outside the UK. If this is not the case, you'll need to set up a calculation field that selects between the two shipping rates for each object.
Have you set this up with the typical Invoice, LineItems and Products tables so that LineItems lists the objects on the Invoices layout and looks up prices and shipping rates from the Products table?
If so, this calculation field could be added to LineItems to select the correct shipping rate:
If ( Invoice::ShipToCountry = "UK" ; UKShipRate ; WorldShipRate )
UKShipRate and WorldShipRate are LineItems fields with values that would be looked up from Products.
I didn't manage to use the IF nor the CASE operators, as I was working with two tables and that seemed to interfer with the logical association of record+record.
However I used a stratagem creating a double association so that
object = object
and shiptocountry = shiptocountry
This way if mr. Brown purchased a computer and wants it shipped to UK, we have an Object and a Shiptocountry that will individuate one and only one record in the Shipping rate table, and this is my need.
Thanks to both for help!