chenqinghong
2024-05-07 3ec06a830367465068963156dcc1d8e522571c13
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
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;
  *]
}