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