| 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; | 
|   *] | 
| } |