Загрузка и Выгрузка товаров для 1С-Битрикс в формате XLSX, CSV и т.д.

В большинстве проектов разработанных на 1С-Битрикс требуется настроить выгрузку или загрузку товаров. Самый лучший вариант — написать индивидуальный скрипт-загрузчик под конкретные задачи. Из данной статьи вы поймете почему это так, и узнаете в чем заключаются основные отличия разных форматов.

Стандартные способы выгружать и загружать данные в 1С-Битрикс

В системе битрикс предусмотрено всего несколько видов стандартной загрузки и выгрузки данных. Первый из них это Импорт\Экспорт Информационных блоков:

Именно инфоблоки являются основным инструментом, в которым мы храним данные. Этакая «часть базы данных» в удобном представлении.

При Импорт\Экспорте доступны 2 формата:
1. CSV — это простейший формат, который можно открыть в экселе и увидеть наглядно структуру файла в виде таблицы (правда, иногда в сломанной кодировке, т.к. эта программа почему-то любит windows-1251). Если открыть в блокноте, этот формат имеет вид:

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

Правда есть один неприятный нюанс — В Битриксе вы не сможете адекватно выгрузить и затем загрузить данные о товаре, если делать это через Импорт \ Экспорт инфоблока. При этом варианте отсутствуют основные поля каталога, цены и количества, какой в этом смысл? Кроме того, ссылки для изображений указывают на папку /upload/, как вы поймете что вам копировать а что нет? Это можно исправить написав свой скрипт, но об этом позже.

2. XML — тут дела обстоят получше, когда речь заходит о более полной структуре данных. Тут вам и дерево из разделов, и все свойства из информационного блока, и даже цены. По сравнению с CSV форматом, все изображения собираются в отдельную папку, с таким же самым названием, которое мы давали файлу, что несомненно плюс.

Из частых проблем я бы выделил:
— сам формат сложнее в плане чтения и работы с ним (в случае если захотите что-то добавить через редактор)
— при выгрузке товары выгружаются в новый инфоблок (а должно загружаться в старый)

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

Какая выгрузка на проектах сделанных на 1С-Битрикс самая лучшая?

Выгрузка в формате CSV, XLSX или XLS для CMS 1С-Битрикс написанная вручную

По моему опыту, самый лучший вариант, это написать уникальный загрузчик. Почему?

1. Будет использован формат данных, к которому привыкли вы и ваши коллеги / партнеры. Например, если у вас сохраняется определенная последовательность полей — «Название, Артикул, Цена, Вес», то в самом скрипте будет прописано «искать товары по Артикулу, если ничего не найдено искать по Названию, если товар найден поменять его Цену и Вес«.
2. При желании файл может загружать картинки из определенных папок и даже сторонних сайтов. Задавать картинки для товаров можно будет не только для полей «Картинка для анонса» и «Детальная картинка», но и перезаписать часто используемое свойство типа Файл, с отметкой Множественное.
3. Можно будет задать более сложную логику загрузки. Например, у ваших товаров есть свойство бренд, и вы хотите чтобы всем товарам также отмечался раздел, с соответствующим брендом. Все ограничивается лишь поставленной задачей, в рамках более сложной логики загрузки можно учесть многие нюансы, которые применимы только в вашем бизнесе или проекте.

При разработке такого скрипта код пишется с нуля на языке PHP при использовании Bitrix API, и не содержит лишних строчек.

Форматы файлов могут быть любыми: CSV, XML, XLSX, XLS, YML, JSON и т.д.

Вас интересует данная услуга? Свяжитесь со мной, отвечу на все вопросы и помогу с реализацией.

ПС напоследок продемонстрирую отчет одного из таких загрузчиков, который видно сразу после выполнения скрипта:

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

автор: Dmitriy

Занимаюсь веб-разработкой с 2011 года. Посмотреть некоторые из моих работ, а также узнать чуть больше обо мне, вы можете на forwww.com/dmitriy/.

Какие услуги предоставляю:
- Создание сайтов, шаблонов и компонентов на 1С-Битрикс;
- Разработка функционала с нуля и доработка кода на уже созданных проектах;
- Адаптивная вёрстка макетов и натяжка на Битрикс;
- Парсинг файлов и выгрузка на сайт (форматы - CSV, XML, XLSX, JSON)
- Интеграции со сторонними сервисами по API;
- Многоязычные версии и многое другое.

Если у вас остались вопросы, свяжитесь со мной любым удобным для вас способом или оставьте комментарий внизу.
E-mail: dmitriyribka@gmail.com
Skype: cinemacreaterus

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *