Разобрать CSV по схеме колонок
Робот «Разобрать CSV по схеме колонок» разбирает CSV с кавычками и переносами строк, сохраняя типы и ошибки отдельных записей.

Видимая часть формы настройки в Битрикс24. Скриншот показывает поля действия; он не подтверждает выполнение учебного примера.
Для кого и какую задачу решает
Сотруднику, который получает табличные данные от поставщика, и администратору процесса, преобразующего строки CSV в подготовленный набор записей.
Ошибочная строка не должна незаметно превращать количество в текст. Робот проверяет колонки по явной схеме, возвращает корректные записи отдельно и перечисляет ошибки. Это позволяет отправить проблемные строки на исправление, сохранив понимание, какие данные уже разобраны.
Параметры и подготовка
| Поле | Как заполнить |
|---|---|
Текст CSV (CSV) |
Необязательное поле |
Колонки JSON (COLUMNS) |
Обязательное поле |
Разделитель (DELIMITER) |
Обязательное поле. по умолчанию , |
Первая запись: заголовок (HEADER) |
Обязательное поле. по умолчанию Y. Да (Y); Нет (N) |
Перед настройкой выберите, откуда процесс получит каждое значение: постоянная настройка, поле карточки или результат предыдущего шага. Подписи в таблице соответствуют полям робота. Коды в скобках помогают различать похожие параметры при передаче данных между шагами.
Как использовать
- Вставьте исходный текст CSV. Укажите разделитель: по умолчанию запятая, для файла с точкой с запятой задайте
;. - Опишите колонки массивом объектов с name, type и при необходимости nullable. Порядок имён должен совпасть с порядком CSV.
- Если первая запись содержит заголовок, оставьте
HEADER=Y. Заголовок должен точно совпасть с именами схемы. Для файла без заголовка явно выберитеN. - Проверьте статус, затем «Все записи корректны». При отрицательном признаке используйте список ошибок и не считайте возвращённый набор полной выгрузкой.
Как заполнить JSON-поля
Колонки JSON (COLUMNS)
[
{
"name": "sku",
"type": "string"
},
{
"name": "qty",
"type": "number",
"nullable": true
}
]
От 1 до 50 колонок с уникальным name. type: string/number/integer/boolean, по умолчанию string. nullable логический, по умолчанию false. Имена и порядок должны совпасть с заголовком CSV; [] недопустим.
Это массив: внешние квадратные скобки обязательны. Пустой массив [] отличается от объекта {}; возможность пустого списка определяется правилами этого поля, описанными ниже.
Учебный пример и ожидаемый результат
Колонки: [{"name":"sku","type":"string"},{"name":"qty","type":"number"}]. CSV содержит заголовок sku,qty и следующую строку A,2.5. При разделителе , и HEADER=Y ожидается одна корректная запись с артикулом A и числовым количеством 2.5. Строка B,ошибка будет пропущена и отражена в errorsJson.
Пример показывает подготовленные учебные данные. Фактический результат зависит от переданных значений и доступных данных вашего процесса.
Что возвращает и как продолжить процесс
- «Корректные записи JSON» (
recordsJson). - «Корректных записей» (
count). - «Все записи корректны» (
valid). - «Ошибки записей JSON» (
errorsJson). - «Список ошибок ограничен» (
errorsTruncated).
«Корректных записей» показывает только принятые строки. Содержательный признак корректности выключается, если хотя бы одна запись не прошла проверку. «Список ошибок ограничен» предупреждает о неполном перечне проблем, а не о полном завершении исправлений.
Выход «Статус выполнения» проверяйте перед передачей результата дальше. При отрицательном статусе прочитайте «Пояснение ошибки» и направьте процесс на исправление исходных данных. Успешный статус подтверждает выполнение действия; содержательные признаки результата проверяйте отдельно.
Ограничения и разбор ошибок
Колонки: [{"name":"sku","type":"string"},{"name":"qty","type":"number","nullable":true}]. Типы string, number, integer, boolean; по умолчанию string и nullable=false. Заголовок по умолчанию включен и должен точно совпасть с именами колонок. Пустой CSV дает пустой результат; пустые физические записи пропускаются. Пустая ячейка при nullable=true дает null; числа с точкой, boolean: true/false. До 1 МБ, 1000 записей, 50 колонок, 100000 символов в ячейке, 100 ошибок. Плохая запись пропускается и возвращается в errorsJson; valid=N.
Пустая ячейка превращается в null только при nullable=true. Для boolean используйте true/false. Неверные кавычки могут прервать разбор целиком; исправьте формат CSV в источнике. Робот возвращает данные и не создаёт товары или сделки.