| Quintiq file version 2.0 | 
| #parent: #root | 
| Method DuplicateStrategySettings ( | 
|   Strategy strategy, | 
|   Boolean reusestrategymacroplan | 
| ) as StrategyMacroPlan | 
| { | 
|   Description: 'Make copy of strategy for use in MacroPlan dataset' | 
|   TextBody: | 
|   [* | 
|     str := this.StrategyMacroPlan();   | 
|     if ( not reusestrategymacroplan )  | 
|     { | 
|       this.UpdateStategySettingsInGlobalParameter( strategy,  | 
|                                                    true ); // force global parameter update | 
|       debuginfo( 'duplicating strategy for ', this.DatasetName() );  | 
|       this.StrategyMacroPlan( relflush );  | 
|       this.SolverSettingGroupMacroPlan( relflush );  | 
|        | 
|       traverse( strategy, ScenarioManager.SolverSettingGroup, grp )  | 
|       { | 
|         SolverSettingGroupMacroPlan::Create( this, grp );  | 
|       } | 
|        | 
|       str := StrategyMacroPlan::Create( this, strategy ); | 
|       Transaction::Transaction().Propagate(); // set declarative attributes on copied object  | 
|     } | 
|     else | 
|     { | 
|       debuginfo( 'reusing strategy macroplan for', this.DatasetName() );  | 
|     } | 
|      | 
|     description := this.GetDescriptionStrategy();  | 
|     str.StrategyDescription( description );  | 
|      | 
|     return str; | 
|   *] | 
|   InterfaceProperties { Accessibility: 'Module' } | 
| } |