Авторизация
На сайте:
|
|
Содержание
Как обработать интерактивное изменение интервалов диаграммы Ганта?
// Получить значение диаграммы - дежурство Петрова на вахте. Значение = ДГ.ПолучитьЗначение(ТочкаП, СерияНаВахте); // Разрешить интерактивное редактирование интервалов. Значение.Редактирование = Истина; // Получить значение диаграммы - дежурство Петрова в центральном офисе. Значение = ДГ.ПолучитьЗначение(ТочкаП, СерияВЦентре); Значение.Редактирование = Истина; // Получить значение диаграммы - дежурство Сидорова на вахте. Значение = ДГ.ПолучитьЗначение(ТочкаС, СерияНаВахте); Значение.Редактирование = Истина; // Получить значение диаграммы - дежурство Сидорова в центральном офисе. Значение = ДГ.ПолучитьЗначение(ТочкаС, СерияВЦентре); Значение.Редактирование = Истина; Процедура ДГПриОкончанииРедактированияИнтервала(Элемент, Интервал, Отмена) // Сгладить погрешности интерактивного перетаскивания - // округлить интервал по границе дня. Интервал.Начало = Интервал.Начало + 3600 * 12; Интервал.Начало = НачалоДня(Интервал.Начало); Интервал.Конец = Интервал.Конец + 3600 * 12; Интервал.Конец = НачалоДня(Интервал.Конец); // Скорректировать цвета связей. Для Каждого Связь Из Интервал Цикл Если Связь.Начало.Конец <= Связь.Конец.Начало Тогда Связь.Цвет = WebЦвета.Синий; Иначе // есть пересечение интервалов - выделить красным Связь.Цвет = WebЦвета.Красный; КонецЕсли; КонецЦикла; КонецПроцедуры
|