Конвертер
Last updated
Last updated
Используется для конвертации данных и файлов. Подразумевается два варианта использования: генерация документа на основе пользовательского шаблона, и преобразование данных из одного типа в другой, варианты конвертации и примеры использования описаны ниже.
Вариант конвертации
Список вариантов для конвертации.
HTML
→ PDF
: Генерация PDF буфера, принимает в качестве входных переменных HTML файл из записи, ссылку на файл или произвольную HTML разметку. Вывод компонента может содержать как сам PDF-файл, так и его буфер.
Excel
→ JSON
: Генерация JSON объекта из Excel-таблицы. JSON будет записан в переменную.
XML
→ JSON
:
Генерация JSON объекта из файла с XML-разметкой. JSON будет записан в переменную.
Источник
В качестве источника данных могут быть выбраны следующие:
Файл из записи
URL к файлу
Содержимое
Файл из записи Принимает значение из поля типа «Файл» в записи Бипиума. Указанный файл будет сконвертирован.
Каталог Список доступных каталогов для поиска записей. Формат: список каталогов.
ID записи Идентификатор записи, в которой находится файл для конвертации.
Формат: значение/выражение.
Поле Идентификатор поля записи, в которой находится файл для конвертации.
URL к файлу URL к файлу, который находится в открытом для системы доступе. Если вариант подразумевает использование шаблона, по ссылке должен находится он.
Содержимое Поле для ввода содержимого к конвертации. В поле может храниться произвольная HTML-разметка (для варианта конвертации HTML -> PDF) или буферные данные, на основе которых будет производиться конвертация.
Формат данных в поле – строка. Данные могут храниться в произвольных кавычках. Для использования переменных сценария в качестве встраиваемых значений используйте одинарные обратные кавычки «`». Пример заполнения поля HTML-разметки представлен ниже:
Данные можно вводить в формате «Ключ = значение» или в виде JSON-объекта.
Секция появляется только в том случае, если выбранный вариант конвертации поддерживает формат работы с параметрами.
В зависимости от варианта конвертации, поддерживаются следующие параметры:
Позволяет выбрать способ передачи параметров конвертации. Возможные значения: Ключ = значение, JSON-объект.
Формат «ключ = значение» Параметры передаются в виде Наименование параметра = Значение параметра
Формат «JSON — объект» Параметры передаются в виде JSON-объекта.
В отличие от формата «Ключ-значение» этот формат может принимать в качестве ключа атрибута значение переменной:
Формат возврата готового файла.
Сохранить как Позволяет получить результат в одном из 3х вариантов:
Файл в запись
Cохраняет результат в поле типа Файл в указанной записи
Каталог Список доступных каталогов для поиска записей. Формат: список каталогов.
ID записи Идентификатор записи, которую надо изменить. Формат: значение/выражение.
Поле Идентификатор поля, в которое надо сохранить файл. Формат: значение/выражение.
Имя файла Имя под которым будет файл будет сохранен в файловом хранилище. Формат: значение/выражение.
Сохранить URL файла в Имя переменной куда будет записана ссылка на файл. Формат: имя переменной.
URL в переменную
Имя файла Название под которым будет сохранен файл. Формат: значение/выражение
Сохранить URL файла в Выходной параметр. Переменная, в которую будет сохранен URL файла в файловом хранилище. Формат: имя переменной.
Содержимое в переменную
Сохранить содержимое в
Имя переменной куда будет записан результат работы компонента. Например, конвертер Excel->JSON может как записать результат в файл, так и сохранить его в переменную для дальнейшего использования в сценарии.
Для конвертации Excel -> JSON результатом будет объект, ключи которого - наименование листа Excel, значения - массив с полями листа.
Результат конвертации XML -> JSON.
Компонент поддерживает 2 типа пограничных событий:
Ошибка — выход из компонента, если произошла какая-либо ошибка
Таймаут — выход из компонента, спустя заданное ограничение по времени
Если компонент завершился с ошибкой, но на нем не было пограничного события, то процесс завершается. Сообщение ошибки возвращается в результатах процесса.
Параметр | Тип | Описание | По умолчанию |
---|---|---|---|
Параметр | Описание | По умолчанию |
---|---|---|
Width
string |
number
Устанавливает ширину бумаги. Передается число или строка с единицей измерения.
Height
string |
number
Устанавливает высоту бумаги. Передается число или строка с единицей измерения.
Format
string
Возможные размеры формата:
- Letter: 8,5 х 11 дюймов
- Legal: 8,5 х 14 дюймов
- Tabloid: 11 дюймов х 17 дюймов
- Ledger: 17 дюймов х 11 дюймов
- A0: 33,1 дюйма х 46,8 дюйма
- A1: 23,4 дюйма х 33,1 дюйма
- A2: 16,54 дюйма х 23,4 дюйма
- A3: 11,7 дюйма х 16,54 дюйма
- A4: 8,27 дюйма х 11,7 дюйма
- A5: 5,83 дюйма х 8,27 дюйма
- A6: 4,13 дюйма х 5,83 дюйма
Если передаются параметры Width и(или) Height вместе с параметром Format, то будет применен размер страницы, указанный в параметре Format.
'A4'
Margin
string | object
Для указания индивидуальных отступов необходимо передать объект со значениями полей. Например:
{
top: '1cm',
left: '2cm',
right: '0.5cm',
bottom: '1cm'
}
'1cm'
Landscape
boolean
Ориентация бумаги. Установите true для альбомной ориентации страницы.
false
printBackground
boolean
Установите false, если не нужно печатать фоновую графику (background).
true
Scale
number
Масштабирует визуализацию веб-страницы. Значение должно быть больше 0.1 и меньше 2.
1
pageRanges
string
Диапазоны бумаги для конвертации. Например, ‘1-5’, ‘8’, ‘11-13’.
Пустая строка - означает, что конвертируются все страницы.
‘ ’
displayHeaderFooter
boolean
Показывать ли верхний и нижний колонтитулы. Установите true для показа колонтитулов.
false
headerTemplate
string
Работа с колонтитулами. Передайте HTML шаблон, со следующими классами, используемыми для ввода в них значений:
- date форматированная дата печати
- title название документа
- url местонахождение документа
- pageNumber текущий номер страницы
- totalPages общее количество страниц в документе
Например, если хотите вывести название документа в колонтитул, необходимо передать html шаблон с классом title: '<p class="title" style="font-size: 7pt; margin-left: 1cm;"></p>'
footerTemplate
string
Работа с колонтитулами. HTML-шаблон для нижнего колонтитула. Использует те же классы, что и headerTemplate.
attrkey
Префикс, используемый для доступа к атрибутам.
$
charkey
Префикс, используемый для доступа к содержимому символа.
_
trim
Обрезать пробелы в начале и конце текстовых узлов.
false
normalizeTags
Перевести все имена тегов в нижний регистр.
false
normalize
Обрезать пробелы внутри текстовых узлов.
false
explicitRoot
Установите это, если вы хотите получить корневой узел в результирующем объекте.
true
emptyTag
Каково будет значение пустых узлов.
“ ”
explicitArray
Всегда помещать дочерние узлы в массив, если это правда; в противном случае массив создается только в том случае, если их больше одного.
true
ignoreAttrs
Игнорировать все атрибуты XML и создавать только текстовые узлы.
false
mergeAttrs
Объединить атрибуты и дочерние элементы в качестве свойств родительского объекта вместо того, чтобы отделять атрибуты от объекта дочернего атрибута. Эта опция игнорируется, если ignoreAttrs = true.
false
validator
Вы можете указать вызываемый объект, который каким-то образом проверяет результирующую структуру, как вы хотите.
null
xmlns
Дайте каждому элементу поле, обычно называемое '$ns' (первый символ совпадает с attrkey), которое содержит его локальное имя и URI пространства имен.
false
explicitChildren
Поместить дочерние элементы в отдельное свойство. Не работает с mergeAttrs = true. Если у элемента нет дочерних элементов, то «дочерние элементы» не будут созданы.
false
childkey
Префикс, который используется для доступа к дочерним элементам, если explicitChildren установлено значение true.
$$
preserveChildrenOrder
Изменяет поведение explicitChildren так, что значение дочерних элементов становится упорядоченным массивом. Когда это равно true, каждый узел также получит #nameполе, значение которого будет соответствовать XML nodeName, так что вы можете перебирать массив дочерних элементов и по-прежнему иметь возможность определять имена узлов. Именованные (и потенциально неупорядоченные) свойства также сохраняются в этой конфигурации на том же уровне, что и упорядоченный дочерний массив.
false
charsAsChildren
Определяет, следует ли считать символы дочерними, если explicitChildren включено.
false
includeWhiteChars
Определяет, следует ли включать текстовые узлы, содержащие только пробелы.
false
attrNameProcessors
Позволяет добавлять функции обработки имени атрибута. Принимает Array функции со следующей сигнатурой:
function (name){
//do something with `name`
return name
}
null
attrValueProcessors
Позволяет добавлять функции обработки значений атрибутов. Принимает Array функции со следующей сигнатурой:
function (value, name){
//do something with `name`
return name
}
null
tagNameProcessors
Позволяет добавлять функции обработки имен тегов. Принимает Array функции со следующей сигнатурой:
function (name){
//do something with `name`
return name
}
null
valueProcessors
Позволяет добавлять функции обработки значений элементов. Принимает Array функции со следующей сигнатурой:
function (value, name){
//do something with `name`
return name
}
null