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
41
  | Quintiq file version 2.0 
 |  #parent: #root 
 |  MethodOverride Update ( 
 |    Account_MP account, 
 |    String costdriver, 
 |    Date start, 
 |    String timeunit, 
 |    Number lengthoftime, 
 |    Real cost, 
 |    Boolean isfromdb 
 |  ) 
 |  { 
 |    Description: 'Update lane cost' 
 |    TextBody: 
 |    [* 
 |      // Update respective unit account if the account or the cost driver is different 
 |      unitaccount := this.UnitAccount(); 
 |       
 |      /* 
 |        Assign the cost to a new UnitAccount if one of these: 
 |        - The account the cost belongs to 
 |        - The cost driver of the cost 
 |        - The owner of the cost 
 |       
 |        has been changed. 
 |      */ 
 |      needsync := unitaccount.Account_MP() <> account 
 |                  or unitaccount.CostDriver() <> costdriver; 
 |       
 |      if( needsync ) 
 |      { 
 |        unitaccount := UnitAccount::Assign( account, 
 |                                            this.Lane().Unit(), 
 |                                            costdriver ); 
 |       
 |        unitaccount.Update( account, costdriver ); 
 |      } 
 |       
 |      super.Update( account, costdriver, start, timeunit, lengthoftime, cost, isfromdb ); 
 |    *] 
 |  } 
 |  
  |