| Quintiq file version 2.0 | 
| #parent: #root | 
| Method RunSmartPlanFromPlanningMatrix ( | 
|   ProductInStockingPointInPeriodPlannings smartplanpispips, | 
|   Real userqty, | 
|   ScenarioManager scenariomanager | 
| ) | 
| { | 
|   Description: 'Will call the RunSmalPlan with some default parameters' | 
|   TextBody: | 
|   [* | 
|     //Pre-set smart plan parameters | 
|     hastotalsupplyuser := true; | 
|     run := this.Optimization().GetLastSmartPlanAlgorithmRun( false /*issmartplanforperiodtask*/ ); | 
|     totalsupplyuser := userqty; | 
|      | 
|     smartplansetting:= this.SmartPlanSetting(); | 
|     // Get the smart plan settings based on the latest smart plan run | 
|     isoverwritemanual := smartplansetting.OverwriteLockedPlanning(); | 
|     isupstreamsmartplan := smartplansetting.IsUpstream(); | 
|     ismiddleoutsmartplan := smartplansetting.IsMiddleOut();                             | 
|     isonlyplanonestepupstream := smartplansetting.OnlyPlanOneStep(); | 
|     isusingselectedunits := smartplansetting.LimitUnitBySmartPlan(); | 
|      | 
|     units := smartplansetting.UnitForSmartPlan( relget );   | 
|      | 
|     strategy := select( scenariomanager, Strategy, strategy, strategy.Name() = smartplansetting.Strategy() ); | 
|      | 
|     periodstart := this.FirstPlanningPeriod(); | 
|     periodend := this.LastPlanningPeriod(); | 
|     AlgorithmRun::GetLastOptimizationHorizon( run, this, periodstart, periodend ); | 
|      | 
|     //info('total supply matrix:', totalsupplyuser ) | 
|     this.RunSmartPlan( true /*issmartplan*/, | 
|                        false /*issmartplanforperiodtask*/,  | 
|                        smartplanpispips, | 
|                        hastotalsupplyuser, | 
|                        totalsupplyuser,  | 
|                        isupstreamsmartplan, | 
|                        ismiddleoutsmartplan, | 
|                        isonlyplanonestepupstream, | 
|                        strategy, | 
|                        isoverwritemanual, | 
|                        periodstart, | 
|                        periodend, | 
|                        isusingselectedunits, | 
|                        units,  | 
|                        null( Process_MP ),  | 
|                        false ); // not re-using StrategyMacroPlan | 
|   *] | 
| } |