Quintiq file version 2.0 #parent: #root Method NewScenario ( internal[GUIComponent] parent, ScenarioManager owner, ScenarioNode scenarionode, Boolean enableautoimport ) as Scenario id:Method_ScenarioManager_DialogCreateEditMPScenario_NewScenario { #keys: '[11122.0.37341038]' Body: [* // New scenario this.SetAdvanced(); strategy := select(ScenarioManager, Strategy, strategy, strategy.Name() = Translations::MP_GlobalParameters_DefaultStrategyName() ); if( not isnull( strategy ) ) { SelectionStrategy.Data( strategy ); } result := this.DoModal( parent ); scenario := null ( Scenario ); if ( result > 0 ) { scenario := owner.CreateScenarioMP( scenarionode, EditorScenarioName.Text(), EditorAssumption.Text(), EditorComment.Text(), RadioButtonGroupStorageState.BoundValue(), '', guard( SWF_DataHolderCurrentUser.Data().Name(), '' ) ); kbfullid := SelectionKBBranch.Data(); if ( RadioButtonGroupMode.BoundValue() = GlobalParameters_MP::GetKB_New() ) { this.InstantiateAndSelectKB( scenario ); } else if ( RadioButtonGroupMode.BoundValue() = GlobalParameters_MP::GetKB_CreateCopy() ) { this.CopyAndSelectKB( SelectionKBBranch.Data(), scenario ); } else { ApplicationLibMacroPlanner.SelectKB( scenario, kbfullid ); } if( not isnull( SelectionStrategy.Data() ) ) { scenario.SelectedStrategy( relset, SelectionStrategy.Data() ); } // Set user preference on supply chain wizard launch owner.LaunchInitializationWizardAtScenarioCreation( Dialog.CheckBoxLaunchSupplyChainWizard().Checked() ); } isselected := ApplicationLibMacroPlanner.SelectScenario( scenario ); if ( isselected ) { /* Is important to set active dataset on FormScenario. Without setting it, the auto import will import data to the previous scenario instead of the new one. This happend because some propagation in Quintiq it not yet done while we fire the import method. */ ApplicationLibMacroPlanner.SelectScenario( scenario, this ); ApplicationLibMacroPlanner.SupplyChainDiagramSetSupplyChainView( MacroPlan ); if ( not isnull( DataHolderView.Data() ) ) { feedback := '' DataHolderView.Data().RestoreDefaultLayout( feedback ); } } return scenario; *] }