1.8.3. Gantt¶
1.8.3.1. TbtkGanttLink¶
-
class
TbtkGanttLink
¶ Связь между элементами диаграммы Гантта
-
Direction
: TbtkGanttLinkDirection¶ Направление связи. Визуально отображается стрелкой.
Return type: TbtkGanttLinkDirection
-
SourceItemID
: Variant¶ Идентификатор элемента - источника связи.
Return type: Variant
-
DestItemID
: Variant¶ Идентификатор элемента - приемника связи.
Return type: Variant
-
1.8.3.2. TbtkGanttLinkDirection¶
1.8.3.3. TbtkGantt¶
-
class
TbtkGantt
¶ Скриптовый класс, управляющий доступом к фрейму TbtkLookUpGanttTreeFrame (диаграмма Гантта)
-
MaxStopDate
: TDateTime¶ Свойство (R\W) определяет дату окончания фактическгого интервала диаграммы Гантта. При установке даты меньше чем
StopDate
, граница отображаемого диапазона также сжимаетсяReturn type: TDateTime New in version BtkRuntime: 5.3.3.3750
-
MinStartDate
: TDateTime¶ Свойство (R\W) определяет дату начала фактическгого интервала диаграммы Гантта. При установке даты больше чем
StartDate
, граница отображаемого диапазона также сжимаетсяReturn type: TDateTime New in version BtkRuntime: 5.3.3.3750
-
SelectedDatePenStyle
: TPenStyle¶ Свойство позволяет задать стиль начертания линии выделенной даты на диаграмме Гантта. Выделение даты осуществляется двойным щелчком на диаграмме Гантта. При этом выделенной (selected) становится дата, которая соответствует положению на графике Гантта, на котором был произведен двойной щелчок.
Значения свойства соответствуют значениям типа
TPenStyle
в Delphi.Return type: TPenStyle
-
CurrentDatePenStyle
: TPenStyle¶ Свойство позволяет задать стиль начертания текущей даты на диаграмме Гантта. Текущая дата соответствует значению системного времени. В том случае, если текущая системная дата не находится внутри временного отрезка, ограниченного начальным и конечным значением даты диаграммы Гантта, текущая дата отображаться не будет.
Значения соответствуют значениям типа
TColor
в Delphi.Return type: TPenStyle
-
SelectedDateColor
: TColor¶ Свойство позволяет задать цвет выделенной даты на диаграмме Гантта. Выделение даты осуществляется двойным щелчком на диаграмме Гантта. При этом выделенной (selected) становится дата, которая соответствует положению на графике Гантта, на котором был произведен двойной щелчок.
Значения соответствуют значениям типа
TColor
в Delphi.Return type: TColor
-
CurrentDateColor
: TColor¶ Свойство позволяет задать цвет текущей даты на диаграмме Гантта. Текущая дата соответствует значению системного времени. В том случае, если текущая системная дата не находится внутри временного отрезка, ограниченного начальным и конечным значением даты диаграммы Гантта, текущая дата отображаться не будет.
Значения соответствуют значениям типа
TColor
в Delphi.Return type: TColor
-
ShowCurrentDate
: Boolean¶ Свойство указывает, будет ли отображаться на диаграмме Гантта текущая дата/время.
Return type: Boolean
-
ShowSelectedDate
: Boolean¶ Свойство указывает, будет ли отображаться на диаграмме Гантта выделенная дата/время.
Return type: Boolean
-
SelectedDateTime
: TDateTime¶ Свойство позволяет получить значение выделенной даты/времени. Свойство доступно только для чтения.
Return type: TDateTime
-
RegionCount
: Integer¶ Возвращает количество регионов в коллекции.
Return type: Integer
-
Region
: TbtkGanttRegionDef¶ Коллекция временных регионов.
Return type: TbtkGanttRegionDef
-
VLinesCount
: Integer¶ Количество вертикальных линий в коллекции.
Return type: Integer
-
VLines
: TbtkVertLineDateDef¶ Коллекция вертикальных линий VLines. Служат для акцентирования пользователя на нужных датах графика.
Return type: TbtkVertLineDateDef
-
HighLightRestdays
: Boolean¶ Флаг указывающие на необходимость выделения цветом выходных дней.
Return type: Boolean Пример использования¶<pascal> Selection.Gantt.HighLightRestdays := 0; </pascal>
-
HighLightHolidays
: Boolean¶ Флаг указывающие на необходимость выделения цветом празничных дней.
Return type: Boolean Пример использования¶<pascal> Selection.Gantt.HighLightHolidays := 0; </pascal>
-
HoliDays
: Array¶ Массив праздничных дней. Праздничные дни перекрывают выходные и рабочие дни
Return type: Array Пример использования¶<pascal> v := [StrToDate('24.04.2009'), StrToDate('25.04.2009'), StrToDate('26.04.2009')]; Selection.Gantt.HoliDays := v; </pascal>
-
WorkDays
: Array¶ Массив рабочих дней. Рабочие дни могут перекрывать выходные дни
Return type: Array Пример использования¶<pascal> Selection.Gantt.WorkDays := [StrToDate('22.04.2009'), StrToDate('21.04.2009')]; // Рабочие дни </pascal>
-
RestDays
: Array¶ Массив порядковых номеров дней недели от 1 до 7 которые являются выходными днями.
Return type: Array Пример использования¶<pascal> Selection.Gantt.RestDays := [2,3]; // Выходные дни среда и вторник </pascal>
-
AcceptChanges
: Boolean¶ Установка флага в False при выполнении операций
OnItemChanged
,OnLinkCreate
позволяет отменить выполненное действие. По умолчанию значение флага флага установлено в True.Return type: Boolean
-
SelectedItems
: TbtkGanttItem¶ Коллекция выделенных визуальных элементов. Выделение элементов проиcходит с помощью зажатой клавиши Ctrl и кликом левой кнопки мыши. Индексация выделенных объектов начинается с 0. Количество выделенных объектов можно получить с помощью свойства
Count
.Return type: TbtkGanttItem
-
FocusedItem
: TbtkGanttItem¶ Свойство содержит ссылку на текущий сфокусированный элемент.
Return type: TbtkGanttItem
-
Count
: Integer¶ Количество выделенных объектов входящих в коллекцию
SelectedItems
.Return type: Integer
-
StartDate
: TDateTime¶ Свойство определяет дату начала временного интервала, отображаемого на графике. Для обновление графика после установки свойства необходимо вызвать метод
UpdateScale
.При установке даты меньше, чем
MinStartDate
, фактический диапазон также расширяетсяReturn type: TDateTime
-
StopDate
: TDateTime¶ Свойство определяет дату окончания временного интервала, отображаемого на графике. Для обновление графика после установки свойства необходимо вызвать метод
UpdateScale
.При установке даты больше, чем
MaxStopDate
, фактический диапазон также расширяетсяReturn type: TDateTime
-
AddVLine
(ADate: TDateTime; AColor: Integer; AStyle: TPenStyle; AWidth: Integer): Integer¶ Функция добавляет вертикальную линию на диаграмму Гантта. Место положение задает свойство
Date
. Возврашает индекс линии в коллекции.Parameters: - ADate (TDateTime) -- Определяет размещение линии по дате.
- AColor (Integer) -- Цвет линии в формате RGB.
- AStyle (TPenStyle) -- Задает шаблон внещнего вида линии.
- AWidth (Integer) -- Толщина линии.
Return type: Integer
Пример использования¶<pascal> Selection.ExecOpScript('#AfterOpen'); i := gantt.addVline('11.04.2009', $0000FF, psDot,1); </pascal>
-
CreateReportEx
(AReportName: String; AReportVersionDate: TDateTime; AAction: TReportViewMode; AShowWizard: Boolean; AOpSelectionName: String; AStyleFlag: TFormCreationFlags; AParamNames: Array; AParamValues: Array)¶ Метод позволяет создать FastReport4 отчет, на основе шаблона "Diagram Report(*.dgr)".
Parameters: - AReportName (String) -- Cистемное имя отчёта. Отчет должен быть формата "Diagram Report(*.dgr)".
- AReportVersionDate (TDateTime) -- Дата, по которой будет найдена актуальная версия отчёта (если не задана, берётся SysDate).
- AAction (TReportViewMode) --
Действие, которое небходимо произвести над отчётом после его создания. Возможные значения:
- rvmPrint
- rvmShow
- rvmSave
- rvmDesign
- AShowWizard (Boolean) -- Флаг отображения мастера настройки отчётов (если указана главная выборка мастера) {0,1}
- AOpSelectionName (String) -- Системное имя выборки, операции которой будут отображаться в главном меню окна при модальном просмотре построенного отчёта. Если не указана, подставляются выборки со стандартным набором команд ("Save as" и "Print")
- AStyleFlag (TFormCreationFlags) -- Флаг модального или немодального открытия окна просмотра отчёта {fcfModal, fcfMDI}. fcfMDI - работает только для отчетов на основе FastReport 4й версии.
- AParamNames (Array) --
Массив имен параметров отчета.
Обязательные параметры:
- StartDate, StopDate - диапазон печати диаграммы Гантта, с StartDate по StopDate
Параметры:
- ReadOnlyPreview со значением 1 запрещает редактирование построенного отчета из режима предпросмотра.
- AParamValues (Array) -- Массив значений параметров AParamNames отчета.
-
DeleteRegion
(AIndex: Integer)¶ Удаляет регион по индексу из коллекции регионов.
Parameters: AIndex (Integer) -- Индекс региона в коллекции.
-
ClearRegion
()¶ Очищает коллекцию регионов.
-
AddRegion
(FromDate, ToDate: String; Color: Integer; Style: TBrushStyle): Integer¶ Функция добавляет выделенный регион на график Гантта. Место положение задают параметры FromDate (начало региона) и ToDate (конец региона). Возврашает индекс линии в коллекции.
Parameters: - FromDate (String) -- Дата начала региона.
- ToDate (String) -- Дата конца региона.
- Color (Integer) -- Цвет линии в формате RGB.
- Style (TBrushStyle) -- Шаблон заливки региона.
Return type: Integer
Пример использования¶<pascal> i := gantt.addRegion('11.04.2009 00:30', '13.04.2009 12:38', $8c1eb2, bsBDiagonal); gantt.DeleteRegion(i); i := gantt.addRegion('11.04.2009 00:30', '13.04.2009 19:38', $8cAe02, bsBDiagonal); gantt.ClearRegions; i := gantt.addRegion('11.04.2009 00:30', '13.04.2009 19:38', $0000FF, bsBDiagonal); gantt.Region[gantt.RegionCount - 1].FromDate := '13.04.2009 00:30'; gantt.Region[gantt.RegionCount - 1].ToDate := '17.04.2009 09:30'; </pascal>
-
FindVLineByDate
(ADate: TDateTime)¶ Поиск вертикальной линии в коллекции по дате. Если элемент найден возвращается индекс в коллекции.
Parameters: ADate (TDateTime) -- Описание отсутствует Пример использования¶<pascal> Index := Gantt.FindVLineByDate(StrToDateTime('11.04.2009')); Gantt.DeleteVLine(Index); </pascal>
-
DeleteVLine
(AIndex: Integer)¶ Удаляет вертикальную линию по индексу из коллекции вертикальных линий.
Parameters: AIndex (Integer) -- Индекс Пример использования¶<pascal> Index := Gantt.FindVLineByDate(StrToDateTime('11.04.2009')); Gantt.DeleteVLine(Index); </pascal>
-
ClearVLines
()¶ Очищает коллекцию вертикальных линий.
Пример использования¶<pascal> Index := Gantt.Clear; </pascal>
-
UpdateScale
()¶ Метод обновляет диаграмму Гантта с учетом установленных
StartDate
иStopDate
. Метод необходимо использовать после установки данных свойств, чтобы изменения стали заметны визуально.Пример использования¶<pascal> try selection.Gantt.StartDate := StrToDate('5.7.2006'); selection.Gantt.StopDate := StrToDate('7.7.2006'); finally selection.Gantt.updateScale; end; </pascal>
-
CalcDateInterval
()¶ Метод подбирает интервал дат графика Гантта, таким образом, чтобы все элементы графика отображались на экране.
-
1.8.3.4. TbtkVertLineDateDef¶
-
class
TbtkVertLineDateDef
¶ Класс контейнер свойств вертикальных линий.
-
Date
: String¶ Дата в строковом формате настроек календаря пользователя в системе.
Return type: String
-
Color
: Integer¶ Цвет линии в формате RGB. Задается в шестнадцатиричном формате.
Где:
- $0000FF
- красный
- $FF0000
- синий
- $00FF00
- зеленый
Return type: Integer
-
Width
: Integer¶ Толщина линии в пикселях.
Return type: Integer
-
1.8.3.5. TbtkGanttItem¶
-
class
TbtkGanttItem
¶ TbtkGanttItem - класс визуальных элементов диаграммы Гантта.
-
Selected
: Boolean¶ Свойство возвращает значение True, когда элемент выделен.
Return type: Boolean
-
Focused
: Boolean¶ Свойство равно True, когда элемент обладает фокусом.
Return type: Boolean
-
Style
: TbtkGanttItemStyle¶ Стиль элемента (события). Влияет на визуальное отображение.
Return type: TbtkGanttItemStyle
-
ID
: Integer¶ Уникальный идентификатор элемента.
Return type: Integer
-
StopDate
: TDateTime¶ Конец события.
Return type: TDateTime
-
StartDate
: TDateTime¶ Начало события.
Return type: TDateTime
-
Caption
: String¶ Отображаемое наименование элемента.
Return type: String
-
StopDateConstarint
: Boolean¶ Ограничение на максимальное значение положения правой границы элемента диаграммы Гантта (правая граница изменения размера или перемещения элемента).
Return type: Boolean
-
StartDateConstarint
: Double¶ Ограничение на минимальное значение положения левой границы элемента диаграммы Гантта (левая граница изменения размера или перемещения элемента).
Return type: Double
-
StartDateLimit
: TDateTime¶ Положение левой границы пунктирного контура.
Return type: TDateTime
-
StopDateLimit
: TDateTime¶ Положение правой границы пунктирного контура.
Return type: TDateTime
-
CanMove
: Boolean¶ Позволяет запретить перемещать элемент используя манипулятор типа "мышь".
Return type: Boolean
-
CanResize
: Boolean¶ Позволяет запретить изменять размеры элемента используя манипулятор типа "мышь".
Return type: Boolean
-
FillStyle
: TBrushStyle¶ Шаблон заливки.
Return type: TBrushStyle
-
BorderColor
: Integer¶ Цвет границ.
Return type: Integer
-
Color
: Integer¶ Описание отсутствует
Return type: Integer
-
1.8.3.6. TbtkGanttItemStyle¶
-
class
TbtkGanttItemStyle
¶ Перечисление стилей отображения визуальных элементов Гантта.
-
gisPipe
¶ Прямоугольный элемент с заливкой указанного цвета с небольшим
-
gisLine
¶ Линия
-
gisLineWEnd
¶ Линия, ограниченная с обоих концов вертикальными линиями
-
gisSpan
¶ Диапазон (линия со стрелками на концах, направленными вниз)
-
gisSquare
¶ Прямоугольник с чёрными границами и заливкой указанного цвета
-
gisCircle
¶ Круг, положение которого на диаграмме зависит только от
StartDate
-
gisRectangle
¶ Прямоугольник, положение которого на диаграмме зависит только от
StartDate
-
gisDiamond
¶ Ромб, положение которого на диаграмме зависит только от
StartDate
-
1.8.3.7. TbtkGanttRegionDef¶
-
class
TbtkGanttRegionDef
¶ Мета описание выделенного региона на диаграмме Гантта. Регион - это временной отрезок от верха диаграммы до низу закрашенный по шаблону.
-
ToDate
: String¶ Дата конца выделенного региона в строковом формате. Формат строки задается в настройках календаря пользователя в системе.
Return type: String
-
FromDate
: String¶ Дата начала выделенного региона в строковом формате. Формат строки задается в настройках календаря пользователя в системе.
Return type: String
-
Color
: Integer¶ Цвет линии в формате RGB. Задается в шестнадцатиричном формате.
Где:
- $0000FF
- красный
- $FF0000
- синий
- $00FF00
- зеленый
Return type: Integer
-
Style
: TBrushStyle¶ Задает шаблон заливки.
Return type: TBrushStyle
Пример работы с регионами:¶<pascal> i := gantt.addRegion('11.04.2009 00:30', '13.04.2009 12:38', $8c1eb2, bsBDiagonal); gantt.DeleteRegion(i); i := gantt.addRegion('11.04.2009 00:30', '13.04.2009 19:38', $8cAe02, bsBDiagonal); gantt.ClearRegions; i := gantt.addRegion('11.04.2009 00:30', '13.04.2009 19:38', $0000FF, bsBDiagonal); gantt.Region[gantt.RegionCount - 1].FromDate := '13.04.2009 00:30'; gantt.Region[gantt.RegionCount - 1].ToDate := '17.04.2009 09:30'; </pascal>
-