Quintiq file version 2.0 
 | 
#parent: #root 
 | 
StaticMethod Create ( 
 | 
  OptimizerPuzzleWIP owner, 
 | 
  Entity entity, 
 | 
  Boolean isfromdb 
 | 
) as SubsetEntityInOptimizerPuzzleWip 
 | 
{ 
 | 
  TextBody: 
 | 
  [* 
 | 
    // Create N-M object subset that is owned by OptimizerPuzzleWIP and has a relation with Entity given in argument 
 | 
    // This is used to include / exclude in OptimizerPuzzle 
 | 
     
 | 
    subsetEntity := select( owner, SubsetEntityInOptimizerPuzzleWip, s, s.EntityID() = entity.GetID() and s.EntityType() = entity.GetEntityType() ); 
 | 
     
 | 
    if( isnull( subsetEntity ) ) 
 | 
    { 
 | 
      // Create SubsetEntityInOptimizerPuzzleWIP 
 | 
      subsetEntity := owner.SubsetEntityInOptimizerPuzzleWip( relnew,  
 | 
                                                              IsIncluded := true, 
 | 
                                                              IsUserAction := false, 
 | 
                                                              EntityID := entity.GetID(), 
 | 
                                                              OptimizerPuzzleName := owner.Name(), 
 | 
                                                              User := owner.Username(), 
 | 
                                                              EntityType := entity.GetEntityType(), 
 | 
                                                              IsManuallyConfigured := isfromdb );                                               
 | 
    } 
 | 
     
 | 
    return subsetEntity; 
 | 
  *] 
 | 
} 
 |