| Quintiq file version 2.0 | 
| #parent: #root | 
| Method UpdateUnitCalendar | 
| { | 
|   Description: 'Update windows of unit calendar' | 
|   TextBody: | 
|   [* | 
|     now := this.Time(); | 
|      | 
|     windowlength := 0; | 
|     historylength :=0; | 
|     calendarregistry := this.CalendarRegistry(); | 
|      | 
|     if ( not isnull( calendarregistry ) ) | 
|     { | 
|       commoncalendar := calendarregistry.CommonCalendar(); | 
|       | 
|       if ( not isnull( commoncalendar ) ) | 
|       { | 
|         Transaction::Transaction().Propagate( attribute( MacroPlan, Start )); | 
|         Transaction::Transaction().Propagate( attribute( MacroPlan, End )); | 
|          | 
|         if( now.IsFinite() and this.Start().IsFinite() and this.End().IsFinite() ) | 
|         { | 
|            | 
|           calendarregistry.GetCalendarWindow( windowlength, historylength ); | 
|           calendarregistry.UpdateAllCalendars( commoncalendar.Base(), commoncalendar.UpdateInterval(), windowlength, historylength ); | 
|         } | 
|       }   | 
|     } | 
|   *] | 
| } |