Импорт/экспорт данных в Инфоблоки

Урок 7 из 10

17 мин

Легко

Немного теории

В данном уроке вы познакомитесь с функционалом импорта и экспорта данных при работе с инфоблоками, а также научитесь самостоятельно выполнять импорт/экспорт. Данная процедура позволяет точечно переносить данные с одного сайта на другой. Импорт и экспорт инфоблоков представлен в двух форматах: CSV и XML. Рассмотрим их.

CSV

CSV – формат данных, представленный в виде текстовых значений, разделенный определенным символом, чаще всего запятой. Главной особенностью CSV является относительно небольшой размер файла при большом количестве данных. Однако данный формат имеет и недостатки в виде отсутствия возможности выгружать/загружать структуру инфоблока и его настройки.

Экспорт

В системе “1С-Битрикс: Управление сайтом” экспорт данных в CSV позволяет задать разделитель, который будет использоваться в файле, а также выбрать поля и свойства, необходимые для экспортирования. Вложенность разделов при импорте ограничена и зависит от настроек модуля “Информационные блоки”.

Экспорт записей выполняется за один шаг, поэтому, при большом количестве записей и малом объеме выделенной памяти, есть риск возникновения ошибки “Нехватка памяти для выполнения скрипта”.

В случае, если у записей присутствуют изображения или файлы в значениях свойств, то в CSV-файле будут указаны пути, по которым были загружены данные файлы на сайте. Следовательно, при последующем импорте файла необходимо отдельно загрузить соответствующие файлы по указанным путям.

Импорт

При импорте в формате CSV “1С-Битрикс: Управление сайтом” позволяет выбрать разделитель, используемый в файле, а также указать соответствие полей в файле с полями в инфоблоке, в который импортируются данные.

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

картинка

Также в случае с импортом можно указать время выполнения одного шага. Если импортируемый файл содержит большой объём данных, то рекомендуется указывать положительный шаг выполнения, а также отключать индексацию созданных элементов модулем “Поиск”. Это увеличит скорость создания новых элементов, а следовательно, и процесс импорта.

Стоит заметить, что при импорте данных в CSV, обязательным становится хотя бы одно из полей: XML_ID или NAME. Их отсутствие не позволит корректно выполнить импорт элементов.

картинка

XML

Второй формат импорта/экспорта, который мы рассматриваем в данном уроке, это XML. Отличие XML от CSV заключается в том, что XML позволяет, помимо элементов инфоблоков, также экспортировать структуру и настройки инфоблока.

Экспорт

Экспорт данных в XML предлагает указать инфоблок, шаг экспорта, а также параметры выгрузки разделов и элементов, в отличие от CSV, который не предлагает такой возможности.

Если в данных содержатся изображения, то после завершения экспорта будет создан XML-файл с указанным названием, а также директория, имеющая идентичное название файлу выгрузки + постфикс с файлами изображений. При этом в самом XML-файле у элементов путь к изображениям будет указан относительно директории - название_файла_files.

Импорт

При импорте XML-файла необходимо заранее загрузить на сайт XML-файл импорта, а также папку с изображениями. Так как импортируется структура инфоблока, то необходимо указать сайт, к которому будет привязан инфоблок.

XML vs CSV

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

Формат XML, в свою очередь, удобен для полного переноса инфоблоков между сайтами, так как позволяет сохранить все настройки, но стоит помнить, что большое количество записей в данном файле сильно увеличит его объём.

Доработка скриптов экспорта и импорта

Когда при импорте данных необходимо внести изменения в сами данные в момент импорта либо выполнить иные операции при добавлении/обновлении/удалении элемента в системе “1С-Битрикс: Управление сайтом”, предусмотрена возможность доработки импорта с помощью обработчиков событий. Подробнее про обработчики событий и работу с ними будет рассказано в следующих уроках, а пока что вы можете посетить страницу документации, ссылка на которую указана в материалах к данному уроку.

Практика

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

В примере:

  • Импорт инфоблоков в формате XML.
  • Экспорт нашего инфоблока в формате CSV.
  • Импорт инфоблока в формате CSV.

Импорт/экспорт данных в Инфоблоки

10 мин

Полезные ссылки и материалы