| Quintiq file version 2.0 | 
| #parent: #root | 
| Method InitVariablesForStockingPointInventory ( | 
|   CapacityPlanningSuboptimizer_CapacityPlanningAlgorithm program, | 
|   const RunContextForCapacityPlanning runcontext, | 
|   const LibOpt_Scope scope | 
| ) const | 
| { | 
|   Description: 'Initialize variables for stocking point for capacity calculation' | 
|   TextBody: | 
|   [* | 
|     // soh yee Jul-7-2014 (modified) | 
|      | 
|     traverse( scope.GetStockingPointInPeriodInOptimizerRunConst(), Elements, spip,  | 
|               not spip.StockingPoint_MP().IsPlannedInfinite() ) | 
|     { | 
|       // SPInvQty variable UoM: SP | 
|       program.SPInvQtyVariables().New( spip ); | 
|      | 
|       // StockingPointCapacityOverloaded variable UoM: SP | 
|       program.StockingPointCapacityOverloadedVariables().New( spip ); | 
|        | 
|       if ( runcontext.IsMetaIteration() )  | 
|       { | 
|         program.StockingPointCapacityOverloadedMetaVariables().New( spip ); // extra restricted sp capacity, maxcap(1-epsilon) to supress rollbacks for meta | 
|       } | 
|        | 
|       nextspip :=  spip.GetNextPlanningSPIP();  | 
|       if ( not runcontext.IsSmartPlan()  | 
|            and not isnull( nextspip )  | 
|            and not scope.Contains( nextspip.SPIPInOptimizerRun() ) )  | 
|       { | 
|         program.SPInvOutOfScopeSlackVariables().New( spip ); | 
|       } | 
|     } | 
|   *] | 
|   InterfaceProperties { Accessibility: 'Module' } | 
| } |