В этом примере показано как сформировать диаграмму с типом Круговая, которая выглядит:
Настройки
Код
Состояние("Формирование диаграммы продаж"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ПродажиОбороты.Номенклатура.НоменклатурнаяГруппа КАК НоменклатураНоменклатурнаяГруппа, | КОЛИЧЕСТВО(ПродажиОбороты.КоличествоОборот) КАК КоличествоОборот, | СУММА(0) КАК Проц |ИЗ | РегистрНакопления.Продажи.Обороты( | &ND, | &KD, | Запись, | Организация = &Org | И ДоговорКонтрагента.Менеджер В ИЕРАРХИИ (&Mened)) КАК ПродажиОбороты | |СГРУППИРОВАТЬ ПО | ПродажиОбороты.Номенклатура.НоменклатурнаяГруппа | |УПОРЯДОЧИТЬ ПО | НоменклатураНоменклатурнаяГруппа |АВТОУПОРЯДОЧИВАНИЕ"; Запрос.УстановитьПараметр("KD",КонПериодаР); Запрос.УстановитьПараметр("Mened", МенеджерОПР); Запрос.УстановитьПараметр("ND", НачПериодаР); Запрос.УстановитьПараметр("Org", ДляОрганизацииОР); Результат = Запрос.Выполнить(); Выборка = Результат.Выгрузить(); итог = Выборка.Итог("КоличествоОборот"); Для каждого СтрокаТЗ Из Выборка Цикл СтрокаТЗ.Проц = Окр(СтрокаТЗ.КоличествоОборот*100/итог,2); КонецЦикла; ДиаграммаВП = ЭлементыФормы.ДиаграммаОР; Для Каждого СтрТраб из Выборка Цикл Серия=ДиаграммаВП.Серии.Добавить(?(ЗначениеЗаполнено(СтрТраб.Получить(0).Наименование), СтрТраб.Получить(0).Наименование+" - "+Строка(СтрТраб.Получить(2))+"%","Без группы")); Попытка ДиаграммаВП.УстановитьЗначение(1,Серия,?(СтрТраб.Получить(2)=Неопределено,0,СтрТраб.Получить(2))); Исключение // такого не должно быть, но на всякий случай КонецПопытки; КонецЦикла;