One of my current projects involves a heavily customized Opportunity form and I was running into the following error messages whenever I attempted to set the value of a custom Attribute which was of a Money type:
A currency is required if a value exists in a money field. Select a currency and try again.
The solution, [...]