Имя: Пароль:
1C
1С v8
Радченко Диаграмма Ганта. Не выводится премия на диаграмме.
0 aqua007
 
14.08.15
15:21
&НаКлиенте
Процедура Сформировать(Команда)
    СформироватьНаСервере(ДиаграммаГанта);
КонецПроцедуры

&НаСервереБезКонтекста
Процедура СформироватьНаСервере(Диаграмма)
    
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
                   |    НачисленияФактическийПериодДействия.Сотрудник,
                   |    НачисленияФактическийПериодДействия.ВидРасчета,
                   |    НачисленияФактическийПериодДействия.ПериодДействияНачало,
                   |    НачисленияФактическийПериодДействия.ПериодДействияКонец,
                   |    НачисленияФактическийПериодДействия.Результат,
                   |    НачисленияФактическийПериодДействия.Регистратор,
                   |    НачисленияФактическийПериодДействия.Регистратор.Представление
                   |ИЗ
                   |    РегистрРасчета.Начисления.ФактическийПериодДействия КАК НачисленияФактическийПериодДействия";

    ВыборкаРезультата = Запрос.Выполнить().Выбрать();

    // Запретить обновление диаграммы.
    Диаграмма.Обновление = Ложь;

    Диаграмма.Очистить();
    Диаграмма.ОтображатьЗаголовок = Ложь;

    // Заполнить диаграмму.
    Пока ВыборкаРезультата.Следующий() Цикл

        // Получить серию, точку и значение для них.
        ТекущаяСерия = Диаграмма.УстановитьСерию(ВыборкаРезультата.ВидРасчета);
        ТекущаяТочка = Диаграмма.УстановитьТочку(ВыборкаРезультата.Сотрудник);
        ТекущееЗначение = Диаграмма.ПолучитьЗначение(ТекущаяТочка, ТекущаяСерия);

        // Создать нужные нам интервалы в значении.
        ТекущийИнтервал = ТекущееЗначение.Добавить();
        ТекущийИнтервал.Начало = ВыборкаРезультата.ПериодДействияНачало;
        ТекущийИнтервал.Конец = ВыборкаРезультата.ПериодДействияКонец;
        ТекущийИнтервал.Текст = ВыборкаРезультата.РегистраторПредставление;
        ТекущийИнтервал.Расшифровка = ВыборкаРезультата.Регистратор;

    КонецЦикла;

    // Раскрасить серии своими цветами.
    Для Каждого Серия из Диаграмма.Серии Цикл
        Если Серия.Значение = ПланыВидовРасчета.ОсновныеНачисления.Оклад Тогда
            Серия.Цвет = WEBЦвета.Желтый;

        ИначеЕсли Серия.Значение = ПланыВидовРасчета.ОсновныеНачисления.Невыход Тогда
            Серия.Цвет = WEBЦвета.Красный;
            
        ИначеЕсли Серия.Значение = ПланыВидовРасчета.ОсновныеНачисления.Премия Тогда
            Серия.Цвет = WEBЦвета.Зеленый;


        КонецЕсли;

    КонецЦикла;

    // Разрешить обновление диаграммы.
    Диаграмма.Обновление = Истина;
                  
КонецПроцедуры
1 aqua007
 
14.08.15
15:22
Может кто знает или предполагает причину данной проблемы, пожалуйста помогите разобраться.
2 Престарелый Заяц
 
15.08.15
14:37
А Премия разве там была основными начислениями ?
3 GROOVY
 
15.08.15
14:39
Премия не обладает периодом действия.