Рисунок 1. Б — Диаграмма Ганта.
&НаКлиенте Процедура Сформировать (Команда) СформироватьНаСервере (ДиаграммаГанта);
// Вставить содержимое обработчика.
КонецПроцедуры.
&НаСервереБезКонтекста Процедура СформироватьНаСервере (Диаграмма);
Запрос = Новый Запрос;
Запрос.Текст ="ВЫБРАТЬ.
|НачисленияФактическийПериодДействия.Сотрудник,.
|НачисленияФактическийПериодДействия.ВидРасчета,.
|НачисленияФактическийПериодДействия.ПериодДействияНачало,.
|НачисленияФактическийПериодДействия.ПериодДействияКонец,.
|НачисленияФактическийПериодДействия.Результат,.
|НачисленияФактическийПериодДействия.Регистратор,.
|НачисленияФактическийПериодДействия.Регистратор.Представление.
|ИЗ.
|РегистрРасчета.Начисления.ФактическийПериодДействия КАК НачисленияФактическийПериодДействия" ;
ВыборкаРезультата = Запрос. Выполнить ().Выбрать ();
// Запретить обновление диаграммы Диаграмма. Обновление = Ложь;
Диаграмма.Очистить ();
Диаграмма.ОтображатьЗаголовок = Ложь;
// Заполнить диаграмму Пока ВыборкаРезультата. Следующий () цикл.
// Получить серию, точку и значение для них ТекущаяСерия = Диаграмма. УстановитьСерию (ВыборкаРезультата.ВидРасчета);
ТекущаяТочка = Диаграмма. УстановитьТочку (ВыборкаРезультата.Сотрудник);
ТекущееЗначение = Диаграмма. ПолучитьЗначение (ТекущаяТочка, ТекущаяСерия);
// Создать нужные нам интервалы в значении ТекущийИнтервал = ТекущееЗначение. Добавить ();
ТекущийИнтервал.Начало = ВыборкаРезультата. ПериодДействияНачало;
ТекущийИнтервал.Конец = ВыборкаРезультата. ПериодДействияКонец;
ТекущийИнтервал.Текст = ВыборкаРезультата. РегистраторПредставление;
ТекущийИнтервал.Расшифровка = ВыборкаРезультата. Регистратор;
КонецЦикла;
// Раскрасить серии своими цветами Для Каждого Серия из Диаграмма. Серии Цикл Если Серия. Значение = ПланыВидовРасчета.ОсновныеНачисления.Оклад Тогда Серия. Цвет = WEBЦвета. Желтый;
ИначеЕслиСерия.Значение = ПланыВидовРасчета.ОсновныеНачисления.Премия Тогда Серия. Цвет = WEBЦвета. Зеленый;
ИначеЕслиСерия.Значение = ПланыВидовРасчета.ОсновныеНачисления.Невыход Тогда Серия. Цвет = WEBЦвета. Красный;
КонецЕсли;
КонецЦикла;
// Разрешить обновление диаграммы Диаграмма. Обновление = Истина;
КонецПроцедуры.