Quintiq file version 2.0
|
#parent: #root
|
Method GetQuantityForOptimizer (
|
const LibOpt_Scope scope
|
) const as Real
|
{
|
TextBody:
|
[*
|
value := this.Quantity();
|
assert( not this.IsPostponed() or this.IsManuallyPostponed(), 'we should only be calling this in the optimizer on original sales demand in period, not postponed one' );
|
|
if ( this.CanBePostponed() and not this.IsManuallyPostponed() ) // add quantity that has been postponed within the scope. This is all the sd that can be replanned.
|
{
|
value := value + sum( this,
|
PostponedSalesDemand,
|
postponedsd,
|
not postponedsd.IsManuallyPostponed() // exclude manually postponed quantity as the optimizer does not change it
|
and scope.Contains( postponedsd.ProductInStockingPointInPeriodPlanning().PISPIPInOptimizerRun() ),
|
postponedsd.QuantityToPlan() );
|
}
|
|
return value;
|
*]
|
InterfaceProperties { Accessibility: 'Module' }
|
}
|