| Quintiq file version 2.0 | 
| #parent: #root | 
| Method InitVariablesForSupplySpecification ( | 
|   CapacityPlanningSuboptimizer_CapacityPlanningAlgorithm program, | 
|   const LibOpt_Scope scope | 
| ) const | 
| { | 
|   Description: 'Initialize the variables for supply specification that is used for goal calculation' | 
|   TextBody: | 
|   [* | 
|     if( this.GetRunContextConst().UseSupplySpecification() ) | 
|     { | 
|       // Supply specifications can also be applied to higher level units which will not be part of unitsforoptimization | 
|       // The supply specification should only be considered if at least one unit in this optimizer runs influences this supply specification | 
|       traverse( this.MacroPlan().GetUnitsConst(), Elements.SupplySpecification, supplyspec, | 
|                 exists( supplyspec, Unit.AllChildren.AsChildren, unit, | 
|                         scope.Contains(  unit.UnitInOptimizerRun() ) ) ) | 
|       { | 
|         // SupplyTargetQtyUnder variable UoM: Unit | 
|         program.SupplyTargetQtyUnderVariables().New( supplyspec ); | 
|         // MinSupplyQtyUnder variable UoM: Unit | 
|         program.MinSupplyQtyUnderVariables().New( supplyspec ); | 
|         // MaxSupplyQtyOver variable UoM: Unit | 
|         program.MaxSupplyQtyOverVariables().New( supplyspec ); | 
|       } | 
|     } | 
|   *] | 
|   InterfaceProperties { Accessibility: 'Module' } | 
| } |