The computation of Supply Stock can take quite some time and its UX could be improved. Currently it is implemented as a Wizard which:
- Makes the user wait until the process finishes, blocking any other operations
- Each step of the wizard does its own checks (such as checking if there are old productions or old customer shipments). This means that after computing the productions (which can already take some time) the user will see a Warning saying there are old Customer Shipments, making the computation process start over again.
So I propose to keep the wizard but:
- We group the checks in a single method that is executed at the very beginning. The stock_supply_production can override it and its own checks.
- Only after all those checks have passed the computation starts in a queue, so the last step of the wizard tells the user to wait until she is notified.
Any problems with such proposal? Better ideas?