Eledo помогает собирать персонализированные PDF из шаблона и структурированных данных: в редакторе можно расставить динамический текст, таблицы, изображения, штрихкоды, QR-коды, условия, повторяющиеся блоки и заполняемые поля, а затем запускать выпуск документов через форму, monday.com, Make, Zapier или REST API.
Основная работа начинается в редакторе шаблона. Пользователь оформляет постоянную часть документа как обычный макет, вставляет компоненты для изменяемых значений и связывает их с полями данных через выражения. При генерации Eledo подставляет текст и числа, разворачивает массивы в строки таблиц, скрывает необязательные разделы, переносит длинное содержимое на следующие страницы и возвращает готовый PDF.
Практический процесс удобно строить от одного тестового примера: подготовить шаблон, описать входные поля, проверить результат в автоматической форме, затем подключить рабочую систему и только после этого включить триггер. Такой порядок позволяет отдельно отладить верстку, преобразование дат и валют, обработку пустых значений, имена файлов и передачу результата в почту, облачное хранилище или колонку доски.
Открыть Eledo
- Редактирование PDF
- Русский интерфейс
- Просто новичкам
- Нет русского интерфейса
- Нужен интернет
- Только PDF на выходе
Как устроен рабочий процесс в Eledo
Шаблон в Eledo разделяет документ на постоянную и переменную части. Постоянными остаются заголовки, поясняющий текст, оформление, сетка таблиц, фон, реквизиты и элементы фирменного стиля. Переменные части получают значения во время генерации: имя клиента, позиции заказа, итоговая сумма, срок действия предложения, фотография товара, отметка согласия или код для оплаты. Благодаря этому один макет используется многократно, а различия между экземплярами определяются данными, а не ручным редактированием копий.
Для первого запуска не обязательно сразу подключать CRM или писать запрос к API. После сохранения шаблона Eledo формирует поля ввода, соответствующие найденным переменным, и позволяет отправить пробный набор значений. Этот режим полезен для проверки обязательности полей, типов данных и поведения длинных строк. Когда результат выглядит правильно, те же имена переменных становятся точками сопоставления в Make, Zapier, monday.com либо в теле программного запроса.
Главное правило при проектировании — начинать с структуры данных, а не с украшения страницы. Сначала стоит определить, какие значения одиночные, какие представляют списки, где возможны пустые поля и какие блоки должны исчезать при отсутствии данных. После этого можно строить таблицы, условия и вычисления. Если сначала сверстать сложный макет, а затем пытаться приспособить к нему массивы и вложенные объекты, чаще возникают неправильный контекст повторения, лишние пустые строки и трудно читаемые выражения.
Интерфейс редактора шаблона
Рабочая область редактора напоминает текстовый редактор с панелью форматирования над листом. В ней доступны команды для абзацев, выравнивания, списков, ссылок, таблиц и вставки изображений, а рядом расположены специальные компоненты Eledo: динамический текст, повторение блока, условие видимости, динамическое изображение, штрихкод, QR-код и поля PDF-формы. Слева открывается навигация по основному документу, фоновому слою, входным полям, настройкам, защите и API.

Редактор работает с HTML-подобной структурой. Пользователь видит оформленный документ, но повторение и условия применяются не просто к выделенному фрагменту текста, а к контейнеру: ячейке, строке таблицы, абзацу, пункту списка или более крупному блоку. Поэтому в диалогах повторения и условия есть переход к родительскому элементу. Он особенно важен для таблиц: курсор обычно находится внутри ячейки, тогда как повторять требуется всю строку.
В верхней части экрана показывается номер сохраненной версии шаблона и доступен откат. Это помогает безопасно экспериментировать с формулами и версткой: перед крупным изменением достаточно сохранить рабочее состояние, а при неудачном результате вернуться к предыдущей редакции. При этом интеграцию следует проверять после каждого изменения списка полей, потому что внешняя система может хранить ранее загруженную схему и не увидеть новую переменную до обновления.
Основной и фоновый документ
Основной документ содержит потоковое содержимое, которое увеличивается и переносится между страницами. Фоновый документ рисуется под содержимым каждой страницы. На нем удобно размещать неизменяемую рамку, логотип, адрес компании, колонтитулы и номер страницы. Такое разделение предотвращает ситуацию, когда шапка сдвигается вниз из-за длинной таблицы или повторяется как обычная строка данных.
Если фон должен отличаться для первой страницы, а последующие страницы используют другой макет, лучше заранее проверить доступные настройки конкретного шаблона и построить пробный многостраничный документ. Слишком высокий фон или большой внутренний отступ уменьшает область основного потока и приводит к раннему переносу строк. При настройке полезно временно добавить границу вокруг области содержимого: так видно, сколько места реально остается после полей и колонтитулов.
Создание шаблона с нуля
Новый макет целесообразно собирать от крупной сетки к мелким полям. Сначала задают размер страницы, ориентацию и поля, затем размещают шапку, блок адресата, основную таблицу, итоги и примечания. После этого постоянные подписи дополняют динамическими компонентами. Такой порядок уменьшает число исправлений: если начать с десятков переменных, изменение ширины колонок позже потребует заново проверять переносы и выравнивание каждого поля.
Для счета или коммерческого предложения удобно использовать таблицу без видимых границ как каркас верхней части: слева реквизиты, справа номер и дата. Таблица позиций должна иметь отдельную строку заголовков и одну образцовую строку данных. Образцовую строку превращают в повторяющийся блок, а внутри ее ячеек размещают название, количество, цену и сумму. Итоги располагают после повторяемой строки, чтобы они появились один раз.
Сложные документы полезно собирать маленькими проверяемыми этапами. Сначала вывести одно текстовое поле, затем число, затем массив из двух позиций, затем добавить условный раздел и только после этого изображения. Если PDF перестал создаваться после очередного шага, область поиска сразу ограничена последним компонентом. Одновременное добавление десятка формул усложняет диагностику, потому что журнал может показать лишь первое найденное нарушение.
Динамический текст и построитель выражений
Компонент Text Box связывает место в шаблоне с выражением. Простое выражение состоит из имени поля, например CustomerName или OrderNumber. При сохранении Eledo добавляет такие имена во входную схему. Если данные имеют вложенную структуру, используется точечная запись: объект и его поле соединяются точкой. В интеграции с monday.com типичный путь начинается с item, а затем содержит техническое имя колонки.

