Now the extra effort properties are respected. The code is simplified
since there is no longer needed special handling for exceptions.
FEA: ItEr68OTS05IntroducionLimiteSobreasignacionCalendarios
Now these two components support a new attribute 'behaviour'.
This attribute defines how the search components should work. For
instance, non limiting search is configured to allow multiple selection
and search only for non limiting resources. On the contrary, limiting
search only allows to pick one resource.
New behaviours could be added in the future, or support new
functionality, for example, allow to select only specific resources, for
instance.
FEA: ItEr68OTS03XestionRecursosEstratexicosItEr67OTS03
This replacement has implications in higher layers and makes the application
crash, but changes are separated in several patches to improve their legibility.
In this patch, we modify the DB, the DB update system and the entities in the
bussiness layer.
FEA: ItEr65OTS07XestionRecursosEstratexicos
* The problem is that in last version of CutyCapt the parameter name has changed
from "user-styles" to "user-style-path".
FEA: ItEr68S08PrintingSupport
Use field insteand. This reduces the possibility of introducing errors
by calling the method with the wrong picker.
FEA: ItEr68OTS05IntroducionLimiteSobreasignacionCalendarios
The callers now have to construct Capacity objects in a way that the
previous behavior is preserved.
FEA: ItEr68OTS05IntroducionLimiteSobreasignacionCalendarios
When choosing a day it still doesn't show all the capacity information
correctly, but editing it works well.
FEA: ItEr68OTS05IntroducionLimiteSobreasignacionCalendarios
When an element is forced into a position (apropriative allocation) and
there's not room enough for allocating that element at that position,
it's necessary to unschedule elements in that queue until there's
room enough.
Before, all elements in a queue were unscheduled which guaranted the new
element would fit, but this caused that other elements could be rearranged
when it was not actually needed.
Now the algorithm only unschedules enough elements for fitting the
allocating element at the new position, instead of unscheduling the whole
queue since that position.
FEA: ItEr66OTS03AlgoritmosLimitantesItEr65OTS05
It's not necessary to call it as queues are refreshed later and its elements
are shown at their correct position. In addition, this method was
causing trouble as sometimes an element was successfully removed but not
sucessfully added to the same queue.
FEA: ItEr66OTS03AlgoritmosLimitantesItEr65OTS05
Once all new allocations are done, originally unschedule elements are
unschedule/schedule again, to force dependencies are satisfy
FEA: ItEr66OTS03AlgoritmosLimitantesItEr65OTS05
Now, when a queue element is allocated at a specific date:
* Unschedule all elements in target queue from that date on. If there's
already an element at that date, unschedule it too.
* Schedule those elements back in the queue in topological order. This
guarantees that dependencies are satisfied.
As a result, the new element is allocated at specified date and all the
elements after that day are shifted in the queue. If there were
dependencies between those shifted elements and other elements in the
queue, they will be shifted in their own queue too.
Take into account scheduling time when moving a task to a specific date.
Distinguish between how to generate day assigments between appropriate and
non-appropriative allocations.
FEA: ItEr66OTS03AlgoritmosLimitantesItEr65OTS05