| Quintiq file version 2.0 | 
| #parent: #root | 
| Method GetValue ( | 
|   output Real value_o, | 
|   output Real valuewithinhorizon_o | 
| ) declarative | 
| { | 
|   Description: 'Return the final value of account after deduction.' | 
|   TextBody: | 
|   [* | 
|     // soh yee Dec-18-2013 (created) | 
|      | 
|     if( this.IsMargin() ) | 
|     { | 
|       // Sales | 
|       traverse( this, MacroPlan.FinancialAccount, account, | 
|                 account.AccountTypeName() = Translations::MP_Account_AccountTypeSales() | 
|                 and isnull( account.Parent() ) ) | 
|       { | 
|         value_o := value_o + account.Cost(); | 
|         valuewithinhorizon_o := valuewithinhorizon_o + account.CostWithinHorizon(); | 
|       } | 
|      | 
|       // Cost of sales - sum up cost of sales account on the highest level | 
|       traverse( this, MacroPlan.FinancialAccount, account, | 
|                 account.AccountTypeName() = Translations::MP_Account_AccountTypeCostOfSales() | 
|                 and isnull( account.Parent() ) ) | 
|       { | 
|         value_o := value_o - account.Cost(); | 
|         valuewithinhorizon_o := valuewithinhorizon_o - account.CostWithinHorizon(); | 
|       } | 
|     } | 
|     else | 
|     { | 
|       value_o := this.Cost(); | 
|       valuewithinhorizon_o := this.CostWithinHorizon(); | 
|     } | 
|   *] | 
| } |