Интерактивные диаграммы PlantUML

03.04.25

Разработка - Инструментарий разработчика

Использование PlantUML для генерации интерактивных (кликабельных) диаграмм без необходимости доступа в интернет

Бесплатные

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Бесплатно
Интерактивные диаграммы PlantUML:
.dt 25,00Mb
182 Скачать бесплатно

PlantUML — это мощный и универсальный инструмент, который позволяет легко и быстро создавать разнообразные виды диаграмм. С помощью простого и интуитивно понятного синтаксиса пользователи могут создавать такие диаграммы, как UML-диаграммы, схемы бизнес-процессов, блок-схемы и многое другое, что делает PlantUML отличным выбором для тех, кто хочет визуализировать свои идеи и процессы без глубоких знаний программирования.

Идея использования PlantUML

Идея использовать PlantUML возникла во время работы над доработкой 1С:СППР в контексте моделирования архитектуры приложений, бизнес-архитектуры и архитектуры данных. Этот подход был представлен на партнерском семинаре компании 1С в 2024 году.

Да, среди статей есть примеры использования PlantUML, но основной минус примеров - отсутствие интерактивности, т.к. диаграммы формируются как «картинка» без возможности добавления интерактивных функций.  

 

Постановка задачи

Основная цель заключается в реализации функционала на платформе «1С:Предприятие 8», позволяющего генерировать интерактивные (кликабельные) диаграммы без необходимости подключения к интернету. Примером такой задачи является создание схемы интеграционных потоков между различными приложениями в рамках корпоративной ИТ-инфраструктуры.

Для демонстрации возможностей инструмента была создана упрощенная версия примера, которая показывает основные функции PlantUML. Хотя этот пример носит учебный характер, он вполне способен продемонстрировать, каким образом использование PlantUML может значительно улучшить удобство работы, например, с 1С:СППР.

 

Результат:

 

 

Интерактивная диаграммы информационных потоков, позволяющая пользователям управлять визуализацией информационных потоков различными способами:

  • Генерация диаграммы локально (смотри документацию) - диаграмма может быть создана без подключения к интернету, что особенно полезно в случаях, когда работа ведется в изолированных системах или закрытых контурах, где доступ в сеть ограничен или отсутствует;
  • Открытие форм элементов справочников - пользователь может легко получить доступ к приложениям и разделам учета, просто кликнув на соответствующую гиперссылку;
  • Расшифровка интеграционных потоков - для получения дополнительной информации о конкретных потоках данных достаточно кликнуть на стрелки диаграммы, что открывает подробную расшифровку потока, предоставляя пользователям дополнительные сведения;
  • Исключение приложений из диаграммы - если нужно исключить определенные приложения из отображаемой схемы, пользователи могут воспользоваться специальной гиперссылкой "Исключить из диаграммы". Эта функция помогает сосредоточиться на наиболее важных элементах системы.
  • Сохранение диаграммы в формате SVG - готовая диаграмма может быть сохранена в виде файла формата SVG. Этот формат удобен для дальнейшего просмотра и редактирования, поскольку его можно открыть в любом современном браузере.

Эти функции делают работу с интерактивной диаграммой удобной и эффективной, позволяя пользователям адаптировать её под свои нужды и условия работы.

 

Метамодель базы:

  • Подсистема «ВизуализациияPlantUML» - функциональность генерации диаграммы «локально». Работает в текущем пример для операционной системы Windows; 
  • Подсистема «ТехническаяПодсистема» - справочники, используемые при реализации примера справочник «Разделы учета» - разделы учета предприятия;
  • Справочник «Приложения» - приложения или сервисы, например, конкретные информационные базы 1С. Приложения могут быть дополнительно детализированы до разделов учета (отдельная табличная часть). Пример «вырожденный», т.к. решается задача показать, как можно диализировать элемент диаграммы гиперссылками;
  • Справочник «Интеграционные потоки между приложениями» - интеграционные потоки между приложениями;
  • Обработка «ФормированиеКартыИнтеграционныхПотоков» - обработка формирования диаграммы.

 

