Назначение
Наносит на PDF-документ штамп, собранный по профилю штампа: текстовые строки, изображения (подписи, логотипы), QR-код, фрагмент отчёта Telerik. Примеры: штамп «В производство работ», QR-код проверки актуальности документа, штамп согласования. Настройка профилей описана в статье Настройки проставления штампов (new)штампов .
Сведения о типе действия
| Параметр | Значение |
|---|
| Название в портале | Добавить штамп |
| Activity в Elsa (обработчик) | Добавить штамп (AddStampActivity) |
| ID типа элемента действия | 7430e850-7da0-43a3-9392-d43ed781bf74 |
| Проверка условий правила | Да |
| Поддержка «Исходный элемент(ы) (формула)» | Да |
Атрибуты действия
| Атрибут | Обязательный | Описание | Пример |
|---|
| Название | Да | Текст. Название действия. | Штамп «В производство работ» |
| Профиль штампа | Да* | Выбор из списка «Профили штампов». Определяет содержимое штампа. | В производство работ |
| Размер штампа | Да | Ширина и высота штампа в пунктах (pt) через «;» или «,». Высота пересчитывается по фактическому содержимому. | 150;120 |
| Расположение от | Нет | Точка привязки — угол листа, от которого отсчитываются координаты. По умолчанию — правый нижний угол. | Правый нижний угол |
| Расположение штампа | Да | Смещение X;Y в пунктах от точки привязки (см. таблицу ниже). | 190;245 |
| Номер страницы | Нет | Страница, на которую наносится штамп. Если не заполнено — штамп наносится на все страницы. Правила нумерации — ниже. | 1 |
* Если профиль не указан, элементы профиля ищутся по самому действию (действие выступает профилем).
Координаты
1 pt = 1/72 дюйма ≈ 0,353 мм; лист A4 — 595 × 842 pt. Координаты рассчитываются по видимой области страницы (CropBox) с учётом поворота страницы.
...
| Note |
|---|
|
Для правых углов X отсчитывается до левого края штампа, поэтому X должен быть не меньше ширины штампа. Пример: размер 150;120, привязка «Правый нижний угол», расположение 190;245 — штамп займёт полосу от 190 до 40 pt от правого края и от 245 pt от нижнего края вверх. |
Номер страницы
| Значение | Страница |
|---|
| не заполнено | все страницы документа |
| N ≥ 1 | страница N |
| 0 | первая страница |
| −N | страница «всего страниц − N» (−1 — предпоследняя) |
Как работает
- Проверяются условия правила; определяются целевые элементы.
- Если расширение файла целевого элемента не PDF — элемент пропускается без ошибки.
- Движок вызывает API модуля Stamp портала (
POST stamp/api/stamp/add/{itemId}/{actionId}). - Модуль Stamp строит таблицу штампа по элементам профиля (формулы вычисляются в контексте документа), наносит её на страницы и сохраняет изменённый файл в элемент (атрибут «Файл»).
Вариант: штамп с профилем из этапа процесса
| Status |
|---|
| colour | Yellow |
|---|
| title | Уточнить |
|---|
|
Тип действия с ID d1b55110-1258-4e05-8321-cbdd8acca085 обрабатывается тем же обработчиком, но профиль штампа берётся из атрибута «Профиль штампа» текущего этапа процесса (см. шаблоны этапов), на котором сработало правило. В этом режиме:
...
| Warning |
|---|
| title | Каскад по атрибуту «Файл» |
|---|
|
Штамп изменяет атрибут «Файл». Если для типа файла настроено правило на изменение «Файла» (например, сброс статуса при новой версии), оно тоже сработает. Исключайте такие срабатывания условием на системного пользователя: Str(Id(This("editor"))) != "00000000-0000-0000-0000-000000000001". |
Особенности
- Повторное срабатывание правила наносит штамп повторно — ограничивайте правило условиями.
- Штамп наносится поверх содержимого страницы.
- Шрифт штампа задаётся в профиле (файл шрифта с поддержкой кириллицы).
См. также