| Quintiq file version 2.0 | 
| #parent: #root | 
| Method GetHasNoOverload () declarative remote as Boolean | 
| { | 
|   Description: 'Check if unit period has no overload' | 
|   TextBody: | 
|   [* | 
|     value := true; | 
|     if( this.IsPlanning() | 
|         and this.NrOfOpen() > 0 ) | 
|     { | 
|       overloadthreshold := this.MaximumLoadPercentage(); | 
|       nooverload := this.DisplayUtilizationPercentageWithMaxLoadRatio() <= overloadthreshold | 
|                     or this.MacroPlan().GlobalParameters_MP().GetIsBalanceWithinTolerance( this.DisplayUtilizationPercentageWithMaxLoadRatio(), overloadthreshold ); | 
|        | 
|       //when no capacity is defined, any utilization should fire an overload error | 
|       if( not this.GetHasAvailableCapacity() ) | 
|       { | 
|         nooverload := this.UtilizationPercentage() = 0 | 
|       } | 
|      | 
|       value := this.IsPlannedInfinite() or nooverload; | 
|     } | 
|      | 
|     // Flag aggregated child when the parent is overloaded.  | 
|     // Agg-child is wont be utilize because the capacity usage is aggregated up to parent level, thus flag according to parent | 
|     if( this.IsPlanning() and this.Unit().IsForCapacityAggregation() and this.GetHasAvailableCapacity() ) | 
|     { | 
|       value := this.ParentOfUnitDimension().HasNoOverload(); | 
|     } | 
|      | 
|     return value | 
|   *] | 
| } |