Quintiq file version 2.0 #parent: #root Method InitializeSubscribers () id:Method_FormCalendarUnavailableEvent_InitializeSubscribers { #keys: '[415136.0.666291565]' Body: [* owner_i := LibCal_GlobalState.dhGlobalCalendarRegistry().Data().CommonCalendar(); category_i := selectobject( owner_i,CalendarRegistry.EventCategory, category, category.Name() = 'Unavaliable' ); sEvent := owner_i.Event( relshadow, EventID := [String]Key::NextPersistentKey(), // StartTimeOfDay := start_i.TimeOfDay( timezone ), // EndTimeOfDay := end_i .TimeOfDay( timezone ), EventCategory := category_i, IsDefault := false ); sLeadPart := owner_i.Participation( relshadow, LibCal_LeadingParticipation, ParticipationID := [String]Key::NextPersistentKey() // ,StartDate := start_i.Date( timezone ), // EndDate := end_i .Date( timezone ) ); calendar := sLeadPart.Calendar(); potentialSubscribers := calendar.GetPotentialSubscribers(); period := MacroPlan.LibCal_SubscriberEventSearch( relnew, Start := Date::MinDate(), End := Date::MaxDate() ); dhDate.Data( period ); // Remove the calendar of the initiator (cannot subscribe to self). initiator := sEvent.Calendar(); if( potentialSubscribers.Find( initiator ) >= 0 ) { potentialSubscribers.Remove( initiator ); } dhPotentialSubscribers.Data( &potentialSubscribers ); lstSubscribers.CheckAll(); ListCalendarEventTypes.CheckAll(); *] }