Пошаговый сценарий использования:

  • Запустить обработку «Формирование карты интеграционных потоков»;
  • Перейдите на страницу «Приложения» и нажмите на кнопку «Заполнить приложения», что приведет к заполнению таблицы на основе данных из справочника «Приложения». Если установлен флажок (чекбокс) напротив какого-либо приложения, оно будет отображаться на формируемой диаграмме;
  • Нажмите на кнопку «Сформировать диаграмму». После завершения формирования диаграммы:
    • Страница «Диаграмма» автоматически откроется и станет активной, вся «магия» в методе ртВизуализациияPlantUMLСервер.СгенерированноеSVG(ИсходныйКод).
    • Таблица на странице «Реестр интеграционных потоков» будет заполнена соответствующими данными.
    • Код для формирования диаграммы на языке PlantUML появится на странице «Исходный код».
  • При нажатии на гиперссылку названия приложения, например, 1С:ERP будет открыта форма справочника «Приложения». Стек вызова:
    • РезультатОбработкиSVGПриНажатии
    • ОбработатьПереходПоНавигационнойСсылке
  • При нажатии на гиперссылку названия раздела учета внутри приложения, например, «Управление НСИ» будет открыта форма справочника «Разделы учета». Стек вызова:
    • РезультатОбработкиSVGПриНажатии
    • ОбработатьПереходПоНавигационнойСсылке
  • При нажатии на гиперссылку «Исключить из диаграммы» в таблице «Приложения» будет снят флаг (чекбокс) у соответствующего приложения. Стек вызова:
    • РезультатОбработкиSVGПриНажатии
    • ОбработатьИсключениеПриложенияИзДиаграммы
  • При нажатии на гиперссылку «(Количество интеграционных потоков) активной страницей будет установлена страница «Реестр интеграционных потоков» и в таблице будет установлен отбор по приложению источнику и приемнику. Стек вызова:
    • РезультатОбработкиSVGПриНажатии
    • ОбработатьПереходВТаблицуИнтеграционныхПотоков

P.S. Исходный код можно использовать для создания диаграммы онлайн через сервис PlantUML. Важно отметить, что перед использованием кода необходимо удалить строку !pragma layout elk, чтобы избежать возможных конфликтов, но вид диаграммы немножко изменится. 

PlantUML использует механизм внешней компоновки для некоторых диаграмм (классы, варианты использования и т.д.).  По умолчанию используется GraphViz / dot. Это означает, что PlantUML должен вызвать внешний процесс для создания некоторых диаграмм. ELK предоставляет альтернативный механизм компоновки, который может быть полезен для сложных диаграмм. Подробнее: https://plantuml.com/ru/elk
 

Исходный код:

 

 

Результат онлайн генерации:

 

 

К статье приложено несколько скриншотов из 1С:СППР, который дорабатывается для задач управления архитектурными слоями предприятия. 

---

  • ОС - Windows
  • Платформа - 1С:Предприятие 8.3 (8.3.25.1394)
  • JAVA: version "11.0.6" 2020-01-15 LTS

 

Продолжение статьи: Использование 1С + PlantUML + JavaScript для расширения интерактивных функций формируемых диаграмм

Вступайте в нашу телеграмм-группу Инфостарт

PlantUML 1С:СППР

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    209764    1147    413    

1040

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    38980    215    113    

204

Работа с интерфейсом Анализ учета Мониторинг 1С v8.3 8.3.14 1C:Бухгалтерия 1С:Бухгалтерия 3.0 1С:Библиотека стандартных подсистем 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 Платные (руб)

Скачайте бесплатную обработку "Анализ данных для использования в подсистеме 1С Инфоборды" и узнайте возможность внедрения подсистемы у себя в конфигурации! Создайте свой функциональный интерфейс в любой конфигурации 1С с помощью расширения "Инфоборды". Настраивайте панели виджетов с метриками, индикаторами и показателями на начальном экране.

