Quintiq file version 2.0
|
#parent: #root
|
Method AddPTQtyGoal (
|
const LibOpt_Scope scope,
|
CapacityPlanningSuboptimizer_CapacityPlanningAlgorithm program,
|
MPGoal goal
|
) const
|
{
|
TextBody:
|
[*
|
if ( this.IsExecutePTQtyDoInventoryBased() )
|
{
|
traverse( scope.GetPISPIPInOptimizerRunConst(), Elements.astype( ProductInStockingPointInPeriodPlanningLeaf ), pispip, not pispip.ProductInStockingPoint_MP().IsNegativeInventoryAllowed() )
|
{
|
var := program.InvQtyVariables().Get( pispip );
|
goal.NewTerm( -1.0, var );
|
}
|
}
|
else
|
{
|
traverse( scope.GetOperationInOptimizerRunConst(), Elements, operation )
|
{
|
periods := this.GetPeriodsForOperation( scope, operation );
|
traverse( periods, Elements, period )
|
{
|
// PTQty variable UoM: Unit
|
var := program.PTQtyVariables().Get( operation, period );
|
goal.NewTerm( -1.0, var )
|
}
|
}
|
|
traverse( scope.GetProductInTripInOptimizerRunConst(), Elements, productintrip )
|
{
|
var := program.TripNewSupplyVariables().Get( productintrip ); // The supply quantity for product in trip
|
goal.NewTerm( -1.0, var )
|
}
|
}
|
*]
|
InterfaceProperties { Accessibility: 'Module' }
|
}
|