Почему в Bitrix 14.5 не импортируются инфоблоки из CSV-файла, экспортированного той же системой?

Помогите, пожалуйста, с повторным импортом инфоблоков из CSV, которые я ранее экспортировал. Действия: выбрал разделитель (Tab), экспортировал, изменил нужные поля (телефоны, адреса и т.д.) и пытаюсь загрузить файл обратно. Но при загрузке возникли проблемы: <br/> 1) В колонке iE_ID отображается "-", хотя при экспорте этим записям было присвоено конкретное свойство инфоблока. По позиции эта колонка осталась на своём месте (третья), и название столбца присутствует в самом файле (я его показал внизу скриншота). <br/> <br/> 2) Далее появляются ошибки: <br/> <blockquote><br/>
  • 20 марта 2026 г. 15:02
Ответы на вопрос 1
Коротко — это не «глюк» Битрикс, а проблема вида/кодировки/соответствия колонок в CSV при повторном импорте. Ниже — список проверок и шагов, которые обычно решают такую ситуацию.

1. Проверьте разделитель и как вы сохраняли файл
- Если вы открывали/правили CSV в Excel, он мог изменить разделитель на «;» или испортить структуру. Экспортировали с Tab — при импорте тоже выберите Tab. Лучше редактировать файл в текстовом редакторе или в LibreOffice с указанием таба как разделителя.

2. Проверьте кодировку и BOM
- Битрикс 14.x обычно ожидает Windows‑1251 (CP1251) для русских данных. Если файл в UTF‑8 с BOM, заголовок первой колонки может превратиться в «ï»… и система не распознает имя столбца — в предпросмотре будет «-». Откройте файл в Notepad++ и:
  - посмотрите, есть ли BOM (Encoding → Encode in UTF‑8 BOM);
  - лучше сохранить как ANSI (Windows‑1251) или как UTF‑8 without BOM в зависимости от настроек импорта.
- Убедитесь, что в настройках импорта выбрана та же кодировка.

3. Заголовки столбцов и соответствие полей
- При импорте Битрикс смотрит на названия колонок или вы вручную их сопоставляете. Проверьте, совпадает ли точное имя заголовка (без лишних пробелов и невидимых символов) с тем, что ожидает система.
- При экспорте Bitrix часто использует служебные имена вроде iE_ID, IE_XML_ID, PROPERTY_* и т.п. Если Excel/редактор изменил регистр/символы — сопоставление не пройдет.
- На шаге «сопоставление колонок» вручную укажите, что колонка iE_ID — это ID (или XML_ID / нужное свойство). Если не сопоставлять — в превью будут «-» и будут создаваться новые элементы или вы будете получать ошибки.

4. Обновление vs создание элементов
- Чтобы обновить существующие элементы, нужно импортировать идентификатор, по которому будет происходить обновление (ID или XML_ID). Если колонка с ID не распознана, система считает, что у элементов нет идентификатора — и либо пытается создать новые, либо выдаёт ошибки «элемент не найден/не обновлён».
- Если вы намерены обновлять по свойству, сопоставьте колонку с соответствующим PROPERTY_CODE.

5. Типичные ошибки и что с ними делать
- «Required field NAME is empty» — проверьте наличие обязательных колонок (NAME и др.).
- «Property X not found» — используйте код свойства (например PROPERTY_PHONE) или убедитесь, что свойство существует в выбранном инфоблоке.
- Ошибки формата дат/чисел — проверьте формат в CSV (дробная часть через точку/запятую, даты в нужном формате).

6. Практическая проверка
- Возьмите 1–2 строчки из экспортированного файла, не меняйте их, и попробуйте импорт только их. Если пройдет — проблема в том, как вы редактировали/сохраняли файл.
- Откройте CSV в текстовом редакторе и посмотрите первые 2 строки в «выровненном» виде — виден ли таб/разделитель, нет ли лишних кавычек/символов.

7. Конвертация и исправления (быстрые рецепты)
- В Notepad++: Encoding → Convert to ANSI (если нужно Windows‑1251) → Save as CSV (tab separated).
- В Linux: iconv -f utf-8 -t cp1251 in.csv > out.csv (удалит BOM, изменит кодировку).
- Уберите невидимые символы в начале файла (BOM). Уберите лишние пробелы в заголовках.

Если после этого не получится — пришлите:
- первые 10 строк CSV (в кодировке, как есть) и заголовок;
- точный текст ошибки, которую выдаёт импорт;
- скрин шага сопоставления колонок в процессе импорта.

С этими данными смогу точно сказать, где именно рассогласование и как корректно сопоставить колонку iE_ID.
Похожие вопросы