Построитель выражений показывает доступные поля и функции, поэтому технические имена не нужно переписывать по памяти. Это снижает риск ошибки в регистре, подчеркивании или уровне вложенности. После импорта структуры доски в подсказках появляются стандартные свойства элемента, пользовательские колонки, подэлементы и файлы. Если колонка переименована только визуально, ее техническое имя может остаться прежним; ориентироваться следует на подсказку, а не на подпись в доске.
Выражение может не только вывести значение, но и вычислить новое. Поддерживаются арифметика, сравнение, логические операции, условный выбор, округление, поиск минимального или максимального значения, подсчет размера массива, суммирование и обработка строк. Это позволяет, например, рассчитать сумму строки как Quantity * UnitPrice, добавить налог, выбрать один из двух текстов по статусу или скрыть пояснение, когда массив пуст.
Имена пользовательских полей лучше делать короткими и однозначными, используя латинские буквы, цифры и подчеркивание. Пробелы и специальные знаки затрудняют сопоставление, а одинаковые названия на разных уровнях вложенности повышают вероятность взять значение не из того контекста. Для документов, которые будут поддерживать несколько сотрудников, полезно придерживаться единого стиля: CustomerName, CustomerAddress, Items, ItemName, ItemPrice.
Типы данных и преобразования
Eledo различает логические значения, числа, строки, даты и массивы. Тип часто выводится из операции. Поле, участвующее в умножении или функции числового форматирования, становится числом; поле в сравнении с датой должно интерпретироваться как дата; значение для повторения должно быть массивом. Такой вывод помогает отсеять часть неверного ввода, но конфликтующие формулы могут привести к неожиданному типу. Если одно и то же поле используется и как число, и как произвольная строка, безопаснее разделить эти задачи на два выражения.
Пустое значение не всегда равно нулю или ложному значению. В условии непустая строка считается истинной, нулевое число — ложным, пустой массив — ложным. Это удобно для простых проверок наличия, но требует внимания к строкам, содержащим пробелы, и к текстовому значению 0. Перед запуском следует проверить три случая: поле заполнено, поле пусто и поле содержит граничное значение.
Форматирование чисел, валют и процентов
Сырые числа из CRM или таблицы редко подходят для печати без обработки. Они могут приходить с большим количеством знаков после запятой, без разделителей тысяч или в техническом формате. В Eledo для вывода чисел используются функции форматирования, в том числе NUM и CURR. Формулу следует применять в компоненте вывода, оставляя исходное значение числом для расчетов. Тогда одна переменная участвует в суммировании без потери точности, а читателю показывается аккуратная строка.
Для номера документа функция NUM полезна как дополнение ведущими нулями. Например, числовой счетчик можно вывести шестизначным номером, чтобы последовательность выглядела одинаково в имени файла и на странице. Для денежных сумм важно задать число десятичных знаков, разделители и валюту в соответствии с языком документа. Форматирование лучше проверять на нуле, отрицательном значении, крупной сумме и дробной цене.
Итоговые суммы разумно вычислять из массива, а не передавать отдельно, если внешняя система не гарантирует их согласованность. Внутри повторяемой строки выводится цена позиции, а после таблицы функция суммы обрабатывает весь массив. Если данные уже содержат подтвержденный бухгалтерский итог, можно вывести его напрямую и добавить контрольное вычисление в тестовом шаблоне. Расхождение покажет, что налог, скидка или округление применены на другом этапе.
Даты, время и часовые пояса
Функция DATE преобразует дату в заданный шаблон. Это нужно, когда интеграция передает машинное значение, а документ должен показывать привычную запись с днем, месяцем и годом. Формат следует выбирать под аудиторию: числовая запись компактна, а месяц словом уменьшает неоднозначность. Для договоров и актов полезно явно печатать год четырьмя цифрами.
При работе с временем важно понимать, в каком часовом поясе хранится значение и какой пояс применяется при выводе. Событие, записанное в UTC поздним вечером, в локальном поясе может перейти на следующий день. Ошибку лучше выявить тестом около полуночи, а не обычной дневной датой. Если документ юридически значим, пояс и правило преобразования нужно зафиксировать в требованиях к интеграции.
Пустые и некорректные даты должны обрабатываться условием. Попытка форматировать произвольный текст как дату может остановить генерацию или оставить предупреждение. Для необязательного срока безопаснее скрывать весь абзац, когда значение отсутствует, вместо вывода подписи с пустым местом. При импорте из monday.com стоит использовать именно колонку даты, а не визуально похожую текстовую колонку.
Повторяющиеся блоки и динамические таблицы
Block Repetition превращает один образец в серию элементов по количеству записей массива. Повторять можно строку таблицы, колонку, пункт списка, абзац или более крупный контейнер. В счетах это строки товаров, в отчете — задачи, в сертификатах — список достижений, в приложении к договору — перечень услуг. Внутри повторяемого блока контекст меняется: короткое имя поля относится к текущему элементу массива, а не к корню данных.

Типичная ошибка состоит в повторении ячейки вместо строки. Курсор находится внутри ячейки, и диалог показывает выбранный элемент TD. Кнопкой выбора родительского блока нужно подняться до TR. Если оставить TD, значения будут добавляться в одной строке или нарушат сетку. После настройки следует испытать массив из нуля, одной, двух и большого количества записей: эти четыре случая выявляют большинство проблем.
Многостраничная таблица требует проверки повторения заголовка и запрета нежелательных разрывов внутри строки. Если описание позиции длинное, строка может не помещаться на остатке страницы. В зависимости от CSS и структуры она либо переносится целиком, либо делится. Для документов, где строку нельзя разделять, применяют правило предотвращения разрыва контейнера и оставляют достаточно места с учетом шапки и подвала.
Вложенное повторение используется, когда у каждого объекта есть собственный список. Например, проект содержит этапы, а каждый этап — задачи. Внешний блок повторяет этап, внутренний — задачи текущего этапа. Здесь особенно важно не использовать полный путь от корня внутри внутреннего контекста, если построитель уже переключился на элемент. Неправильный путь может повторить общий список в каждом разделе или вернуть пустое значение.
Группировка, фильтрация и сортировка
Для группировки строк Eledo применяет сочетание вложенных повторений и функций UNIQUE и FILTER. Сначала из массива получают уникальные значения группирующего поля, затем для каждой группы фильтруют исходный список. Такой прием подходит для отчета по командам, разделения услуг по категориям или печати товаров по складам. Группирующее значение должно иметь стабильный тип; число и строка с теми же символами могут считаться разными.
Фильтрация особенно полезна для monday.com, где подэлементы могут иметь разные статусы. Повторяемому блоку передают не весь массив, а результат FILTER с условием по статусу, дате или другому полю. Перед публикацией следует проверить, что условие сравнивает техническое значение, а не локализованную подпись. Если список после фильтра пуст, заголовок раздела лучше скрыть отдельным условием.
Условные блоки и варианты документа
Block Condition управляет видимостью контейнера. Если выражение истинно, блок печатается; если ложно, исчезает вместе с занимаемым местом. Это удобнее, чем выводить пустую строку. Условием можно скрыть блок скидки, примечание о доставке, банковские реквизиты для определенного способа оплаты, раздел подписей или дополнительную таблицу.
Условие применяют к тому контейнеру, который должен исчезнуть целиком. Для строки таблицы выбирают TR, для абзаца — P, для группы абзацев — общий контейнер. Если поставить условие только на динамическое поле, постоянная подпись и отступ могут остаться. Визуальный тест с истинным и ложным значением обязателен, потому что желтая подсветка в редакторе показывает служебную привязку, но не всегда очевидно, какой уровень выбран.
Условия могут опираться на сравнение, логические функции и наличие значения. Для нескольких вариантов текста удобно использовать IF внутри одного поля, а для крупных различающихся разделов — отдельные блоки с взаимоисключающими условиями. Второй способ легче читать и оформлять, но он дублирует постоянную верстку. Выбор зависит от размера различий и того, кто будет поддерживать шаблон.
Динамические изображения, логотипы и подписи
Dynamic Image получает изображение по адресу или из переданных данных. Компонент может показывать логотип клиента, фотографию товара, вложение из карточки, график или подпись. В настройках указывается выражение и при необходимости ширина либо высота. Если задан только один размер, второй рассчитывается с сохранением пропорций. Это предотвращает растяжение, но не гарантирует, что очень высокая картинка поместится в отведенную область.

