xiaoding721
2024-12-09 b6e0c9175e15545fbe890611d3b6ce71a3fc916d
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
Quintiq file version 2.0
#parent: #root
StaticMethod AddMonthByYYYYMM (
  Number data,
  Number addMonthNumber
) as Number
{
  TextBody:
  [*
    // Akari Dec-6-2024 (created)
    stringData := [String]data;
    if( stringData.Length() <> 6 ){
      error( "wrong date: " + [String]data );
    }
    year := [Number]stringData.SubString( 0,4 );
    month := [Number]stringData.SubString( 4,2 );
    
    while( addMonthNumber >= 12 ){
      addMonthNumber := addMonthNumber - 12;
      year := year + 1;
    }
    
    if( month + addMonthNumber > 12 ){
      year := year + 1;
      month := month + addMonthNumber - 12;
    }else{
      month := month + addMonthNumber; 
    }
    
    result := [String]year;
    
    if( month < 10 ){
       result := result + "0" + [String]month;
    }else{
       result := result + [String]month; 
    }
    
    return [Number]result;
  *]
}