Тип: ПолосыИзмерительнойДиаграммы. Содержит коллекцию полос измерительной диаграммы.
Полное описание, параметры и ограничения
Диаграмма.ПолосыИзмерительнойДиаграммы (Chart.GaugeChartQualityBands)
Диаграмма (Chart)
ПолосыИзмерительнойДиаграммы (GaugeChartQualityBands)
Не рекомендуется использовать, начиная с версии 8.3.12.
Рекомендуется использовать:
ИнформационныеИнтервалыЗначений
Доступен, начиная с версии 8.0.
Использование:
Только чтение.
Описание:
Тип: ПолосыИзмерительнойДиаграммы.
Содержит коллекцию полос измерительной диаграммы.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Использование в версии:
Доступен, начиная с версии 8.0.
Не рекомендуется использовать, начиная с версии 8.3.12.
Описание изменено в версии 8.3.15.
Методическая информация
Практические примеры
Показать выполнение плана 16 из 20 как 80% с поясняющими полосами
Сначала рассчитываем процент числом, затем строим измерительную диаграмму 0–100. Полосы задают визуальные ориентиры, а не бизнес-проверку документа.
Где и как запускать
Модуль новой управляемой формы учебной внешней обработки. Код содержит готовые процедуры с директивами; вставляйте на уровне модуля, не внутрь другого обработчика. Каждую задачу запускайте в отдельной копии формы.
Подготовка
В учебной базе создайте новую внешнюю обработку УчебнаяДиаграмма с пустой управляемой формой; назначьте форму основной.
Не создавайте реквизит График и поле ДиаграммаТоваров вручную: код создаёт их в ПриСозданииНаСервере.
В свойствах формы → События назначьте ПриСозданииНаСервере одноимённой процедуре. Сохраните EPF и откройте её в учебном тонком клиенте Windows.
Каждый урок использует отдельный модуль/копию формы. Данные вымышлены: план и факт в штуках за три месяца, не данные учёта.
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
НовыеРеквизиты = Новый Массив;
НовыеРеквизиты.Добавить(Новый РеквизитФормы("График", Новый ОписаниеТипов("Диаграмма")));
ЭтаФорма.ИзменитьРеквизиты(НовыеРеквизиты);
План = 20;
Факт = 16;
Если План <= 0 Тогда
ВызватьИсключение "Для процента выполнения нужен положительный план";
КонецЕсли;
Выполнение = Факт / План * 100;
Диаграмма = Новый Диаграмма;
Диаграмма.ТипДиаграммы = ТипДиаграммы.Измерительная;
Серия = Диаграмма.УстановитьСерию("completion");
Серия.Текст = "Выполнение плана, %";
Точка = Диаграмма.УстановитьТочку("month");
Точка.Текст = "Сентябрь";
Диаграмма.УстановитьЗначение(Точка, Серия, Выполнение);
Диаграмма.АвтоМинимальноеЗначение = Ложь;
Диаграмма.АвтоМаксимальноеЗначение = Ложь;
Диаграмма.МинимальноеЗначение = 0;
Диаграмма.МаксимальноеЗначение = 100;
Диаграмма.ОтображениеЗначенияИзмерительнойДиаграммы = ОтображениеЗначенияИзмерительнойДиаграммы.Стрелка;
Диаграмма.НачальныйУголИзмерительнойДиаграммы = 180;
Диаграмма.КонечныйУголИзмерительнойДиаграммы = 0;
Диаграмма.ТолщинаШкалыИзмерительнойДиаграммы = 4;
Диаграмма.ТолщинаВтулкиИзмерительнойДиаграммы = 2;
Диаграмма.ЦветВтулкиИзмерительнойДиаграммы = Новый Цвет(50, 65, 80);
Диаграмма.ПодписиШкалыЗначенийИзмерительнойДиаграммыВдольШкалы = Ложь;
Диаграмма.ПоложениеПодписейШкалыЗначенийИзмерительнойДиаграммы = ПоложениеПодписейШкалыЗначенийИзмерительнойДиаграммы.ВнутриШкалы;
Полосы = Диаграмма.ПолосыИзмерительнойДиаграммы;
Низкая = Полосы.Добавить();
Низкая.Начало = 0;
Низкая.Конец = 50;
Низкая.Текст = "0–50%";
Низкая.Подсказка = "Учебный диапазон низкого выполнения";
Низкая.ЦветФона = Новый Цвет(235, 205, 205);
Средняя = Полосы.Добавить();
Средняя.Начало = 50;
Средняя.Конец = 80;
Средняя.Текст = "50–80%";
Средняя.Подсказка = "Учебный промежуточный диапазон";
Средняя.ЦветФона = Новый Цвет(240, 225, 180);
Высокая = Полосы.Добавить();
Высокая.Начало = 80;
Высокая.Конец = 100;
Высокая.Текст = "80–100%";
Высокая.Подсказка = "Учебный диапазон от 80% включительно по числовому правилу";
Высокая.ЦветФона = Новый Цвет(190, 225, 195);
Черновая = Полосы.Вставить(0);
Черновая.Начало = 10;
Черновая.Конец = 20;
Сообщить(Полосы.Индекс(Низкая) = 1);
Полосы.Сдвинуть(Низкая, -1);
Сообщить(Полосы.Индекс(Низкая) = 0);
Полосы.Удалить(Черновая);
Сообщить(Полосы.Количество() = 3);
Сообщить(Полосы.Получить(2).Начало = 80);
Сообщить(Выполнение = 80);
Сообщить(Выполнение >= Высокая.Начало И Выполнение <= Высокая.Конец);
Диаграмма.ОбластьЗаголовка.Текст = "16 из 20 = 80%; учебные границы";
ЭтаФорма.График = Диаграмма;
Поле = Элементы.Добавить("ДиаграммаТоваров", Тип("ПолеФормы"));
Поле.Вид = ВидПоляФормы.ПолеДиаграммы;
Поле.ПутьКДанным = "График";
Поле.РастягиватьПоГоризонтали = Истина;
Поле.РастягиватьПоВертикали = Истина;
КонецПроцедуры
Разбор по шагам
Проверяем План>0 перед делением. Вычисление 16/20×100 даёт процент 80, а не 0.8 и не количество 16.
У диаграммы одна серия и одна точка. Диапазон 0–100 фиксирован отдельно от исходного плана 20 штук.
Начальный и конечный углы задаются в градусах от положительной оси X; толщины шкалы и втулки имеют собственные ограниченные диапазоны.
Три полосы с текстом и подсказкой объясняют учебные зоны. Ровно 80 классифицируем числовым сравнением от 80 включительно.
Черновая полоса вставляется, сдвиг проверяется, затем удаляется по объекту. Остались только три нужные полосы.
Проверьте угол, направление шкалы и читаемость в своём клиенте. Цвет на общей границе полос не заменяет явное правило сравнения.
Как проверить результат
Шесть сообщений Истина; полос три, выполнение 80%, число соответствует верхнему учебному диапазону.
Стрелка на форме показывает 80 по шкале 0–100; заголовок раскрывает исходные 16 и 20.
Ожидаемый результат
Расчёт показателя и настройки шкалы имеют явные единицы, а коллекция полос полностью разобрана на собственных объектах.
На что обратить внимание
При факте выше плана процент может превысить 100. В рабочем отчёте расширьте шкалу или явно показывайте превышение, не обрезайте его молча.
Здесь пороги условные учебные, не нормы компании. При изменении порогов согласуйте числовое правило и подписи полос.
ТолщинаШкалы 1–10 соответствует 5–25% радиуса, а ТолщинаВтулки 0–10 — 0–10%: одинаковое число не означает одинаковую толщину.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.