28800 руб.

27.03.2025    13507    24    18    

34

Инструменты администратора БД Инструментарий разработчика Роли и права Программист 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

16000 руб.

10.11.2023    18155    78    39    

92

Инструментарий разработчика Программист 1С v8.3 1С:Управление нашей фирмой 3.0 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9500 руб.

17.05.2024    36750    133    53    

176

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 руб.

06.10.2023    25755    65    30    

96

Инструментарий разработчика Нейросети Платные (руб)

Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше.<br/> Далее в публикации:<br/> MCP для поиска по метаданым 1С, справке синтакс-помошника и проверки синтаксиса.

9900 руб.

25.08.2025    2442    4    7    

12

Инструментарий разработчика 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

Разработка Конструктор автоматизированных рабочих мест "Конструктор АРМ" реализована в виде расширения и является универсальным инструментом для создания АРМ любой сложности в пользовательском режиме.

3600 руб.

27.12.2024    3426    7    0    

12
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. barelpro 1448 24.03.25 09:48 Сейчас в теме
Стас, самую красиву интеграционную схему ты нарисовал в Ростехе, ты бы лучше ее показал, это шедеврально!
Fox_ZNF; SultanovStas; TSAllea; +3 Ответить
2. SultanovStas 90 24.03.25 09:53 Сейчас в теме
Сейчас уже красивее есть :)
Dimanchik00; TSAllea; +2 Ответить
4. Dimanchik00 24.03.25 18:44 Сейчас в теме
(2) пришли, интерес подогрели. А саму схему зажилили. :)
3. roman72 402 24.03.25 09:55 Сейчас в теме
Супер!
Утащил в канал СППР в телеграм.
5. Fox_ZNF 02.04.25 09:18 Сейчас в теме
Здравствуйте, подскажите, в этом варианте только диаграмма компонентов?
Я немного не понимаю момент с "Расшифровка интеграционных потоков - для получения дополнительной информации о конкретных потоках данных достаточно кликнуть на стрелки диаграммы, что открывает подробную расшифровку потока, предоставляя пользователям дополнительные сведения;"

Если это просто строка. У меня допустим есть подсистема с несколькими справочниками (я хочу, чтобы они гиперссылками отображались).
Это возможно?
Прикрепленные файлы:
6. SultanovStas 90 02.04.25 15:31 Сейчас в теме
(5) По интеграциям решалась задача - при клике на (Х), открывается реестр интеграционных потоков между систем, а сами системы «зашиты» как ИД внутри href. Главное было показать интерактивность.

(5) Гиперссылками отображается все, что соответствует документации https://plantuml.com/ru/link
8. Fox_ZNF 04.04.25 09:46 Сейчас в теме
(6) Я правильно понимаю, что нужно дописывать?
Просто в документации много диаграмм, в обработке строится 1 - автоматически.

Как зашить вложенность - непонятно.
9. SultanovStas 90 04.04.25 10:35 Сейчас в теме
(8) Вложенность чего, нарисуйте пример, я попробую диаграмму создать.
11. SultanovStas 90 10.04.25 10:24 Сейчас в теме
(10) Это привычка с проекта, когда я еще активно разработку вел. Много чего в СППР сделано было с этим префиксом, так и осталось.
7. SultanovStas 90 04.04.25 09:34 Сейчас в теме
(5) Останется вопрос - что положить с "href" и какая обработка click/dbclick требуется.
10. Cyberhawk 136 10.04.25 06:08 Сейчас в теме
вся «магия» в методе ртВизуализациияPlantUMLСервер.СгенерированноеSVG(ИсходныйКод)
Как расшифровывается префикс рт?
12. SultanovStas 90 10.04.25 20:33 Сейчас в теме
(10) Это привычка с проекта, когда я еще активно разработку вел. Много чего в СППР сделано было с этим префиксом, так и осталось.
Cyberhawk; +1 Ответить
Для отправки сообщения требуется регистрация/авторизация