Quintiq file version 2.0
|
#parent: #root
|
Method CopyScenario (
|
ScenarioManager scenariomanager,
|
MacroPlan macroplancopy
|
)
|
{
|
Description: 'Makes a copy of the scenario and links it to the copy of macroplan'
|
TextBody:
|
[*
|
// Martijn Apr-14-2016 (created)
|
// Create a copy of the scenario (and relate this to the copy of the macroplan)
|
scenario := select( scenariomanager, ScenarioMP, sc, sc.DatasetMDSID() = this.MDSID() );
|
newscenarioname := scenariomanager.GetUniqueScenarioName( scenario.Name() + Translations::MP_JobRunOptimizerWithParallelTuning_CopySuffix() );
|
newscenario := scenario.Copy( scenario, newscenarioname, '', scenario.Comment(),
|
scenario.State(), scenario.KBDescription(), scenario.KBName(),
|
macroplancopy.MDSID(), macroplancopy.MDSMacroPlan().Name() );
|
newscenario.KBBranch( scenario.KBBranch() );
|
newscenario.IsHidden( true );
|
|
|
// Move the copy to the autotunefolder
|
rootfolder := select( scenariomanager, RootScenarioFolder, root, true, true );
|
foldername := Translations::MP_JobRunOptimizerWithParallelTuning_FolderName();
|
autotunefolder := select( rootfolder, Children, child, child.Name() = foldername );
|
|
if( isnull( autotunefolder ) )
|
{
|
autotunefolder := scenariomanager.CreateFolder( rootfolder, foldername, Translations::MP_JobRunOptimizerWithParallelTuning_FolderDescription(), '' );
|
autotunefolder.IsHidden( true );
|
}
|
autotunefolder.MoveAfter( newscenario, null( ScenarioNode ) );
|
*]
|
}
|