Fix to Business Object to allow the before insert trigger to fire, before checking for required fields.

Also, more flexible email template to allow caller to declare the name of the lookup key column