| Quintiq file version 2.0 | 
| #parent: #root | 
| Method SetPTVarProperties ( | 
|   CapacityPlanningSuboptimizer_CapacityPlanningAlgorithm program, | 
|   const constcontent PeriodTaskOperations userperiodtasks, | 
|   const LibOpt_Scope scope | 
| ) const | 
| { | 
|   Description: 'Initialize all variables related to period task operation, including lot sizes, campaign, etc' | 
|   TextBody: | 
|   [* | 
|     // create period task related variables for operations | 
|     // 1. Init variables for all period tasks, freeze the lowerbounds for operations with a min quantity or feedback. | 
|     // 2. Freeze the user period tasks | 
|      | 
|     runcontext := this.GetRunContextConst();  | 
|      | 
|     // Operation: Init variables for all period tasks | 
|     traverse( scope.GetOperationInOptimizerRunConst(), Elements, operation ) | 
|     { | 
|       periods := this.GetPeriodsForOperation( scope, operation ); | 
|       traverse( periods, Elements, period ) | 
|       { | 
|         // PTQty variable UoM: Unit | 
|         var := program.PTQtyVariables().Get( operation, period ); | 
|      | 
|         this.SetPTQtyVariableProperties( scope, runcontext, operation, period, var, true /*set start value*/, program );  | 
|       } | 
|     } | 
|     this.FixUserPeriodTask( userperiodtasks, program ); | 
|   *] | 
|   InterfaceProperties { Accessibility: 'Module' } | 
| } |