Quintiq file version 2.0
|
#parent: #root
|
MethodOverride GetVolumeAccountValueInPeriod (
|
Period_MP period
|
) declarative remote as Real
|
{
|
TextBody:
|
[*
|
/* For the sum, we need to compare the number of period.UnitPeriod and
|
the number of UnitAccount.UnitAccountInPeriodForVolume, we use the traverse with the lowest
|
number to have the fastest calculation time.
|
|
Example : period.UnitPeriod = 6343 and UA.UAIPFV = 7
|
The total time is 95000 if using first sum and 19000 if using second sum */
|
|
value := 0.0;
|
|
if( period.UnitPeriod( relsize ) * this.Unit().UnitAccount( relsize ) < this.UnitAccountInPeriodForVolume( relsize ) )
|
{
|
value := sum( period, UnitPeriod.UnitAccountInPeriodForVolume, uaip,
|
guard( uaip.UnitAccount() = this, false ),
|
uaip.TotalBaseCost() );
|
}
|
else
|
{
|
value := sum( this, UnitAccountInPeriodForVolume, uaipv,
|
uaipv.UnitPeriod().Period_MP() = period ,
|
uaipv.TotalBaseCost() );
|
}
|
return value;
|
*]
|
}
|