Бипуим: Документация
8-800-505-24-05Сайт Бипиум
  • 😎Отвечаем на ваши вопросы
  • 🎂Версии и обновления
  • ❗Обновление до версии 2.0
  • Документация
    • 🆕С чего начать
      • Регистрация и вход
      • Создаем каталоги и записи
      • Формируем отчёты
      • Настраиваем правовую политику
      • Применяем автоматизации
    • ⚙️Конструктор данных
      • Отделы
      • Каталоги
        • Редактирование структуры
        • Настройка отображения
        • Поиск и фильтрация
        • Импорт записей
          • 📗Импорт из Excel
        • Экспорт записей
        • Активность
      • Системные каталоги
        • Сотрудники
        • События
        • Внешние запросы
        • Сценарии
        • Процессы
        • Доступ к сервисам
        • Вебхуки
      • Виды
      • Записи
    • 📊Отчеты
      • Графики
    • 🔑Права
      • Правила
      • Привилегии
      • Правовые группы
      • Правовые виды
      • Права на поля
      • Комбинация прав
    • 🤖Автоматизации
      • События
        • Изменение данных
        • Внешние запросы
      • Сценарии
        • Компоненты
          • Начало процесса
          • Конец процесса
          • Таймер
          • Ошибка
          • Шлюз «ИЛИ» (условное ветвление)
          • Шлюз «И» (распараллеливание)
          • Получить запись
          • Найти записи
          • Изменить запись
          • Создать запись
          • Удалить запись
          • Структура каталога
          • Загрузить файл
          • Сгенерировать документ
          • Назначение переменных
          • Код (Javascript)
          • Веб-запрос
          • SQL-запрос
          • Конвертер
          • Парсер
          • Запуск процесса
          • Получение почты
          • Отправка почты
          • Соединяющая линия
          • Отправить сообщение
        • Переменные
        • Выражения
        • Входные и выходные параметры компонентов
        • Примеры настройки
          • Условие
          • Цикл
      • Ограничения
  • Лицензии
    • 🌐Тип лицензирования
  • Примеры
    • 🔑Права доступа к данным
    • 🤖Автоматизации
      • Выгрузка файлов на Яндекс Диск
      • Отправка на больничный
      • Автоматизация оплаты счетов
      • Создание наименований записей
      • Расчет скидок для клиентов
      • Запрет на создание дубликатов в каталоге
      • Автозаполнение данных по ИНН
      • Переброс данных между связанными каталогами
      • Очередь сценариев
      • Отслеживание заявок с сайта помощью UTM-меток
      • Просрочка задач по дедлайну
      • Реализация механизма согласования записей
      • Массовое изменение записей
      • Создание каталога для рассылки почты
      • Перенос данных между системами Бипиума
      • Импорт данных из Excel
      • Генерация счет-фактуры
      • Генерация excel-отчетов
      • Планировщик задач
      • Импорт банковских выписок
      • Производственный календарь
      • Складской учет
  • Интеграции
    • 🥂Методы интеграции
      • Интеграция данных
        • API
        • Вебхуки (webhooks)
      • Интеграция интерфейса
        • Веб-формы
        • Веб-расширения
      • Примеры интеграций
        • Тильда
          • Прием данных с формы Tilda
          • Интеграция веб-интерфейса в Tilda
        • Интеграция с сервисом «DaData»
        • Интеграция c «Единой информационной системой в сфере закупок»
        • Мессенджеры
          • Интеграция с Telegram-ботом
        • Почтовые сервисы
          • UniSender
          • MailChimp
        • Сервисы Google
          • Google Calendar
        • Телефония
          • Oktell
            • Панель телефонии Oktell
            • Компонент Bpium в Oktell
        • 1C
    • 🔌API
      • Данные
        • Каталоги (Catalogs)
        • Записи (Records)
        • Связи (Relations)
        • Истории (Histories)
        • Файлы (Files)
        • Отделы (Sections)
        • Виды (Views)
        • Сообщения (Messages)
      • Агрегация
        • Разложения (Values)
        • Сводка (Totals)
      • Отчеты
        • Дашборды (Boards)
        • Графики (Widgets)
      • Поисковые выборки
        • Доступные связи (AvailableRecords)
        • Доступные условия фильтра (AvailableFilterRecords)
        • Сотрудники (Users)
        • Контакты (Contacts)
      • Права (Rights)
      • Профиль (Profile/me)
  • Установка на сервер
    • 🧱Архитектура
      • Варианты разворачивания
    • 🖥️Требования
    • 📂Установка как служба
    • 🛳️Установка через Docker
    • 🎛️Мультидоменная среда
    • 🆘Материалы
      • TLS/SSL Сертификат
      • Параметры config.env
        • Для Bpium
        • Для Bpium S3
        • Для Bpium BPM
      • Запуск
      • Обсуживание
        • Активация
        • Обновление
        • Бэкап и восстановление базы
        • Брендирование (Whitelabel)
        • Удаление
      • Перенос базы из облака
      • Возможные проблемы в ходе установки и работы
  • Обучение
    • Базовый курс
      • Урок 1. Отделы
      • Урок 2. Каталоги с данными
      • Урок 3. Карточки записей
      • Урок 4. Связи между данными
      • Урок 5. Фильтры и виды
      • Урок 6. Приглашение сотрудников
      • Урок 7. Права доступа к данным
      • Урок 8. Графические отчеты
      • Урок 9. Бизнес-процессы
      • Урок 10. Интеграции
    • Технический курс
      • Урок 1. Принцип работы автоматизаций
      • Урок 2. Первая автоматизация изнутри
      • Урок 3. Валидация данных
      • Урок 4. Простые вычисления
      • Урок 5. Расчет суммы заказа
      • Урок 6. Генерация счетов/документов
      • Урок 7. Рассылка почтовых сообщений
      • Урок 8. Прием внешних данных
      • Урок 9. Отправка данных на сторонние сервисы
    • Паттерны проектирования ИС
      • Унификация
      • Упорядоченность
      • Разделение
      • Актуализация
      • Вынос параметров
      • Выделение позиций
      • Слияние
      • Дублирование
      • Типизация
      • Информирование
