Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Function CalcOutsideOfPlanningHorizonQuantity 
 | 
{ 
 | 
  TextBody: 
 | 
  [* 
 | 
    // ODE2 Jun-7-2017 (created) 
 | 
     
 | 
    nrofuncovereddays := this.EndDate() - this.StartDate(); 
 | 
     
 | 
    if( this.MacroPlan().PlanningPeriod( relsize ) > 0 ) 
 | 
    { 
 | 
      nrofuncovereddays := 0; 
 | 
       
 | 
      // Part of the sales demand that falls before planning start 
 | 
      startofplanninghorizon := this.MacroPlan().FirstPlanningPeriod().StartDate(); 
 | 
      if( this.StartDate() < startofplanninghorizon ) 
 | 
      {  
 | 
        nrofuncovereddays := minvalue( startofplanninghorizon, this.EndDate() ) - this.StartDate(); 
 | 
      }  
 | 
       
 | 
      // Part of the sales demand that falls after planning end 
 | 
      endofplanninghorizon := this.MacroPlan().LastPlanningPeriod().EndDate(); 
 | 
      if( this.EndDate() > endofplanninghorizon ) 
 | 
      {  
 | 
        nrofuncovereddays := nrofuncovereddays + this.EndDate() - maxvalue( endofplanninghorizon, this.StartDate() ); 
 | 
      }  
 | 
    } 
 | 
       
 | 
    value := nrofuncovereddays * this.QuantityPerDay(); 
 | 
     
 | 
    this.OutsideOfPlanningHorizonQuantity( value ); 
 | 
  *] 
 | 
  InterfaceProperties { Accessibility: 'Module' } 
 | 
} 
 |