Ручной импорт CSV в 1С-Битрикс — это десяток шагов мастера, которые обидно повторять каждую неделю. Сохранённая конфигурация (профиль импорта) снимает эту рутину: один раз настраиваете сопоставление полей и параметры файла, а дальше запускаете загрузку в один клик или по расписанию.
Зачем сохранять конфигурацию импорта
Импорт CSV в Битрикс — это не одна кнопка, а пошаговый мастер: параметры файла, сопоставление колонок с полями и свойствами инфоблока, правила для отсутствующих товаров, привязка к разделам и ценам. Пройти его один раз несложно, но проблема в том, что при повторной загрузке всё приходится вводить заново.
Сохранённая конфигурация решает три задачи:
- Скорость и предсказуемость — загрузка нового прайса запускается без риска перепутать колонки.
- Автоматизация — профиль можно повесить на агент или cron и обновлять каталог по расписанию.
- Передача знаний — настройка не хранится в голове контент-менеджера, а зафиксирована в системе.
Где в Битрикс живёт импорт CSV и профили
В 1С-Битрикс есть два разных механизма импорта CSV, и сохранение конфигурации у них устроено по-разному.
| Инструмент | Путь в админке | Профили |
|---|---|---|
Импорт в инфоблок (модуль iblock) | Контент → Инфоблоки → Импорт данных (/bitrix/admin/iblock_data_import.php) | Настройки не сохраняются между запусками |
Импорт каталога (модуль catalog) | Магазин → Настройки → Экспорт/Импорт данных → Импорт (/bitrix/admin/cat_import_setup.php) | Настройки сохраняются как профиль |
Ключевой вывод: если вам важно именно сохранить конфигурацию и запускать её повторно, работайте через модуль «Каталог» (catalog) — его мастер импорта CSV умеет хранить параметры и выполняться агентом. Универсальный импорт инфоблока каждый раз просит настроить сопоставление полей заново, и это его известное ограничение.
Что именно сохраняется в профиле
Конфигурация импорта — это не только «файл и кнопка». В профиль записывается всё, что вы задавали в мастере:
- Параметры файла — путь на сервере (например
/upload/import/price.csv), кодировка (обычноwindows-1251илиUTF-8), разделитель полей (;), разделитель строк и символ обрамления значений ("). - Сопоставление полей — какая колонка CSV ложится в «Название», в артикул (
CML2_ARTICLE), в цену, количество, свойства инфоблока. - Привязка к разделам — как определяется раздел каталога: по колонке, по названию, с автосозданием отсутствующих разделов.
- Правила обновления — что делать с товарами, которых нет в новом файле: деактивировать, пропустить или снять с публикации.
- Тип цены и валюта — в какой тип цены (
BASEи др.) писать значения.
Как сохранить конфигурацию: пошагово
Сценарий на модуле «Каталог» выглядит так:
- Откройте Магазин → Настройки → Экспорт/Импорт данных → Импорт данных и выберите формат CSV.
- Укажите файл-источник и задайте параметры разбора: кодировку, разделитель, обрамление, признак «первая строка — заголовки».
- Сопоставьте колонки файла с полями и свойствами инфоблока каталога. Проверьте предпросмотр — Битрикс показывает первые строки в разбивке по полям.
- Задайте правила для разделов, цен и отсутствующих товаров.
- На финальном шаге найдите блок сохранения настроек, укажите имя профиля (например «Прайс поставщика — еженедельно») и сохраните.
После этого профиль появляется в списке настроек импорта, и повторная загрузка сводится к выбору сохранённой конфигурации и нажатию «Импортировать».
CIBlockCSVImport и хранить сопоставление в коде или в настройках модуля. Это уже задача для разработчика.Запуск сохранённого профиля по расписанию
Главная ценность сохранённой конфигурации — возможность выполнять её без участия человека. В Битрикс есть два подхода.
- Агент — штатный планировщик Битрикс. Профиль импорта регистрируется как агент и вызывается на хитах или по крону ядра. Подходит, когда трафик на сайте регулярный.
- Cron — системный планировщик сервера, запускающий
/bitrix/php_interface/cron/-скрипт или собственный файл, который дёргает импорт. Надёжнее для тяжёлых прайсов и предсказуемого времени запуска.
Чтобы автозапуск был честным, убедитесь, что агенты в Битрикс переведены на cron (константа check_agents и вызов /bitrix/modules/main/tools/cron_events.php в расписании). Иначе импорт «по расписанию» будет срабатывать только при заходе посетителей.
max_execution_time и память. Для регулярной загрузки прайсов на тысячи позиций выносите профиль на cron с пошаговой обработкой.Перенос и резервное копирование конфигурации
Настроенный профиль стоит защитить от потери — особенно при переезде между копиями проекта (dev → prod).
- Профили каталога хранятся в базе данных, поэтому при переносе сайта они уезжают вместе с дампом БД. Отдельно экспортировать их не нужно, но после переноса проверьте путь к файлу-источнику — на новом сервере он может отличаться.
- ID инфоблоков и свойств должны совпадать на источнике и приёмнике. Если на проде инфоблок каталога имеет другой ID, сопоставление в профиле «поедет» — сверьте
IBLOCK_IDи коды свойств. - Файл-источник кладите в предсказуемое место (
/upload/import/) и не забывайте про права доступа веб-сервера на чтение.
Для командной работы полезно задокументировать соответствие «колонка CSV → свойство» отдельно: это страховка на случай, если профиль придётся пересоздавать вручную.
Типовые проблемы и как их избежать
Даже с сохранённым профилем импорт ломается по одним и тем же причинам. Держите чек-лист:
| Симптом | Причина | Что проверить |
|---|---|---|
| Кракозябры в названиях | Неверная кодировка | Совпадение кодировки файла и профиля |
| Часть строк «съехала» | Разделитель внутри значения | Обрамление значений кавычками |
| Дубли товаров | Нет ключа сопоставления | Импорт по артикулу CML2_ARTICLE, а не по названию |
| Товары пропали | Правило «деактивировать отсутствующие» | Полноту нового прайса перед загрузкой |
Отдельно следите за ключом идентификации: если товары обновляются не по стабильному артикулу, а по названию, любая опечатка в прайсе создаёт дубль вместо обновления существующей карточки.
Итог
Сохранённая конфигурация импорта CSV превращает многошаговый мастер в повторяемую операцию: параметры файла, сопоставление полей, правила обновления и привязка к разделам фиксируются один раз. Для реального сохранения профиля используйте импорт модуля «Каталог», держите стабильную кодировку и ключ по артикулу, а регулярную загрузку выносите на cron.
Если прайсы сложные — торговые предложения, несколько типов цен, привязка к разным инфоблокам — или нужен устойчивый обмен без ручного вмешательства, мы настроим импорт, профили и расписание под ваш каталог и возьмём процесс на сопровождение, чтобы обновление ассортимента шло без сбоев.
Частые вопросы
Почему универсальный импорт инфоблока не сохраняет настройки?
Мастер импорта в разделе «Контент → Инфоблоки» не хранит профили и каждый раз просит настроить сопоставление полей заново. Чтобы сохранить конфигурацию, используйте импорт CSV модуля «Каталог» в разделе «Магазин».
Где физически хранится сохранённый профиль импорта?
Профили каталога хранятся в базе данных сайта. При переносе проекта они уезжают вместе с дампом БД, отдельного файла экспортировать не нужно.
Как запускать сохранённый импорт по расписанию?
Профиль можно вызывать агентом Битрикс или системным cron. Для тяжёлых прайсов надёжнее cron с пошаговой обработкой, чтобы не упираться в лимиты времени выполнения.
Что задать ключом сопоставления товаров?
Используйте стабильный артикул (свойство CML2_ARTICLE), а не название. Тогда повторный импорт обновляет существующие карточки, а не плодит дубли из-за опечаток.
Как избежать кракозябр после импорта?
Убедитесь, что кодировка CSV-файла совпадает с указанной в профиле — обычно это windows-1251 или UTF-8. Держите выгрузку прайса в одном и том же формате.
Что будет с товарами, которых нет в новом файле?
Это определяется правилом в профиле: их можно деактивировать, снять с публикации или пропустить. Перед загрузкой убедитесь, что новый прайс содержит полный ассортимент.
Переедет ли профиль на другой сервер без правок?
Профиль переносится с базой, но проверьте путь к файлу-источнику и совпадение ID инфоблока и кодов свойств. При других ID сопоставление полей нужно поправить.
Можно ли сохранить конфигурацию для импорта торговых предложений?
Да, импорт каталога поддерживает загрузку торговых предложений с привязкой к родительским товарам. Сопоставление полей и ключ связки также сохраняются в профиле.
Поможем с настройкой и поддержкой 1С-Битрикс: Управление сайтом
Поможем с настройкой, доработкой и поддержкой 1С-Битрикс: Управление сайтом.