Quintiq file version 2.0
|
#parent: #root
|
Method InitVariablesForLevelGoal (
|
CapacityPlanningSuboptimizer_CapacityPlanningAlgorithm program,
|
const RunContextForCapacityPlanning runcontext
|
) const
|
{
|
Description: 'Initialize all KPI variables that used as goal'
|
TextBody:
|
[*
|
traverse( this, MacroPlan.StrategyMacroPlan.StrategyLevelMacroPlan, level )
|
{
|
var := program.GoalForLevelVariables().New( level );
|
var.LowerBound( Real::MinReal() );
|
if ( runcontext.IsMetaIteration() )
|
{
|
varslack := program.GoalLevelSlackVariables().New( level );
|
varslack.UpperBound( 0.0 ); // only when we set a bound for the level we will allow some small nonzero value
|
}
|
}
|
|
if ( runcontext.IsMetaIteration() )
|
{
|
lotsizevarslack := program.GoalLevelSlackLotSizeVariables().New();
|
lotsizevarslack.UpperBound( 0.0 );
|
}
|
*]
|
InterfaceProperties { Accessibility: 'Module' }
|
}
|