Powered by GitBook
On this page
  • Свойства
  • Секция «Источник данных»
  • Секция «Параметры»
  • Секция «Результат»
  • Пограничные события
  1. Документация
  2. Автоматизации
  3. Сценарии
  4. Компоненты

Конвертер

PreviousSQL-запросNextПарсер

Last updated 1 year ago

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

Свойства

Секция «Источник данных»

Вариант конвертации

Список вариантов для конвертации.

  • 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-объекта.

Секция появляется только в том случае, если выбранный вариант конвертации поддерживает формат работы с параметрами.

В зависимости от варианта конвертации, поддерживаются следующие параметры:

HTML → PDF

Параметр
Тип
Описание
По умолчанию

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

XML → JSON

Параметр
Описание
По умолчанию

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

Формат значений

Позволяет выбрать способ передачи параметров конвертации. Возможные значения: Ключ = значение, JSON-объект.

  • Формат «ключ = значение» Параметры передаются в виде Наименование параметра = Значение параметра

  • Формат «JSON — объект» Параметры передаются в виде JSON-объекта.

В отличие от формата «Ключ-значение» этот формат может принимать в качестве ключа атрибута значение переменной:

{
    key1: value1,      // Ключ = значение
    key2: {            // Ключ с вложенным ключом
        key3: value3    
    },
    [key4]: value4     // Переменная в качестве ключа.
}

Секция «Результат»

Формат возврата готового файла.

Сохранить как Позволяет получить результат в одном из 3х вариантов:

  • Файл в запись

Cохраняет результат в поле типа Файл в указанной записи

Каталог Список доступных каталогов для поиска записей. Формат: список каталогов.

ID записи Идентификатор записи, которую надо изменить. Формат: значение/выражение.

Поле Идентификатор поля, в которое надо сохранить файл. Формат: значение/выражение.

Имя файла Имя под которым будет файл будет сохранен в файловом хранилище. Формат: значение/выражение.

Сохранить URL файла в Имя переменной куда будет записана ссылка на файл. Формат: имя переменной.

  • URL в переменную

Имя файла Название под которым будет сохранен файл. Формат: значение/выражение

Сохранить URL файла в Выходной параметр. Переменная, в которую будет сохранен URL файла в файловом хранилище. Формат: имя переменной.

  • Содержимое в переменную

Сохранить содержимое в

Имя переменной куда будет записан результат работы компонента. Например, конвертер Excel->JSON может как записать результат в файл, так и сохранить его в переменную для дальнейшего использования в сценарии.

Для конвертации Excel -> JSON результатом будет объект, ключи которого - наименование листа Excel, значения - массив с полями листа.

{
  Лист1: [
    { 
      A: "ячейка А1", 
      B: "ячейка B1", 
      C: "ячейка C1" 
    },
    { 
      A: "ячейка А2", 
      B: "ячейка B2", 
      C: "ячейка C2"
    },
  ],
  Лист2: [
    { 
      A: "ячейка А1", //ячейка B2 не заполнена
      C: "ячейка C1"
    },
    { 
      A: "ячейка А2", 
      B: "ячейка B2", 
      C: "ячейка C2"
    },
  ],
};

Результат конвертации XML -> JSON.

{
  "CAT": {
    "NAME": "Izzy",
    "BREED": "Siamese",
    "AGE": "6",
    "ALTERED": "yes",
    "DECLAWED": "no",
    "LICENSE": "Izz138bod",
    "OWNER": "Colin Wilcox"
  }
}

Пограничные события

Компонент поддерживает 2 типа пограничных событий:

  • Ошибка — выход из компонента, если произошла какая-либо ошибка

  • Таймаут — выход из компонента, спустя заданное ограничение по времени

Если компонент завершился с ошибкой, но на нем не было пограничного события, то процесс завершается. Сообщение ошибки возвращается в результатах процесса.

Работа с колонтитулами. для нижнего колонтитула. Использует те же классы, что и headerTemplate.

🤖
HTML-шаблон
Сохранение полученных данных в переменную result.