Для стабильного макета лучше ограничивать хотя бы одну сторону и заранее определить допустимое соотношение сторон. Квадратная фотография и панорамный снимок при одинаковой ширине занимают разную высоту. Если высота страницы критична, задают обе границы и проверяют способ вписывания. Для логотипов предпочтителен векторный формат, когда он поддерживается входным сценарием: линии остаются четкими, а файл обычно меньше растрового аналога.
Изображение по адресу должно быть доступно серверу Eledo без интерактивного входа и временной страницы подтверждения. Ссылка на страницу просмотра не равна прямому доступу к файлу. В monday.com файловая колонка преобразуется в массив, и для печати используется поле публичного адреса текущего вложения. Если вложений несколько, компонент помещают внутрь повторяемого блока.

При добавлении изображения в существующую PDF-форму пользователь выбирает инструмент, рисует прямоугольную область и задает уникальный идентификатор поля. Идентификатор допускает буквы, цифры и подчеркивание без пробелов. Затем выражение связывает область с файлом. Такой способ подходит для фотографий сотрудников, схем, подписей или изображений оборудования, когда исходная форма уже имеет фиксированную геометрию.
Если картинка не появляется, проверяют доступность файла, тип данных, контекст повторения и ограничения внешней системы. В журнале может быть предупреждение о загрузке ресурса. Для диагностики полезно временно подставить небольшой общедоступный тестовый файл. Если он печатается, проблема находится в разрешениях или формате рабочего изображения, а не в расположении компонента.
Штрихкоды и QR-коды
Eledo рисует штрихкоды как векторные элементы, поэтому они сохраняют четкость при масштабировании и не требуют заранее готовить картинку. Поддерживаются одномерные EAN-8, EAN-13, Code 39 и Code 93, а также Aztec, Data Matrix, PDF417, QR и платежный код Pay by square для Словакии и Чехии. Значение задается выражением, что позволяет кодировать номер заказа, идентификатор актива, ссылку на карточку или платежные данные.
Для читаемости нужно выбирать тип, соответствующий структуре данных. EAN требует допустимой длины и контрольной цифры, тогда как QR лучше подходит для длинной строки. Настройки масштаба и размера меняют толщину линий и габариты. Код следует испытывать физическим сканированием после печати, а не только камерой с экрана: качество принтера, размер точки и контраст влияют на результат.
При формировании ссылки нельзя забывать о кодировании специальных символов. Пробелы, амперсанды и национальные буквы должны передаваться в корректном виде. Если ссылка собирается выражением из нескольких полей, стоит вывести ее обычным текстом в тестовой копии и проверить переход. После проверки вспомогательный текст можно убрать, оставив только код.
Интерактивные поля PDF и последующее заполнение
Шаблон может содержать поля, которые сохраняются интерактивными в готовом PDF. Доступны текстовые поля, флажки, выпадающие списки, переключатели и область цифровой подписи. Значения можно предварительно заполнить данными, а получатель дополняет оставшиеся поля. Такой сценарий полезен для анкет, заявлений, согласий и договоров, где часть сведений известна заранее, а часть вводит клиент.
Каждому полю назначается уникальное техническое имя. Оно используется PDF-программами и последующей обработкой, поэтому переименовывать поля после подключения рабочего процесса нежелательно. Для флажка выражение должно давать логическое значение. Поддерживаются и вычисляемые условия, например отметка при сумме выше порога или при выборе определенного варианта.
Перед отправкой формы нужно проверить ее в нескольких программах просмотра. Разные обработчики PDF могут по-разному отображать шрифты, подписи и сложные формы. Если получателю не требуется редактирование, форму можно сплющить, превратив значения в обычное содержимое страницы. Если ответы должны вернуться в автоматизацию, поля оставляют активными и сохраняют их имена стабильными.
Заполнение готовых PDF-форм
Eledo умеет загружать PDF с существующими полями AcroForm или XFA и подставлять структурированные значения. Это позволяет использовать официальные бланки, страховые формы, анкеты и сертификаты без повторной верстки. Сопоставление строится по полям формы: текстовым, спискам, флажкам, переключателям и другим доступным элементам.
Если исходный PDF не содержит полей, в редакторе можно добавить новые области поверх страницы. Для точного размещения полезно увеличить масштаб и привязывать прямоугольник к печатным линиям бланка. После генерации нужно проверить не только экран, но и печать: небольшое смещение, незаметное на мониторе, может оказаться критичным в форме с клетками или строгими границами.
XFA-формы сложнее обычных AcroForm и не одинаково поддерживаются программами просмотра. Даже если заполнение прошло успешно, получатель может открыть документ в средстве, которое показывает XFA некорректно. Для массового внешнего обмена следует заранее протестировать целевые программы или использовать сплющивание, если интерактивность не нужна.
Имена файлов, номера документов и счетчики
Имя готового PDF задается выражением в настройках шаблона. По умолчанию оно связано с названием шаблона, но на практике лучше включать тип документа, номер и дату. Выражение CONCAT объединяет постоянные части и данные, NUM добавляет ведущие нули, DATE печатает дату в выбранном формате. Например, отчет может получать имя из префикса, идентификатора проекта и дня формирования.
Имя должно быть безопасным для файловой системы и следующей системы хранения. Символы, допустимые в одном хранилище, могут запрещаться в другом. Следует исключать разделители путей, управляющие символы и слишком длинные значения. Если имя строится из названия клиента, полезно иметь запасной идентификатор на случай пустой строки или одинаковых названий.
Счетчики в профиле подходят для последовательной нумерации. Их используют вместе с префиксом и форматированием. Однако бизнес-требования к уникальности нужно рассматривать отдельно: параллельные процессы, повторная генерация и отмененные документы могут влиять на последовательность. Для юридически значимых номеров надежнее передавать номер из учетной системы, которая уже отвечает за его выдачу, а счетчик Eledo использовать для внутренних файлов.
Страницы, поля, рамки и CSS
Размер свободного пространства вокруг содержимого определяется полями, рамкой и внутренним отступом. В базовом стиле для BODY используется внутренний отступ, который создает белую область вокруг текста. Через редактор стилей можно изменить margin, border и padding, вплоть до нулевых значений для макета на всю страницу. Эти параметры влияют на все страницы и должны согласовываться с фоновым слоем.
Редактор стилей открывается кнопкой Styles в основном или фоновом документе. Там вводятся CSS-правила для BODY, абзацев, таблиц и других элементов. Глобальные правила удобны для единого шрифта, цвета, толщины границ и отступов. Локальное форматирование через панель остается полезным для исключений, но чрезмерное смешивание локальных и глобальных правил усложняет поиск причины неожиданного вида.
Для таблиц важны ширины колонок, перенос слов, вертикальное выравнивание и повтор заголовка на следующей странице. Если сумма заданных ширин превышает доступную область, движок вынужден сжимать или переносить содержимое. В тесте следует использовать самые длинные реальные названия, максимальное количество знаков в цене и несколько страниц позиций. Макет, проверенный только на коротком примере, обычно ломается именно на граничных данных.
Правило запрета разрыва помогает сохранить вместе строку, подпись и следующий абзац, но слишком большой неделимый контейнер не поместится на странице. Тогда возможно появление большого пустого участка или перенос всего блока. Поэтому крупные разделы не стоит без необходимости объявлять неделимыми. Ограничение применяют к смысловым единицам, которые действительно нельзя разделить.
Колонтитулы и нумерация страниц
Фоновый документ используется как слой, печатаемый перед содержимым. Для колонтитулов удобно создать таблицу из трех строк: верхняя для шапки, средняя оставляет место основному тексту, нижняя содержит подвал. Номер текущей страницы и общее количество страниц добавляются через переменные редактора. Такой подход сохраняет одинаковое расположение элементов независимо от длины основного потока.
Высота средней строки должна соответствовать области, доступной основному документу. Если она меньше фактического потока, фон не ограничит текст автоматически, и элементы могут пересечься. Поэтому шапку и подвал проверяют на многостраничном документе с длинной таблицей. Для принтера также оставляют непечатаемые поля, если документ не рассчитан на печать без полей.
Фирменный фон можно строить не только в верхней и нижней полосе. На слое размещают боковую цветную полосу, водяной знак, декоративную рамку или адресный блок. Но динамические данные, которые меняются от страницы к странице, лучше оставлять в основном потоке или использовать предусмотренные переменные страницы. Иначе повторяемый фон может показывать одинаковое значение там, где ожидается изменяемое.
Автоматическая форма для проверки шаблона
После определения переменных Eledo формирует форму ввода. Она полезна не только как демонстрация, но и как изолированный стенд. В ней можно заполнить поля вручную и получить PDF без настройки внешней автоматизации. Так дизайнер шаблона проверяет верстку независимо от специалиста, который соединяет CRM или пишет запросы.
Форма показывает, какие поля сервис вывел из выражений и какой тип им назначил. Если ожидаемое поле отсутствует, оно может быть вычисляемым и не требовать ввода либо находиться внутри структуры, которую нужно передавать как массив. Если число отображается как текстовое поле, следует проверить формулу, заставляющую движок распознать числовой тип.
Для повторяемых блоков ручная форма менее удобна, чем интеграция, потому что массивы сложнее вводить. В таких случаях лучше подготовить небольшой тестовый запрос или сценарий Make с массивом из двух-трех объектов. Автоматическая форма остается полезной для одиночных значений, форматирования, условий и общего внешнего вида.
Подключение Eledo к Make
Связь с Make начинается с API-ключа. В аккаунте Eledo он находится в разделе интеграций. Ключ вводится при создании соединения в модуле Eledo PDF generator. Его нельзя публиковать в инструкциях, снимках экрана или общих документах, потому что он дает доступ к квоте и шаблонам. При подозрении на утечку ключ можно заменить, после чего соединения нужно обновить.


