Hello,
first of all thank you for your ideas and effort. From a technical perspectice both solutions will help but from business process perspective i still have a problem. I will be more precise about my issue.
I created a custom field which is part of a business rule. This rule checks if the field has a value and has a second condition looking at the base value of the quote. I want to make sure, that the quote contains products, if the custom field has a value. This usally hapens in stage 2/3 of the business process.
If I revise the quote i get an business error. The standard revise action copies the quote first and then adds the products.
I think that both of your soltuions will result in the same problem.