Справочник / Общие возможности / Переменные, процедуры и условия
Переменные, процедуры и условия
Препроцессор выполняется до рисования схемы и подставляет текст. Он избавляет от повторов: имя сервера в переменной, типовой блок в процедуре, ряд однотипных элементов в цикле.
Переменные
Переменная начинается со знака $ и задаётся через !$имя = значение. Подставляется по имени.
@startuml !$db = "PostgreSQL 16" !$port = "5432" node Сервер database "$db" as DB Сервер --> DB : TCP $port @enduml
Процедуры
!procedure описывает повторяющийся фрагмент с параметрами, !endprocedure — его конец. Вызывается как функция; текстовые аргументы берутся в кавычки.
@startuml
!procedure $service($name, $port)
component "$name\n:$port" as $name
!endprocedure
$service("Каталог", "8081")
$service("Корзина", "8082")
Корзина --> Каталог
@endumlУсловия и циклы
!if … !else … !endif включает фрагменты по условию, !while — повторяет их.
@startuml !$detail = 1 class Заказ !if ($detail == 1) class Позиция Заказ *-- Позиция !endif !$i = 1 !while $i <= 3 class "Склад $i" as S$i Заказ ..> S$i !$i = $i + 1 !endwhile @enduml
Что недоступно на сайте
Ради безопасности сервер рисует схемы в «песочнице»: директивы !include с файлами и адресами в интернете не выполняются. Нужный фрагмент вставьте прямо в код схемы.
Другие общие возможности
- Заметки и комментарииЗаметки рядом с элементами, на связях и плавающие; комментарии в коде
- Форматирование текстаЖирный и курсив, списки, таблицы, цвет и размер текста, ссылки, значки
- Заголовок, легенда и подписиtitle, caption, legend, header и footer — оформление листа
- Цвета и стилиЦвет отдельных элементов, skinparam, блоки <style> и готовые темы
- Раскладка и направление связейНаправление схемы, длина и направление стрелок, скрытые связи, прямые линии