После проверки соединения модуль предлагает выбрать шаблон. Список зависит от аккаунта и доступных шаблонов. При выборе Make загружает схему пользовательских полей, которую Eledo сформировал из выражений. Если шаблон изменился, в модуле нужно обновить поля; иначе новые переменные не появятся, а удаленные могут остаться в старой конфигурации.

Сопоставление выполняется между выходами предыдущих модулей и полями шаблона. Одиночные значения перетаскиваются напрямую, а массивы обычно проходят через агрегатор. Для счета из Shopify это означает передачу данных заказа в поля шапки и массива позиций в повторяемую таблицу. Полезно дать модулю тестовый пакет, содержащий необязательное поле, несколько строк и изображение.

Результатом модуля является PDF и имя файла. Следующий модуль может сохранить файл в облачное хранилище, отправить письмом или передать дальше. Имя, вычисленное шаблоном, следует использовать без повторной сборки, чтобы номер внутри документа совпадал с именем. Если в письме нужен номер без расширения, его можно отделить функциями Make.


Для устойчивости сценария нужно обработать ошибки: отсутствие обязательного значения, недоступное изображение, превышение квоты и временный сбой. В Make на ветке ошибки можно записать идентификатор заказа, уведомить ответственного и не помечать запись как завершенную. Повторный запуск должен быть идемпотентным: он не должен создавать несколько счетов с разными номерами, если первый файл уже сформирован.
Передача динамических изображений через Make
В шаблоне создают Dynamic Image и задают имя поля, например image_url. После сохранения и обновления модуля Make это поле появляется в списке. В него передают прямой адрес изображения из предыдущего шага. Ширину или высоту лучше ограничить в шаблоне, потому что внешняя система может отдавать файлы разного размера.

Если предыдущий модуль возвращает бинарный файл, а компонент настроен на адрес, типы не совпадут. Нужно либо получить прямую ссылку, либо выбрать режим передачи данных изображения. При отладке следует смотреть не только на значение, но и на срок действия ссылки: временный адрес может истечь до обработки очереди.
Работа с monday.com
Eledo добавляется в доску monday.com и может открываться как представление. Шаблон связывают с конкретной доской, после чего импортируют структуру ее колонок. Импорт заполняет список доступных полей и дает построителю выражений понятные подсказки. После изменения колонок импорт нужно повторить, иначе шаблон продолжит работать со старой схемой.

