Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method CreateUpdateCommercialLevel (String setId_i, String id_i, Number level_i) as LibDMC_CommercialLevel 
 | 
{ 
 | 
  Description: 
 | 
  [* 
 | 
    Logic to check if a commercial level exists before creating/updating it 
 | 
    1) We handle checking logic here as it minimizes the risk of forgetting to check if an instance exists before creating it 
 | 
    2) Instance exists checking is not done in static create as it violates model metrics 
 | 
  *] 
 | 
  TextBody: 
 | 
  [* 
 | 
    // desmondt Dec-31-2015 (created) 
 | 
    commerciallevel := LibDMC_CommercialLevel::FindCommercialLevel( setId_i, id_i ); 
 | 
     
 | 
    if( isnull( commerciallevel ) ) 
 | 
    { 
 | 
      commerciallevel := LibDMC_CommercialLevel::Create( this, setId_i, id_i ); 
 | 
    } 
 | 
     
 | 
    commerciallevel.Update( level_i ); 
 | 
     
 | 
    return commerciallevel; 
 | 
  *] 
 | 
} 
 |