Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method ImportOptimizerPuzzles ( 
 | 
  owning BinaryData optimizerpuzzles 
 | 
) 
 | 
{ 
 | 
  Description: 'Import optimizer puzzles  to model' 
 | 
  TextBody: 
 | 
  [* 
 | 
    // Optimizer puzzle 
 | 
    this.SynchronizeOptimizerPuzzles( &optimizerpuzzles ); 
 | 
     
 | 
    // Set the imported subsets entity to IsUserAction true 
 | 
    traverse( this, OptimizerPuzzle.SubsetEntityInOptimizerPuzzle, subset ) 
 | 
    { 
 | 
      subset.Update( subset.IsIncluded(), true );   
 | 
    } 
 | 
     
 | 
    // Set the imported subsets product to IsUserAction true 
 | 
    traverse( this, OptimizerPuzzle.SubsetProductInOptimizerPuzzle, subset ) 
 | 
    { 
 | 
      subset.Update( subset.IsIncluded(), true );   
 | 
    } 
 | 
     
 | 
    // Propagate relation entity because puzzle word needs all the entities to create subsets 
 | 
    Transaction::Transaction().Propagate( relation( MacroPlan, Entity ) ); 
 | 
     
 | 
    // World OptimizerPuzzle 
 | 
    // Propagate relation OptimizerPuzzleWorld because we need to check if world is existing 
 | 
    Transaction::Transaction().Propagate( relation( MacroPlan, OptimizerPuzzleWorld ) ); 
 | 
     
 | 
    // Check if world puzzle is existing else create it 
 | 
    this.FindCreateWorldPuzzle(); 
 | 
  *] 
 | 
} 
 |