Стандартные свойства доски доступны отдельно, а данные элемента находятся в объекте item. Пользовательские колонки представлены техническими именами. Подэлементы преобразуются в массив item.subitems и печатаются через повторяемый блок. Файловая колонка также становится массивом, потому что может содержать несколько вложений.
Для запуска используют рецепт интеграции или действие автоматизации. В нем задают событие, шаблон и место результата. Событием может быть нажатие кнопки, изменение статуса или периодический запуск. PDF обычно прикрепляется к файловой колонке элемента, но некоторые рецепты работают с группой или несколькими подходящими элементами и могут отправить результат на webhook.
Кнопочный запуск удобен на этапе внедрения, потому что пользователь сам подтверждает готовность данных. Триггер по статусу подходит для стабильного процесса: перевод карточки в состояние утверждено формирует документ. Нужно исключить повторное срабатывание при последующих изменениях или хранить признак уже созданного файла, иначе лимит расходуется на дубликаты.
Несколько элементов и подэлементы
При передаче одного или нескольких элементов Eledo использует item для первого элемента и items для полного списка. Отчет по группе строится на items: строка таблицы повторяется для каждого объекта. Шаблон, рассчитанный только на item, покажет лишь первую запись даже при запуске рецепта для нескольких элементов.
Подэлементы текущей карточки печатаются из item.subitems. Внутри повторения поля подэлемента указываются без префикса item.subitems, потому что контекст уже переключен на текущую запись. Аналогично работают вложения: внешний блок перебирает массив файлов, а внутреннее изображение берет public_url текущего файла.
Связанные доски и зеркальные колонки требуют особенно внимательного сопоставления. Значение, отображаемое в интерфейсе monday.com, может быть объектом или массивом, а не простой строкой. Перед версткой полезно импортировать структуру и сделать минимальный вывод одного поля. Если подсказка показывает вложенный путь, нужно пройти все уровни, а не использовать название колонки как готовую строку.
REST API для программной генерации
Для собственной системы Eledo предоставляет REST API с аутентификацией ключом в HTTP-заголовке. Основной запрос генерации отправляется методом POST и содержит идентификатор шаблона, при необходимости номер его версии и объект входных данных. Успешный ответ возвращает бинарный поток PDF с типом application/pdf и именем в Content-Disposition. При ошибке приходит JSON со списком сообщений.
Клиент должен проверять HTTP-статус и Content-Type до сохранения файла. Если ошибочный JSON записать как PDF, пользователь получит поврежденный документ без понятной причины. На стороне приложения полезно хранить идентификатор бизнес-операции, идентификатор шаблона, время запроса и краткое сообщение ошибки, не записывая чувствительное содержимое целиком.
Версию шаблона указывают, когда процесс должен воспроизводить конкретный утвержденный макет. Если параметр не задан, используется доступная версия по правилам сервиса. Для договоров, регламентированных отчетов и повторных выпусков для хранения фиксация версии снижает риск получить другой вид после редактирования шаблона. Для обычных писем можно использовать обновляемый макет.
Отдельные методы позволяют создать временный файл, скачать его, получить список и схему. Выбор между прямым бинарным ответом и двухэтапной схемой зависит от процесса. Прямой ответ проще для синхронной генерации небольшого документа. Временный файл удобен, когда создание и загрузка разделены или ссылку нужно передать другому компоненту. После скачивания временный объект может удаляться, поэтому повторное обращение следует обрабатывать.
Для высокой нагрузки нужны ограничение параллелизма, повтор с задержкой и защита от двойной выдачи номера. Повторять стоит только временные сетевые и серверные ошибки, но не ошибку формулы или отсутствующего поля. В последнем случае одинаковый запрос снова завершится неудачей и лишь израсходует время. Категорию ошибки определяют по статусу и сообщениям ответа.
Журнал генераций и диагностика
Eledo записывает события создания PDF. В списке видны дата и время, шаблон, количество страниц, система запуска и длительность. Строки без выделения означают нормальную обработку, желтые содержат предупреждение, красные — ошибку. Открытие события показывает подробности, необходимые для поиска проблемы. Содержимое транзакционных данных в журнал не записывается.

