Выгрузка данных из 1С: форматы, обмены и типовые ошибки
Содержание
Чтобы выгрузить данные из 1С, не нужна отдельная «кнопка экспорта» — всё зависит от того, куда и зачем вы отдаёте данные. Любой список выгружается в Excel за два клика через Ещё → Вывести список. Полноценный обмен с сайтом, банком или другой базой строится на планах обмена и форматах XML. А разовую выгрузку справочника удобно делать обработкой «Выгрузка и загрузка данных XML».
Разберём три сценария отдельно: быстрый экспорт списка для отчёта, настройку регулярного обмена с внешней системой и перенос данных между базами 1С. Для каждого — свой инструмент и свой формат файла.
С чего начать: какой формат выбрать
Формат файла определяет не «красоту», а то, сможет ли принимающая сторона его прочитать. Выбор здесь не свободный — его диктует получатель.
- 📊 Excel (
.xlsx) и.csv— для человека: отчёт бухгалтеру, прайс для партнёра, выгрузка для анализа. Машина их читает плохо: нет строгой структуры. - 🧩 XML — для программ: обмен между базами, выгрузка на сайт, передача в учётную систему. XML описывает не только значения, но и типы данных, ссылки, реквизиты.
- 🏦 Текстовые форматы по стандарту (
1c_to_kl.txtдля банка,CommerceMLдля сайта) — когда получатель жёстко задаёт структуру файла.
Правило простое: отдаёте данные человеку — берите Excel или CSV. Отдаёте программе — ищите, какой формат она ждёт, и подстраивайтесь под него, а не наоборот.
Перед любой регулярной выгрузкой проверьте три вещи: какие именно объекты нужны получателю (товары, контрагенты, документы), за какой период, и в каком формате принимающая сторона ждёт файл. Половина проблем с обменом — из-за того, что эти детали не согласовали на старте.
Ещё → Вывести список или Печать → Сохранить в Excel/CSV. Настройка не нужна.1c_to_kl.txt. Настройка в разделе «Банк и касса».Быстрая выгрузка списка в Excel или CSV
Самый частый запрос — «выгрузить справочник или список документов в Excel». Для этого ничего настраивать не надо, функция встроена в любую типовую конфигурацию на платформе 8.3 с интерфейсом «Такси».
Откройте нужный список (например, Справочники → Контрагенты или журнал документов
) и действуйте по шагам:
- Настройте отбор и видимые колонки — выгрузится ровно то, что на экране. Лишние колонки уберите через настройку списка, нужные добавьте.
- Нажмите
Ещёв правом верхнем углу списка (кнопка с многоточием). - Выберите команду
Вывести список. - В появившемся окне отметьте, какие колонки включить, и выберите тип вывода — табличный документ.
- Полученный табличный документ сохраните:
Ещё → СохранитьилиФайл → Сохранить как, тип файла — лист Excel 2007 (.xlsx),.csvили.mxl.
Если нужен не весь список, а отдельные строки — выделите их мышью с зажатым Ctrl перед командой Вывести список. Выгрузятся только выделенные.
Для выгрузки печатной формы (счёта, акта, накладной) логика другая: сформируйте печатную форму документа и в её командной панели нажмите Сохранить, выбрав формат. Так удобно отдавать контрагенту один документ, а не целый список.
Табличный документ из 1С в Excel сохраняет значения, но не формулы. Если вы выгрузили отчёт с итогами, в Excel это будут числа, а не живые формулы — это нормально для передачи, но пересчитать внутри Excel не получится.
Выгрузка справочников и документов обработкой XML
Когда нужно перенести конкретные объекты (номенклатуру, контрагентов, остатки) между двумя базами 1С разово, а настраивать постоянный обмен избыточно, используют типовую обработку «Выгрузка и загрузка данных XML». Её распространяет фирма 1С, файл обычно называется ВыгрузкаЗагрузкаДанныхXML.epf.
Порядок работы:
- Откройте обработку через
Файл → Открытьв режиме 1С:Предприятие (если она не встроена в конфигурацию). - На закладке выгрузки укажите файл-приёмник (путь и имя
.xml). - Отметьте флажками объекты метаданных, которые нужно выгрузить — например, справочник «Номенклатура».
- При необходимости задайте отбор по периоду или реквизитам.
- Запустите выгрузку. На выходе — файл XML, который загружается этой же обработкой в другой базе с идентичной структурой метаданных.
Загрузка данных XML переносит объекты «как есть», вместе со ссылками. Структура метаданных в базе-приёмнике должна совпадать с базой-источником, иначе часть данных не загрузится. Это инструмент для одинаковых или очень близких конфигураций, а не для переноса между разными продуктами.
Для полного дампа всей базы обработка не нужна — есть штатная выгрузка в файл .dt: в Конфигураторе Администрирование → Выгрузить информационную базу. Но .dt — это копия всей базы целиком, а не выборочная выгрузка данных, и загружается она только в пустую базу.
Настройка обмена с другой базой 1С
Регулярный двусторонний обмен между базами 1С строится не на обработках, а на планах обмена и механизме синхронизации. Современные типовые конфигурации обмениваются в универсальном формате EnterpriseData — он не требует, чтобы конфигурации были одинаковыми.
Настройка живёт в разделе Администрирование → Синхронизация данных. Общий порядок:
- Включите синхронизацию данных — поставьте флажок в настройках и задайте префикс базы (например, «ЦБ» для центральной). Префикс нужен, чтобы коды и номера документов из разных баз не пересекались.
- Нажмите
Настроить синхронизацию данныхи выберите сценарий из списка — например, обмен «Бухгалтерия — Управление торговлей». - Укажите способ подключения ко второй базе: прямое подключение, через файловый каталог или по FTP.
- Настройте правила отбора — какие организации, склады и за какой период участвуют в обмене.
- Выполните первую синхронизацию и проверьте, что данные прошли в обе стороны.
Если типового сценария для вашей пары конфигураций нет, обмен настраивается через конвертацию данных (отдельная конфигурация «Конвертация данных », редакция 3) — там вручную сопоставляются объекты источника и приёмника. Это задача уже для специалиста.
Обмен с сайтом, банком и маркетплейсом
Три самых частых внешних обмена работают каждый по своему стандарту — универсального способа «выгрузить на любую площадку» нет.
Выгрузка на сайт (интернет-магазин). Используется открытый формат CommerceML: 1С выгружает каталог товаров и цены в файлы import.xml (товары) и offers.xml (предложения и остатки), а сайт их принимает. В типовых конфигурациях для торговли обмен настраивается в разделе обмена с сайтом: указываете адрес сайта, логин, пароль и расписание. Сайт на «1С-Битрикс» или другой CMS с поддержкой CommerceML принимает такой обмен без доработок.
Выгрузка в банк. Платёжные поручения отдаются в клиент-банк в формате «1С:Предприятие — Клиент банка». 1С формирует текстовый файл 1c_to_kl.txt, вы загружаете его в программу банка, а встречный файл kl_to_1c.txt с выписками загружаете обратно в 1С. Настройка — в разделе Банк и касса, обычно через команду выгрузки/загрузки платёжных документов. Сегодня чаще используют прямой обмен с банком (DirectBank), когда файлы не нужны вовсе, но файловый формат остаётся запасным вариантом.
Выгрузка на маркетплейс. Единого файлового формата здесь нет: каждая площадка принимает данные по своему API. Передача идёт либо через типовой модуль обмена с маркетплейсом (в конфигурациях для торговли), либо через интеграцию по OData/веб-сервисам. Поэтому «выгрузить файл на маркетплейс» в прямом смысле нельзя — настраивается именно программный обмен.
Для интеграции со сторонней программой по API в 1С есть стандартный интерфейс OData. Его включают в Конфигураторе при публикации базы на веб-сервере (Администрирование → Публикация на веб-сервере, флажок публикации стандартного интерфейса OData). После этого внешняя система читает и пишет данные 1С по HTTP, без файлов.
Проверка файла и разбор ошибок выгрузки
Выгрузка «прошла без ошибок» и «данные дошли правильно» — не одно и то же. Перед тем как отдать файл получателю, проверьте его.
- XML проверяется на соответствие схеме: если обмен настроен по формату (CommerceML, EnterpriseData), файл должен валидироваться по XSD-схеме этого формата. Невалидный XML принимающая сторона отклонит целиком.
- CSV чаще всего ломается на кодировке и разделителях. Для русских данных берите кодировку UTF-8 (или ту, что ждёт получатель), а разделитель — точку с запятой, если принимающая сторона — Excel с русскими региональными настройками.
- Excel-файл проверяйте на лишние пустые строки и объединённые ячейки — они сбивают автоматический разбор.
.xlsx вместо .csv.Синхронизация данных → Предупреждения..xlsx.Если регулярная синхронизация баз выдаёт ошибки, не удаляйте настройку обмена и не чистите данные «начисто» — так теряется связь объектов между базами. Разбирайте конкретное предупреждение в журнале синхронизации: обычно это один-два проблемных объекта, а не весь обмен.
Выгрузка больших объёмов без перегрузки базы
Когда выгружается не сотня, а сотни тысяч строк, главный риск — не ошибка формата, а нагрузка на базу и зависание сеансов других пользователей.
Несколько приёмов, которые реально помогают:
- Дробите выгрузку по периодам. Вместо «вся номенклатура за всё время» выгружайте помесячно или блоками. Так и файл меньше, и база не держит огромную выборку в памяти.
- Запускайте тяжёлую выгрузку в нерабочее время. Регулярные обмены ставьте в расписание на ночь — в типовых конфигурациях это настраивается в самом задании синхронизации.
- Не выгружайте лишние реквизиты. Чем меньше колонок и чем проще структура, тем быстрее формируется файл.
- Для разовой массовой выгрузки на клиент-серверной базе предпочтительнее фоновое или регламентное задание, а не интерактивная обработка — интерактивный сеанс держит соединение всё время выгрузки.
Если выгрузка на сайт каждый раз передаёт весь каталог заново, проверьте, поддерживает ли обмен передачу только изменений. Инкрементальный обмен (только то, что поменялось с прошлого раза) кратно снижает объём и время.
Отдельно про формат при больших объёмах: Excel ограничен примерно миллионом строк на лист и тяжело открывает большие файлы. Для многомиллионных выгрузок берите CSV или XML — они и формируются быстрее, и обрабатываются программой, а не человеком.
Частые вопросы
Можно ли выгрузить данные из 1С без программиста?
Ещё → Вывести список и раздел «Синхронизация данных». Программист нужен только для нестандартных обменов через конвертацию данных.Чем отличается выгрузка в `.dt` от обмена данными?
.dt — это полная копия всей базы, он загружается только в пустую базу и заменяет её целиком. Обмен данными переносит выбранные объекты (справочники, документы) в работающую базу, не затирая остальное.В каком формате выгружать товары на сайт?
import.xml и offers.xml, которые принимает большинство CMS с поддержкой этого формата.Почему при выгрузке в CSV ломается кодировка?
.xlsx, где эта проблема не возникает.