В приложенной обработке постарался достаточно полно прокомментировать все шаги алгоритма, поэтому рассмотрим визуальное представление того, как мы будем строить нашу воронку средствами 1С.
Итак, начнем по шагам:
1. Сначала нарисуем эллипсы, из которых будет состоять наша воронка:
2. Теперь от каждого эллипса проведем вверх линии (в нашем варианте разноцветные, использованы алгоритмы преобразования к цветовой модели HSV для более корректного осветления цветов и создания градиентов):
3. От верха линий из п. 2 проведем линии к верхним от них эллипсам (линии расположены выше нижнего эллипса и растягиваются до верхнего эллипса):
4. Поверх всего получившегося проведем линии границы воронки:
В итоге получим:
5. Далее создадим легенду для частей нашей воронки:
Все, воронка готова.
В принципе воронка - достаточно сложное представление информации с точки зрения ее программного создания, другие графики и диаграммы нарисовать гораздо проще, так что не ленитесь и пробуйте.
Примечание: п. 2 и п. 3 разделены для того, чтобы разложить изображение на слои, которые накрывают друг друга, т.е. сначала рисуем закраску для нижнего эллипса, потом подводим границы пустым эллипсом, только лишь для того, чтобы подчеркнуть границу. На выходе получаем видимую верхнюю границу нижнего эллипса, чтобы от этого избавиться и нужен п.3.
Рассмотрим преимущества нашей воронки:
-
Кроссплатформенность
-
Нет необходимости в сторонних приложениях и файлах
-
Не требуется никаких дополнительных настроек ОС и параметров безопасности
-
Воронка будет иметь одинаковый вид в любом клиенте
-
Самое главное: т.к. мы работаем в 1С, мы можем добавить к легенде нашей воронки расшифровку или какие-либо другие обработчики событий, при выделении блока например, чего нельзя сделать с помощью сторонних приложений, либо трудозатраты на разработку будут неимоверно велики, например, расшифровка:
Т.е. мы небольшими дописками сможем обеспечить любые интерактивные действия с рисунками табличного документа из 1С, что немаловажно.
-
Открытый исходный код, мы можем поменять размеры, цвета, все что угодно, чтобы наша воронка радовала глаз. Сделать это можно отнюдь не везде при остальных способах отрисовки воронки сторонними приложениями
-
Возможность интеграции нашей воронки с СКД и любыми другими источниками данных в 1С, т.е. при желании можно создать интерфейс, который при компоновке результата будет передавать необходимые данные на вход к воронке и вместо диаграммы СКД будет сформирована наша воронка, причем в том же табличном документе, что и наш отчет
-
Возможность работы с табличным документом типовыми средствами 1С, а это печать, сохранение, пересылка по почте (при наличии такой возможности)
Теперь рассмотрим недостатки:
-
Координаты при отрисовке сведений немного корректируются, это связано с некоторыми особенностями рисунков табличного документа, так что возможны небольшие артефакты на картинке
-
К сожалению в 1С до сих пор нет программной работы с рисунками типа Группа, а это не позволяет сделать нам расшифровку непосредственно для части воронки, либо какого-то другого элемента, состоящего из множества других (тут остается только вариант присвоения одинаковой расшифровки для всех составляющих частей)
-
При использовании раскраски с градиентом достаточно ресурсоемко получается, но можно поиграться с настройками или формировать таб. док на сервере.
© senior-soft.ru Все права защищены.