Element_Test_V2/Koncept/Testovoe/Пресейл/ДиаграммаВоронкаПродаж.xbsl
Vladislav_k0ncept f16c003f46 Initial commit
2025-02-20 15:05:58 +00:00

57 lines
3.4 KiB
Plaintext

@Обработчик
метод ПослеСоздания()
ОбновитьДиаграмму()
;
@ВПодсистеме
структура ДанныеСтадий
обз знч Стадия: Строка
обз знч КоличествоСделок: Число
обз знч ЦветОбласти: Цвет | Авто
;
@ВПроекте
метод ОбновитьДиаграмму()
знч Диаграмма = Компоненты.Диаграмма
Диаграмма.ОтображатьВнутренниеМаркеры = Истина
Диаграмма.ОтображатьВнешниеМаркеры = Истина
Диаграмма.ОтображатьОтносительныеДоли = Истина
Диаграмма.ОтображатьАбсолютныеДоли = Истина
знч ДанныеДиаграммы = Диаграмма.Источник.Данные
ДанныеДиаграммы.Очистить()
знч ПалитраЦветов = новый Массив<Цвет>()
ПалитраЦветов.Добавить(новый АбсолютныйЦвет(86, 180, 233))
ПалитраЦветов.Добавить(новый АбсолютныйЦвет(204, 121, 167))
ПалитраЦветов.Добавить(новый АбсолютныйЦвет(230, 159, 0))
ПалитраЦветов.Добавить(новый АбсолютныйЦвет(0, 158, 115))
знч КоличествоПоСтадиям = ПолучитьКоличествоПоСтадиям()
пер Счетчик: Число
для Элемент из КоличествоПоСтадиям
знч Цвет = Счетчик > ПалитраЦветов.Граница() ? ПалитраЦветов[0] : ПалитраЦветов[Счетчик]
Счетчик += 1
ДанныеДиаграммы.Добавить(новый ДанныеСтадий(
Стадия = Элемент.Ключ.Представление(),
КоличествоСделок = Элемент.Значение,
ЦветОбласти = Цвет))
;
пер Серия: ВоронкообразнаяСерияДиаграммы = новый ВоронкообразнаяСерияДиаграммы()
Серия.ПоляДанных.Ключ.ПолеЗначения = "Стадия"
Серия.ПоляДанных.Ключ.ОтображаемоеЗначение = "Стадия"
Серия.ПоляДанных.Значение.ПолеЗначения = "КоличествоСделок"
Серия.ПоляДанных.Значение.ОтображаемоеЗначение = "КоличествоСделок"
Серия.ПоляДанных.Цвет = "ЦветОбласти"
Диаграмма.Серии.Добавить(Серия)
;
@НаСервере @ДоступноСКлиента
статический метод ПолучитьКоличествоПоСтадиям(): Соответствие<СтадииСделок.Ссылка, Число>
возврат Сделки.КоличествоСделокПоАктивнымСтадиям()
;