Если документ не появился в monday.com, сначала проверяют журнал Eledo. Наличие записи означает, что запрос дошел до сервиса. Красная запись указывает на проблему шаблона, данных или ресурса; желтая может объяснить частично пропущенное содержимое. Если записи нет, переходят к истории запусков автоматизации monday.com: триггер мог не сработать или завершиться до обращения к Eledo.
Когда автоматизация и журнал показывают успех, но файл не виден в колонке, следует полностью обновить страницу доски. Иногда интерфейс не сразу отражает вложение. Также возможна задержка из-за очередей и загрузки внешних ресурсов. Время выполнения в журнале помогает отличить обычную задержку от зависшего сценария.
Ошибки выражений удобно локализовать методом упрощения. Сохраняют копию шаблона, временно заменяют сложную формулу простым полем или постоянным текстом и повторяют тест. Затем возвращают части формулы по одной. Для массива сначала проверяют само количество элементов, затем одно поле текущего элемента, после чего добавляют вычисления. Такой подход быстрее случайного изменения нескольких компонентов.
Типовые причины неудачной генерации
- Поле переименовано во внешней системе, но структура шаблона не импортирована заново.
- Модуль Make хранит старую схему после добавления или удаления переменной.
- Повторение применено к ячейке, хотя массив должен создавать целые строки.
- Выражение ожидает число или дату, а получает произвольный текст.
- Динамическое изображение ссылается на страницу просмотра или закрытый файл.
- Условие выбрано на неверном уровне и оставляет пустой контейнер.
- Рецепт monday.com запускается не для тех элементов или не достиг нужного статуса.
- Квота документов исчерпана либо использована лишними повторными запусками.
После исправления важно повторить исходный набор данных, а не только упрощенный пример. Ошибка может зависеть от конкретной строки, длины массива или вложения. Для производственного шаблона полезен небольшой набор регрессионных тестов: пустой документ, минимальный, типичный, максимальный и набор с национальными символами.
Защита документа и работа с чувствительными данными
В настройках доступны средства защиты PDF паролем. Пароль не следует встраивать в шаблон постоянным текстом для всех клиентов. Его передают из контролируемого процесса или формируют по согласованному правилу, а канал доставки пароля отделяют от канала доставки файла. После защиты нужно проверить, что документ открывается в целевых программах и ограничения соответствуют ожиданиям.
Сервис заявляет, что динамические данные и сформированные PDF не хранятся постоянно; временные транзакционные данные сохраняются до скачивания файла. Тем не менее шаблоны, профиль и параметры аккаунта находятся в системе, а внешние интеграции передают данные через сеть. Организация должна определить допустимые категории информации, сроки, права доступа и необходимость договора об обработке данных.
API-ключи, пароли и адреса временных файлов относятся к секретам. Их хранят в менеджере секретов или защищенных настройках автоматизации, а не в тексте шаблона. Сотрудникам дают доступ по роли, регулярно проверяют активные соединения и меняют ключ при увольнении ответственного или подозрении на утечку. Снимки экрана для инструкций должны содержать замаскированные значения.
Для проверки конфиденциального процесса лучше использовать синтетические данные. Реальные персональные сведения не нужны, чтобы проверить перенос строк, условия и таблицы. После настройки проводят отдельный контролируемый тест с разрешенным набором, убеждаются, что журналы и уведомления не раскрывают содержание, и только затем подключают рабочий поток.
Лимиты документов, шаблонов и качества изображений
Бесплатный режим ограничен 100 документами в месяц, тремя шаблонами и обработкой изображений до 200 dpi. Платные уровни увеличивают месячную квоту до 200, 600 или 1800 документов, количество шаблонов до 6, 9 или 27, а старшие уровни поддерживают 300 dpi. Для объемов от 5000 документов предусмотрены индивидуальные условия. Эти ограничения нужно учитывать до запуска массовой рассылки.
Квота расходуется на генерации, поэтому тесты и дубликаты имеют реальную стоимость. На этапе разработки лучше использовать отдельный тестовый шаблон и минимальный набор документов. В monday.com следует тщательно выбирать рецепт, чтобы изменение несвязанной колонки не создавало новый PDF. В API повторный запрос после тайм-аута должен проверять, не был ли файл уже успешно сформирован.
Ограничение числа шаблонов влияет на архитектуру. Необязательно создавать отдельный макет для каждого клиента, если различия можно выразить данными, условными блоками и профилем. Но чрезмерно универсальный шаблон с десятками условий становится сложным для поддержки. Разумный баланс — один шаблон на устойчивый тип документа и варианты внутри него только там, где структура действительно общая.
Разрешение изображений определяет качество фотографий и сканов, но не влияет на векторный текст и штрихкоды. Для обычного экранного просмотра 200 dpi часто достаточно, а мелкие схемы и печать могут потребовать 300 dpi. Увеличение исходного файла сверх лимита не дает дополнительной детализации после обработки, но повышает время загрузки. Лучше готовить изображение близкого к нужному размеру.
Практический сценарий: счет или коммерческое предложение
Шаблон счета включает реквизиты продавца, данные покупателя, номер, дату, таблицу позиций, налоги, итог и условия оплаты. Данные покупателя передаются одиночными полями, позиции — массивом. Строка массива выводит описание, количество, цену и сумму. Итог вычисляется из массива либо приходит из учетной системы. Блок скидки скрывается, когда значение равно нулю.
Номер и имя файла должны использовать одну переменную, чтобы исключить расхождение. QR-код может содержать платежные данные или ссылку на оплату. Логотип размещают как постоянное или динамическое изображение. Для длинного описания проверяют перенос внутри строки, а заголовок таблицы настраивают для повторения на следующей странице.
В Make триггером становится новый оплаченный заказ или утвержденное предложение. Данные заказа сопоставляются с полями, PDF сохраняется в хранилище и прикрепляется к письму. До отправки можно добавить фильтр, запрещающий выпуск при отсутствии адреса или налогового номера. После успешного шага внешняя система получает отметку и адрес файла.
Для исправленного счета не следует просто запускать тот же сценарий без изменения номера и статуса. Процесс должен различать повторную доставку уже созданного файла и выпуск новой корректировки. Это правило находится за пределами верстки, но шаблон должен иметь поля для типа документа, ссылки на исходный счет и причины изменения.
Практический сценарий: договор и приложение
Договор обычно содержит больше условных разделов, чем счет. Тип клиента определяет формулировки, способ оплаты — соответствующий пункт, а перечень услуг формирует приложение. Небольшие различия удобно реализовать IF внутри текста; крупные разделы лучше разделять блоками с условиями. Постоянные юридические формулировки не должны собираться из слишком многих фрагментов, иначе проверка становится затруднительной.
Данные сторон следует разделить на четкие объекты, чтобы не смешивать адрес заказчика и исполнителя. Для подписей можно добавить интерактивные поля или вывести изображения, если процесс электронной подписи уже обеспечивает их законность. Само наличие графического изображения подписи не делает документ юридически подписанным; это определяется выбранной системой и регламентом.
Приложение с услугами строится повторением массива. Если услуги сгруппированы по этапам, применяют вложенные повторения. Условия скрывают пустые этапы. Колонтитул с номером договора помещают на фон, чтобы он повторялся на каждой странице. Перед утверждением сравнивают PDF с контрольным текстом и проверяют, что скрытые блоки не оставили двойные пробелы или нарушенную нумерацию пунктов.
Практический сценарий: отчеты из monday.com
Отчет по доске может включать несколько элементов в одном PDF. Рецепт передает список в items, а таблица повторяет строку по этому массиву. Поля item относятся только к первому элементу и не подходят для полного отчета. Заголовок документа может использовать данные доски, а строки — имя элемента, статус, владельца, дату обновления и пользовательские колонки.
Подэлементы печатаются отдельной вложенной таблицей. Если нужны только завершенные записи, массив фильтруют по статусу. Вложения-изображения размещают в повторяемом блоке файлов. Для большого отчета важно ограничивать размеры изображений, иначе каждая строка может занять отдельную страницу и заметно увеличить файл.
Запуск по расписанию подходит для еженедельного отчета, а кнопка — для выборочного документа. Периодический рецепт должен иметь четкий фильтр, иначе в отчет попадут старые или незавершенные элементы. При создании одного PDF для группы нужно выбрать рецепт, который явно работает с multiple items; обычный рецепт для карточки передаст только один объект.
Практический сценарий: сертификаты, пропуска и этикетки
Сертификат использует фиксированный дизайн и несколько переменных: имя, название курса, дата, идентификатор и подпись. QR-код может вести на страницу проверки. Для имен с разной длиной следует выбрать шрифт и область, которые выдерживают короткую и очень длинную строку. Уменьшать размер шрифта выражением сложнее, чем заранее предусмотреть достаточную ширину.
Пропуска и карточки часто печатаются несколько на странице. Макет строят таблицей или повторяемыми контейнерами заданного размера. Фотография ограничивается по ширине и высоте, а штрихкод проверяется сканером после печати. Поля страницы уменьшают с учетом возможностей принтера. Если нужна резка, добавляют метки на фон.
Для транспортных этикеток важно точное соответствие размеру носителя. Перед массовой печатью создают PDF с реальными габаритами, отключают масштабирование в диалоге принтера и измеряют результат. Браузер или программа просмотра могут по умолчанию включать вписать в страницу, из-за чего штрихкод и поля смещаются. Инструкция оператору должна явно указывать печать в масштабе 100 процентов.
Проверка шаблона перед включением автоматизации
Контрольный набор должен покрывать структуру, а не только один удачный документ. Минимальный тест использует пустые необязательные поля и массив без элементов. Типичный содержит реальные длины. Максимальный включает много строк, длинные названия, крупные суммы, изображения разных пропорций и национальные символы. Отдельно проверяют отрицательные значения, ноль и даты на границе месяца и года.
- Создать PDF из ручной формы и убедиться, что все ожидаемые поля появились.
- Сравнить номер внутри документа с именем файла и записью во внешней системе.
- Проверить перенос многострочного текста, таблицы на несколько страниц и повтор заголовка.
- Открыть документ в двух распространенных программах и распечатать контрольную страницу.
- Сканировать каждый тип штрихкода и QR-кода с бумажного экземпляра.
- Проверить истинные и ложные варианты каждого условного блока.
- Создать документ с нулем, одним и многими элементами массива.
- Проверить недоступное изображение и убедиться, что ошибка корректно обрабатывается.
- Обновить схему полей в Make или импорт monday.com после последнего изменения шаблона.
- Убедиться, что повторный запуск не выдает новый номер и не создает нежелательный дубликат.
После приемки шаблон полезно заморозить организационно: назначить владельца, описать входные поля и хранить контрольный PDF. Изменения выполняют в копии или после сохранения версии, затем прогоняют тот же набор тестов. Внешний вид документа — лишь одна часть приемки; не менее важны имя файла, маршрут доставки, права доступа и поведение при ошибке.
Ограничения, которые важно учитывать
Eledo формирует PDF, поэтому процесс, требующий редактируемый DOCX, презентацию или таблицу на выходе, лучше строить на другом генераторе. PDF удобен для фиксированного представления, печати и отправки, но не заменяет рабочий документ, который получатель должен активно переписывать. Интерактивные поля решают сбор ограниченных ответов, а не полноценное редактирование макета.
Интерфейс и документация ориентированы на английский язык. Русский текст в самом шаблоне печатается, но сотрудникам придется освоить английские названия команд и терминов. Для команды без такого опыта стоит подготовить внутреннюю инструкцию с принятыми именами полей, примерами выражений и порядком проверки журнала.
Работа зависит от подключения к интернету и доступности внешних систем. Если изображение хранится по временной ссылке, доска недоступна или очередь интеграции задержана, документ не появится мгновенно. Критичные процессы должны иметь мониторинг, повтор для временных сбоев и ручной резервный порядок. Ожидание полностью автономной печати без связи с сервисом не соответствует рабочей схеме.
Редактор дает гибкость HTML, CSS и выражений, но сложный шаблон требует технической дисциплины. Пользователь, который ожидает только перетаскивать поля мышью, столкнется с контекстами массивов, типами данных и формулами. Простые документы доступны без программирования, а вложенные таблицы, группировка и API уже требуют понимания структуры данных.
Профильные переменные и повторно используемые реквизиты
Значения, которые встречаются во многих шаблонах, можно вынести в профиль. К ним относятся название организации, адрес, телефон, банковские реквизиты, постоянный префикс номера и другие данные владельца аккаунта. В выражении профильная переменная отличается от обычного входного поля, поэтому ее не требуется передавать при каждой генерации. Такой подход сокращает сопоставление в интеграции и уменьшает риск, что один сценарий отправит устаревший адрес, а другой — новый.
Команда Add missing to profile помогает обнаружить профильные переменные, использованные в шаблоне, но еще не созданные в аккаунте. После добавления их нужно заполнить и сохранить. Перед изменением общего реквизита следует понимать масштаб: новое значение повлияет на все шаблоны, которые обращаются к этой переменной. Для документов, которые должны сохранять исторические реквизиты конкретной операции, значение лучше передавать вместе с данными, а не читать из текущего профиля.
Счетчики тоже относятся к профилю и увеличиваются при использовании. Они удобны для внутренних последовательностей, но тестовый запуск может сдвинуть номер. Поэтому перед приемкой нумерации следует решить, допускаются ли пропуски, что происходит при ошибке после увеличения счетчика и как обрабатывается повторное создание. Если требования строгие, номер резервирует учетная система до обращения к Eledo, а шаблон только форматирует его.
Локализация одного шаблона для разных языков
Eledo поддерживает локализованный вывод дат, чисел и валют, а текст шаблона можно строить из условных блоков или передаваемых строк. Для двух близких языковых вариантов допустимо хранить общую сетку и переключать подписи по полю Language. При большом количестве текста отдельные шаблоны обычно понятнее: переводчик видит цельный документ, а дизайнеру не приходится сопровождать десятки параллельных условий в каждом абзаце.
Числовой формат и язык текста нужно тестировать совместно. Одинаковое значение может требовать другой десятичный разделитель, порядок даты, обозначение валюты и форму множественного числа. Нельзя ограничиваться заменой заголовков. В счете проверяют строки позиций, итоги, налог, дату оплаты и имя файла. В договоре — склонения, порядок имени и адреса, а также длину переведенных формулировок, которая влияет на перенос страниц.
Шрифты должны содержать все символы нужных алфавитов. Если выбранный шрифт не покрывает отдельные знаки, движок может подставить другой шрифт или показать пустой квадрат. Контрольный набор должен включать кириллицу, диакритические знаки, специальные валютные символы и реальные фамилии. Для PDF-форм дополнительно проверяют, как введенный получателем текст отображается после сохранения.
Webhook и маршрутизация результата
Некоторые рецепты monday.com могут отправлять созданный документ или событие на webhook. Такой вариант нужен, когда файл после генерации должен пройти нестандартный маршрут: попасть в долговременное хранилище, систему согласования, электронную подпись или специализированное хранилище. Принимающая сторона должна проверять подпись или секретный параметр, ограничивать размер запроса и возвращать понятный статус, чтобы автоматизация отличала успешную доставку от временного сбоя.
Маршрут следует проектировать так, чтобы потеря одного шага не требовала заново выпускать документ. Если PDF уже создан, но загрузка в хранилище не удалась, лучше повторить доставку того же файла или операции, сохранив исходный номер. Для этого внешняя система хранит состояние по идентификатору заказа и не считает отсутствие конечной ссылки доказательством того, что генерация не происходила.
При отправке по электронной почте важно разделить подготовку документа и коммуникацию. Eledo формирует файл и имя, а почтовый модуль отвечает за адресата, тему, текст и вложение. Ошибка адреса не должна создавать новый счет при повторе. Сценарий повторяет только почтовый шаг либо берет ранее созданный файл. Для чувствительных документов можно отправлять защищенный PDF, а пароль сообщать другим каналом.
Производительность и большие документы
Время генерации зависит не только от числа страниц. Задержку увеличивают внешние изображения, сложные вложенные повторения, большие массивы и ресурсы из связанных досок. Журнал показывает длительность, поэтому после изменения шаблона можно сравнить контрольные запуски. Если время резко выросло, сначала проверяют недавно добавленные изображения и повторения, затем объем входных данных и доступность подключенных систем.
Большой массив лучше фильтровать до передачи, когда часть записей заведомо не нужна. Это уменьшает размер запроса и работу шаблона. Но бизнес-правило фильтрации должно находиться в одном понятном месте. Если Make отбрасывает записи по одному условию, а Eledo дополнительно применяет другое, результат трудно объяснить. Для прозрачности внешняя система выбирает набор, а шаблон отвечает за представление и локальные условия видимости.
Изображения следует уменьшать до разумного разрешения до отправки. Фотография в несколько десятков мегапикселей не станет детальнее в ячейке шириной несколько сантиметров, но потребует больше времени на передачу и обработку. Векторные логотипы и штрихкоды экономят размер. Для отчетов с десятками фотографий полезно сделать отдельную компактную версию или приложение, чтобы основной документ оставался удобным для просмотра.
Для пакетного выпуска запускают небольшую пробную партию и измеряют среднее и максимальное время. Затем ограничивают параллельность в Make или собственном клиенте, чтобы не создавать очередь из сотен тяжелых запросов. При росте объема проверяют месячную квоту и условия индивидуального плана заранее, а не после остановки процесса. Журнал и метрики внешней системы должны показывать число успешных, повторных и ошибочных операций.
Доступность, печать и долговременное хранение
Визуально аккуратный PDF не всегда удобен для всех получателей. Следует использовать достаточный контраст, читаемый размер шрифта, осмысленный порядок блоков и понятные подписи полей. Если документ предназначен для заполнения, область ввода не должна быть слишком узкой, а флажки должны иметь текстовые пояснения. Eledo позволяет оформить структуру, но качество доступности зависит от решений автора шаблона.
Перед печатью проверяют размер страницы, ориентацию, поля и отсутствие автоматического масштабирования. Документ формата A4, напечатанный на Letter с режимом вписывания, изменит размеры этикеток и положение элементов формы. Для типографии нужно уточнить требования к вылетам, цветам и шрифтам. Редактор позволяет убрать поля и заполнить страницу, но возможность печати до края зависит от оборудования.
Для долговременного хранения важно сохранять не только PDF, но и связь с данными и шаблоном, по которому он создан. Минимальный набор метаданных включает номер документа, дату, идентификатор операции и версию шаблона. Если документ потребуется воспроизвести через несколько лет, текущий шаблон мог измениться. Фиксация версии в API и сохранение окончательного PDF уменьшают зависимость от последующих правок.
Сравнение Eledo с аналогами
| Программа | Лучше подходит для | Главное ограничение |
|---|---|---|
| Eledo | Автоматической генерации и заполнения PDF по данным, особенно в monday.com и Make | Выходной формат ограничен PDF |
| PDF Commander | Ручного редактирования, объединения, конвертации и подготовки отдельных PDF | Не предназначен для массового слияния данных по API |
| PDF Generator API | Встраиваемого редактора шаблонов и генерации PDF из JSON в приложениях | Основной сценарий требует интеграции через API |
| Docupilot | Автоматизации документов разных офисных форматов с условиями и циклами | Сложные потоки требуют настройки сопоставления и доставки |
| Docmosis | Генерации PDF и DOCX из офисных шаблонов, включая облачное и самостоятельное размещение | Шаблоны зависят от синтаксиса и офисной верстки |
| Formstack Documents | Корпоративной маршрутизации данных, CRM-документов и объединения нескольких файлов | Избыточен для простого одиночного шаблона |
Eledo стоит выбирать, когда итогом должен быть PDF, шаблон удобно оформлять непосредственно в редакторе, а данные приходят из monday.com, Make, Zapier или собственного API. PDF Commander полезнее для разовой ручной правки уже существующего файла. PDF Generator API ориентирован на разработчиков и встраивание редактора. Docupilot и Docmosis лучше подходят, когда кроме PDF нужен редактируемый офисный формат. Formstack Documents уместен в крупном процессе с маршрутизацией, CRM и несколькими выходными документами.
Частые вопросы о работе с Eledo
Можно ли сделать документ без подключения CRM?
Да. Шаблон автоматически получает форму ввода для найденных полей. Через нее можно вручную передать значения и сформировать PDF. Это удобный способ протестировать макет или выпускать небольшое количество документов. Для массивов и сложных вложенных данных практичнее использовать Make либо API, потому что ручной ввод списка менее удобен.
Можно ли использовать готовый PDF-бланк?
Да. Формы AcroForm и XFA можно загрузить и заполнять данными. Если в обычном PDF нет полей, их добавляют поверх страницы в редакторе. После генерации форму оставляют редактируемой или сплющивают. Совместимость XFA с программой получателя необходимо проверить отдельно.
Как вывести несколько строк заказа?
Создается таблица с заголовком и одной образцовой строкой. Курсор помещают в строку, включают Block Repetition и выбирают родительский элемент TR. Выражением повторения указывают массив позиций. Внутри строки текстовые компоненты используют поля текущей позиции, а итоговая сумма размещается после повторяемого блока.
Почему новая переменная не появилась в Make?
Сначала сохраните шаблон, затем обновите поля выбранного шаблона в модуле Make. Модуль хранит ранее загруженную схему и не всегда получает изменения автоматически. Если поле остается невидимым, проверьте, что выражение действительно создает входную переменную, а не вычисляет значение только из уже существующих полей.
Почему колонка monday.com не находится по названию?
В выражениях используются технические имена колонок, а не обязательно видимые подписи. Откройте Input Fields, выберите подключение и доску, выполните Import. После этого построитель выражений покажет доступные колонки. Импорт нужно повторять после изменения структуры доски.
Как распечатать все вложенные фотографии?
Файловая колонка передается как массив. Создайте повторяемый блок по массиву вложений и поместите в него Dynamic Image с полем публичного адреса текущего файла. Ограничьте размер изображения. Если нужно вывести имя файла, добавьте рядом Text Box с соответствующим полем того же элемента.
Можно ли скрыть пустой раздел?
Да. Выберите контейнер раздела и примените Block Condition. Простое имя поля истинно, когда значение заполнено; массив истинен, когда не пуст. Для сложной проверки используйте сравнение или логическую функцию. Убедитесь, что условие установлено на весь абзац, строку или группу, а не только на переменное значение.
Как сделать нумерацию файлов с ведущими нулями?
В настройках имени файла используйте числовое поле или счетчик и функцию NUM с нужным количеством цифр. Добавьте постоянный префикс через CONCAT. То же выражение или та же переменная должны использоваться внутри документа. Исключите запрещенные символы и предусмотрите поведение при пустом номере.
Как добавить номер страницы?
Создайте фоновый документ, разместите подвал и вставьте переменные текущей страницы и общего числа страниц. Фон повторяется под основным содержимым. Проверьте многостраничный PDF, чтобы текст не пересекался с подвалом, и согласуйте внутренние отступы основного документа с высотой фонового блока.
Почему PDF не появился в monday.com?
Сначала откройте Logs в Eledo. Если запись есть, прочитайте предупреждение или ошибку. Если записи нет, проверьте Run history автоматизации monday.com. При успешных записях в обеих системах полностью обновите страницу доски: вложение могло быть создано, но еще не показано интерфейсом.
Можно ли передать картинку прямо из Make?
Да. Компонент Dynamic Image может принимать адрес или данные изображения, в зависимости от выбранного типа. После сохранения шаблона обновите схему модуля Make и сопоставьте поле. Убедитесь, что адрес доступен серверу и не истечет до выполнения сценария, либо передавайте бинарные данные в соответствующем режиме.
Подходит ли Eledo для массовой печати?
Подходит, если квота, скорость внешних интеграций и качество шаблона соответствуют объему. Перед запуском проверяют пакет на ограниченной выборке, настраивают идемпотентность, журналирование и повтор временных ошибок. Квота считается по созданным документам, поэтому дублирующие триггеры и бесконтрольные повторы необходимо исключить.
Можно ли получить DOCX вместо PDF?
Нет, основной результат — PDF. Если получателю требуется редактируемый Word-файл, следует выбрать генератор с поддержкой DOCX или перестроить процесс так, чтобы редактирование выполнялось до передачи данных в Eledo. Интерактивные поля PDF подходят для ограниченного ввода, но не заменяют свободное редактирование документа.
Как проверить, что шаблон не сломается на длинных данных?
Используйте граничный набор: длинные имена, многострочные описания, максимальное число позиций, крупные суммы и изображения необычных пропорций. Создайте многостраничный PDF, проверьте повтор заголовка таблицы, колонтитулы, разрывы строк и размер файла. Затем распечатайте наиболее плотную страницу в масштабе 100 процентов.
Итоговый порядок внедрения
Надежное внедрение Eledo начинается с утвержденной структуры данных и контрольного образца PDF. Затем создается простой шаблон, добавляются типизированные поля, повторения и условия, настраиваются изображения и фон. Макет проходит ручные тесты, после чего подключается одна внешняя система. Только когда одиночная генерация стабильна, включается автоматический триггер и маршрут доставки.
Поддержка процесса строится вокруг версий шаблона, журнала событий и тестового набора. Любое изменение выражения, структуры таблицы или схемы monday.com проверяется на тех же граничных примерах. Ключи и пароли хранятся отдельно, квота контролируется, повторные запуски не создают дубликаты. При таком подходе Eledo снимает ручное копирование данных и сохраняет предсказуемый вид документов даже при сложных массивах, условиях и многостраничной верстке.