Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Function CalcLatestEnd 
 | 
{ 
 | 
  TextBody: 
 | 
  [* 
 | 
    // Use the LeadingParticipation to determine the LatestEnd. 
 | 
    leadingParticipation := this.LeadingParticipation(); 
 | 
     
 | 
    if( not isnull( leadingParticipation ) ) 
 | 
    { 
 | 
      // If the event is recurring, the EndDate of the RecurrencePeriod should be used. 
 | 
      latestEnd := ifexpr( not leadingParticipation.IsRecurring(), leadingParticipation.EndDate(), 
 | 
                                                                   leadingParticipation.RecurrencePeriod().EndDate() );                               
 | 
      this.LatestEnd( latestEnd ); 
 | 
    } 
 | 
  *] 
 | 
  InterfaceProperties { Accessibility: 'Module' } 
 | 
} 
 |