Scheduler¶
TcxSchedulerControlEvent¶
Warning
Не поддерживается в Application Server
- class TcxSchedulerControlEvent¶
TcxSchedulerControlEvent - объекты данного класса являются событиями которые отображаются во фрейме планировщика.
- Selected Boolean ¶
Задает является ли данное событие текущим.
- Return type:
Boolean
- IsDataValid Boolean ¶
Для внутреннего использования.
- Return type:
Boolean
- State Integer ¶
Содержит состояние события. Может принимать следующие значения:
- tlsBusy
занят
- tlsFree
свободный
- tlsOutOfOffice
Вне офиса
- tlsTentative
гипотетически
- Return type:
Integer
- Start TDateTime ¶
Свойство задает время и дату старта текущего события. Если свойтво
AllDayEvent = true
, то свойствоStart
игнорируется. Для задания продолжительности события используются свойстваDuration
иFinish
.- Return type:
TDateTime
- ResourceID Integer ¶
Идентификатор Ресурса, с которым связано событие.
- Return type:
Integer
- ReminderMinutesBeforeStart Integer ¶
Количество минут до старта события, за которое необходимо начать показывать напоминание о событии.
- Return type:
Integer
- ReminderDate TDateTime ¶
Дата и время напоминания (но можно, как альтернативу, использовать
ReminderMinutesBeforeStart
).- Return type:
TDateTime
- Reminder Boolean ¶
Определяет включено или выключено напоминание о событие.
- Return type:
Boolean
- RecurrenceInfo TcxSchedulerEventRecurrenceInf ¶
Класс настройки периодичности.
- Return type:
TcxSchedulerEventRecurrenceInf
- Pattern TcxSchedulerControlEvent ¶
Ссылка на etPattern (родительское) событие, если текущее событие входит в последовательность периодических событий.
- Return type:
- Message String ¶
Описание события.
- Return type:
String
- LabelColor Integer ¶
Свойство задает цвет события.
- Return type:
Integer
- ID Variant ¶
Метод возвращает уникальный идентификатор события.
- Return type:
Variant
- Finish TDateTime ¶
Задает продолжительность события, аналогично свойство
Duration
(Данные свойства взаимно друг на друга влияют). Свойство задает время конца события.- Return type:
TDateTime
- EventType TcxEventType ¶
Возвращает тип события. Может вернуть следующие значения:
- etNone
Обычное пользовательское не периодическое событие
- etPattern
Пользовательское событие, являющееся шаблоном(родительским) для цепочки повторяющихся событий
- etOccurrence
Событие в цепочке событий порожденных от etPattern события
- etException
Событие удаленное из цепочки повторящихся событий становится типа etException.
- etCustom
пользовательское событие из одной последовательности повторяющихся событий, но с измененными настройками периодичности.
- Return type:
- Duration TDateTime ¶
Продолжительность события, равноценно свойству
Finish
(Данные свойства взаимно друг на друга влияют).- Return type:
TDateTime
- Caption String ¶
Название события.
- Return type:
String
- AllDayEvent Boolean ¶
Событие длится весь день.
- Return type:
Boolean
- ActualFinish TDateTime ¶
Дата конца последнего события, если событие периодическое, или дата окончания обычного события.
- Return type:
TDateTime
- ActualStart TDateTime ¶
Дата начала события события, если событие периодическое, то первого события.
- Return type:
TDateTime
- Post()¶
Данный метод следует вызывать если мы хотим сохранить сделанные изменения в событии.
- BeginEditing()¶
Для внутреннего использования.
- RemoveRecurrence()¶
Удаляет у данного объект событий настройки периодичности. И устанавливает
EventType
в etNone.
- DeleteException()¶
Удаляет все события - исключения и Custom события, если данное событие шаблонное (pattern).
- IsRecurring() Boolean ¶
Возвращает является ли событие периодическим.
- Return type:
Boolean
- EndEditing()¶
Для внутреннего использования.
- Delete()¶
Удаляет событие.
TcxEventType¶
- class TcxEventType¶
Перечисление
- etCustom¶
Пользовательское событие из одной последовательности повторяющихся событий, но с измененными настройками периодичности.
- etException¶
Событие удаленное из цепочки повторящихся событий становится типа etException.
- etOccurrence¶
Событие в цепочке событий порожденных от etPattern события.
- etPattern¶
Пользовательское событие, являющееся шаблоном(родительским) для цепочки повторяющихся событий.
- etNone¶
Обычное пользовательское не периодическое событие
TcxSchedulerOptionsView¶
Warning
Не поддерживается в Application Server
- class TcxSchedulerOptionsView¶
TcxSchedulerOptionsView
- StartOfWeek TcxStartOfWeek ¶
День начала недели.
- Return type:
- WorkFinish TTime ¶
Время окончания рабочего дня.
- Return type:
TTime
- WorkStart TTime ¶
Время начала рабочего дня.
- Return type:
TTime
Пример¶<pascal> S := Scheduler; S.OptionsView.WorkStart := '10:00'; S.OptionsView.WorkDays := [dMonday,dTuesday,dWednesday,dThursday,dFriday,dSaturday]; S.OptionsView.StartOfWeek := swSunday; </pascal>
TcxStartOfWeek¶
TbtkScheduler¶
Warning
Не поддерживается в Application Server
- class TbtkScheduler¶
TbtkScheduler
при добавлении нового события вызывается операция
OnEventAdd
при начале редактирования существующего события вызывается операция
OnEditEvent
при удалении вызывается операция
OnDeleteEvent
.
По умолчанию, диалоговые окна, которые должны показываться при срабатывании этих событий перекрываются и не отображаются, если вызвана операция-тригер. Если же диалоговое окно необходимо показать, то свойству
IsShowEventEditorForm
надо присвоить значение True. Новое событие можно полностью отредактировать в паскаль операции, без использования диалоговых окон. Для доступа к в вновь создаваемому событию следует использовать поле CurrentEvent. Закрепление изменений выполняется методомPost
объекта события, если не выполненPost
, событие не будет добавлено. Но данный метод не завершает текущую транзакцию. В случае, еслиIsShowEventEditorForm = True
, то методPost
ни в кое случае нельзя вызывать! Перед вызовомPost
, если задавались настройки периодичности, необходимо проверятьGetValidStatus
, и выполнятьPost
только в том случае, еслиGetValidStatus
вернет rvsValid. Особенностью использования операцииOnDeleteEvent
, является то, что если она вызывается, то удалять объект надо явно -TcxSchedulerControlEvent.Delete
Пример операции OnEventAdd¶// создаем периодическое событие которое // будет выполняться в течении 4х рабочих дней, начиная с '04.04.2008 // 18:00:00' продолжительностью 2 часов каждый рабочий день. <pascal> Scheduler.CurrentEvent.Caption := 'TEST onEventAdd Caption'; Scheduler.CurrentEvent.Location := 'TEST onEventAdd Location'; Scheduler.CurrentEvent.Message := 'TEST onEventAdd Message'; Scheduler.CurrentEvent.Caption := 'TEST onEventAdd'; Scheduler.CurrentEvent.State := tlsFree; Scheduler.CurrentEvent.Start := StrToDateTime('04.04.2008 18:00:00'); Scheduler.CurrentEvent.Duration := StrToTime('2:00:00'); Scheduler.CurrentEvent.LabelColor := clskyblue; Scheduler.CurrentEvent.Reminder := 0; Scheduler.CurrentEvent.EventType := etPattern; if Scheduler.CurrentEvent.RecurrenceInfo <> nil then begin Scheduler.CurrentEvent.RecurrenceInfo.Count := 4; Scheduler.CurrentEvent.RecurrenceInfo.Periodicity := 1; Scheduler.CurrentEvent.RecurrenceInfo.DayType := cxdtWeekDay; Scheduler.CurrentEvent.RecurrenceInfo.Recurrence := cxreDaily; end; if Scheduler.CurrentEvent.RecurrenceInfo.GetValidStatus = 0 then Scheduler.CurrentEvent.Post else ShowMessage('Don''t Valid: ' + IntToStr(Scheduler.CurrentEvent.RecurrenceInfo.GetValidStatus)); //Показать диалог редактировнания события нельзя, так как выполнен Post //scheduler.IsShowEventEditorForm := true; </pascal>
Пример операции onDeleteEvent¶// в случае, если данная операция присутствует в выборке, удалять событие надо явно: <pascal> ShowMessage(Scheduler.CurrentEvent.caption); Scheduler.CurrentEvent.Delete; </pascal>
Пример операции OnEditEvent¶// доступ к редактируемому событию через scheduler.SelectedEvents[0] <pascal> if scheduler.SelectedEventCount > 0 then begin scheduler.SelectedEvents[0].Caption := scheduler.SelectedEvents[0].Caption + ' ScriptEditing'; //scheduler.SelectedEvents[0].Post; scheduler.IsShowEventEditorForm := true; end; </pascal>
- CurrentEvent TcxSchedulerControlEvent ¶
Свойство следует использовать в операциях-тригерах срабатывающих на события
OnEventAdd
,OnEditEvent
,OnDeleteEvent
. Причем в операцииOnEventAdd
это единственный способ получить доступ к вновь создаваемому событию. В других операциях доступ к событию можно получить через свойствоSelectedEvents[0]
.- Return type:
- IsShowEventEditorForm Boolean ¶
Свойство следует использовать в операциях-тригерах срабатывающих на события
OnEventAdd
,OnEditEvent
. Установка в свойства в True, говорит о том, что после выполнения операции, следует показать диалоговое окно редактирования событий.- Return type:
Boolean
- OptionsView TcxSchedulerOptionsView ¶
Параметры внешнего вида.
- Return type:
- SelectionStart TDateTime ¶
Дата начала выделения на рабочей области планировщика.
- Return type:
TDateTime
- SelectedResource Variant ¶
Идентификатор выделенного ресурса.
- Return type:
Variant
- SelectedEventCount Integer ¶
Количество выделенных событий.
- Return type:
Integer
- SelectedEvents TcxSchedulerControlEvent ¶
Список выделенных элементов с доступом по индексу.
- Return type:
- SelectionFinish TDateTime ¶
Дата окончания выделения на рабочей области планировщика.
- Return type:
TDateTime
Параметры календаря.
- Return type:
- GoToDate(Date: TDateTime) Boolean ¶
Переходит на заданную дату в навигаторе дат и планировщике.
- Parameters:
Date (
TDateTime
) – Дата, на которую надо перейти.- Return type:
Boolean
- Returns:
- True
При успешном переходе
- False
В случае ошибки при переходе
- SelectDays(Days: array of TDateTime)¶
Выбирает набор дат в навигаторе дат и планировщике.
- Parameters:
Days (
array of TDateTime
) – Массив дат.
- SelectDays(StartDay, FinishDay: TDateTime)
Выбирает диапазон дат в навигаторе дат и планировщике.
- Parameters:
StartDay (
TDateTime
) – Начальная дата.FinishDay (
TDateTime
) – Конечная дата.
Note
Если в диапазоне меньше 15 дней, в окне планировщика они отображаются в представлении дней. В противном случае они отображатся в представлении недель.
TcxSchedulerEventRecurrenceInfo¶
Warning
Не поддерживается в Application Server
- class TcxSchedulerEventRecurrenceInfo¶
Класс определяет настройки периодичности события для повторяющихся событий. Доступ к объекту данного класса можно получить через своство
RecurrenceInfo
объета классаTcxSchedulerControlEvent
. Если данные настройки заданы у события, то функцияIsRecurring
вернет True.- YearPeriodicity Integer ¶
Задает частоту с которой будет выполнятся события в последовательности событий со свойством
Recurrence = cxreYearly
.- Return type:
Integer
- Start TDateTime ¶
Задает дату и время начала последовательности повторяющихся событий.
- Return type:
TDateTime
- Recurrence TcxRecurrence ¶
- cxreDaily
шаблон периодичности задается на посуточной основе
- cxreWeekly
шаблон периодичности задается на недельной основе
- cxreMonthly
шаблон периодичности задается на ежемесячной основе
- cxreYearly
шаблон периодичности задается на годичной основе Свойство связанно со свойством
Periodicity
.Если Periodicity = 3
,Recurrence = cxreDaily
, то событие будет выполнятся каждый третий день.
- Return type:
- Periodicity Integer ¶
Задает частоту с которой будет повторятся данное событие с учетом свойства
Periodicity
.- Return type:
Integer
- OccurDays TDays ¶
Задает множество дней недели, в которые будут входить последовательность событий. То есть в данные дни недели будут выполняться данные события.
- Return type:
- Finish TDateTime ¶
Задает дату конца последовательности повторящихся событий.
- Return type:
TDateTime
- Event TcxSchedulerControlEvent ¶
Свойство является ссылкой на событие которому принадлжит данный шаблон периодичности.
- Return type:
- DismissDate TDateTime ¶
Задает дату, когда напоминает было выключено в последний раз.
- Return type:
TDateTime
- DayType TcxDayType ¶
- cxdtDay
задает каждый n-ый день в месяце
- cxdtEveryDay
задает каждый n-ый день в неделе
- cxdtWeekDay
задает все рабочие дни недели
- cxdtWeekEndDay
задает все выходные дни недели
- cxdtSunday
задает повтор в воскресенье
- cxdtMonday
задает повтор в понедельник
- cxdtTuesday
задает повтор во вторник
- cxdtWednesday
задает повтор в среду
- cxdtThursday
задает повтор в четверг
- cxdtFriday
задает повтор в пятницу
- cxdtSaturday
задает повтор в субботу.
- Return type:
- DayNumber Integer ¶
Свойство задает номер дня в месяце/рабочей недели. Текущее значение
DayNumber
зависит от состояния DayType.- Return type:
Integer
- Count Integer ¶
Возвращает количество событий в цепочке периодических событий. Если
Count = 0
, то конец цепочки событий определяется свойствомFinish
. ЕслиCount < 0
, то дата окончания цепочки событий не определена, и будет выполняться бесконечно.- Return type:
Integer
- Validate()¶
Проверяет корректность настройек повторения события. В случае некорректных насстроек возбуждает исключение.
- GetValidStatus() Integer ¶
Возвращает состояние деталей повторения.
- Return type:
Integer
- GetEndDate() TDateTime ¶
Задает дату конца последовательности повторящихся событий.
- Return type:
TDateTime
TcxRecurrence¶
Warning
Не поддерживается в Application Server
TcxDayType¶
Warning
Не поддерживается в Application Server
TDays¶
Warning
Не поддерживается в Application Server
TcxRecurrenceValidStatus¶
Warning
Не поддерживается в Application Server
- class TcxRecurrenceValidStatus¶
Перечисление
- rvsValid¶
Все детали повторения корректны.
- rvsReplaceOccurrenceDate¶
Дата, указанная как день в месяце для повторения события или праздника, действительна, но некоторые месяцы не имеют столько дней. В этих случаях событие произойдет в последний день месяца.
- rvsInvalidPattern¶
Шаблон повторения некорректен. Например, указан некорректный день, так как ни в одном из месяцев нет столько дней.
- rvsInvalidDuration¶
Диапазон повторения некорректен. Например, частота повторения короче длительности пользовательского события.