Prevent 'draft' Solver Process from being created when there is already a 'solving' one (#KH-1107).
1. 'Solve Divergences' action: => Display Delivery_viewSolveDivergenceDialog.listbox: -> Delivery_getSolverDecisionList -> Delivery_getSolverProcess => create Solver Process in 'draft' state and build Solver Decisions. 2. Clicking 'Update' button updates Solver Decisions. 3. Click 'Solve Divergences' button after either 'Adopt Prevision' or 'Accept Decision'. => SolverProcess.solve(): Solver Process transit to 'solving' state and 'solve' Activity is created. Before this Activity is executed, user can still select 'Solve Divergences' action and this will create another 'Solver Process' as the current one is not in 'draft' state anymore. Moreover, another user can still 'Adopt Prevision' (while the first user selected 'Accept Decision') and this will be actually be applied despite the first user choice. Instead, create Solver Process when transiting to 'diverged' state and do not display 'Solve Divergences' button nor allow access to 'Solve Divergences Dialog' (Delivery_viewSolveDivergenceDialog) if there is a Solver Process in 'solving' state.
Showing
Please register or sign in to comment