Администрирование · 10 мин
Как работает выгрузка в 1С: механизмы и практические способы
Как работает выгрузка в 1С: типовые обработки, выгрузка в XML, Excel и dbf, универсальный обмен данными, типичные ошибки и проверка результата.
Выгрузка в 1С — это перенос данных из информационной базы во внешний файл или другую базу. Под этим термином скрывается несколько разных механизмов: выгрузка всей базы в файл dt, обмен данными между конфигурациями через XML, выгрузка табличных данных в Excel и выгрузка отчётов. Каждый механизм решает свою задачу, и путаница между ними — главная причина ошибок у начинающих администраторов и пользователей.
Технически любая выгрузка сводится к чтению данных из таблиц базы и их сериализации — преобразованию в формат, пригодный для хранения или передачи. Платформа 1С:Предприятие предоставляет встроенные средства сериализации: формат XML с описанием ссылок и типов, формат dt для полной копии базы, а также программные объекты для записи в табличные документы, CSV, DBF и JSON.
Понимание того, какой именно вид выгрузки нужен, экономит время и защищает от потери данных. Выгрузка отчёта в Excel не создаёт резервную копию, а выгрузка базы в dt не подходит для переноса одного справочника в другую конфигурацию. Ниже разобраны основные механизмы, порядок действий и контрольные точки для проверки результата.
Какие виды выгрузки существуют в 1С
Первый и самый масштабный вид — выгрузка всей информационной базы в файл с расширением dt через конфигуратор. Такой файл содержит и данные, и конфигурацию, поэтому используется для резервного копирования, переноса базы на другой сервер или развёртывания копии для тестирования. Загружается dt только через конфигуратор в базу той же или совместимой версии платформы.
Второй вид — обмен данными между конфигурациями через XML. Он реализуется типовыми планами обмена, обработкой «Универсальный обмен данными в формате XML» или правилами конвертации, созданными в «Конвертации данных». Так выгружают справочники, документы и остатки между, например, «Управлением торговлей» и «Бухгалтерией предприятия».
Третий вид — выгрузка табличных данных для пользователя: сохранение табличного документа, отчёта или списка в Excel, CSV, PDF. Это самый частый сценарий в ежедневной работе. Четвёртый вид — выгрузка через встроенный язык: программная запись в JSON, XML, текстовые файлы и потоки для интеграции с внешними системами.
Сравнение способов выгрузки
Полная копия базы с конфигурацией. Подходит для бэкапа и переноса, но не для выборочной выгрузки данных.
Выборочная выгрузка справочников и документов по правилам. Требует совместимых правил конвертации.
Только видимые табличные данные без ссылок и связей. Подходит для анализа и передачи людям.
Гибкий формат для интеграций, но требует разработки и тестирования.
Как выгрузить базу целиком через конфигуратор
Выгрузка в dt выполняется из конфигуратора: меню «Администрирование» → «Выгрузить информационную базу». Перед выгрузкой нужно завершить работу пользователей, иначе файл может получиться несогласованным — активные сеансы мешают монопольному доступу. В клиент-серверном варианте выгрузку запускают под пользователем с правами администратора.
Платформа последовательно читает все таблицы и упаковывает их в один файл. На больших базах процесс занимает заметное время, а объём dt обычно меньше размера самой базы за счёт внутреннего сжатия, но рассчитывать на конкретный коэффициент сжатия не стоит — он зависит от структуры данных.
После завершения файл нужно проверить: размер должен быть сопоставим с объёмом базы, а контрольная загрузка в пустую тестовую базу — завершаться без ошибок. Только проверенная выгрузка считается рабочей резервной копией.
Как работает универсальный обмен данными XML
Обработка «Универсальный обмен данными в формате XML» — стандартный инструмент переноса данных между конфигурациями. Она работает по правилам обмена: XML-файлу, в котором описано, какие объекты выгружать и как сопоставлять поля источника и приёмника. Правила создают в конфигурации «Конвертация данных» или берут типовые для пар конфигураций от фирмы «1С».
Порядок работы: открыть обработку в базе-источнике, указать файл правил, выбрать период и состав выгружаемых данных, задать имя файла выгрузки и нажать «Выгрузить данные». Обработка обходит выбранные объекты, сериализует их в XML по правилам и пишет в файл. В базе-приёмнике ту же обработку открывают на закладке загрузки и указывают полученный файл.
Ключевой момент — сопоставление ссылок. Объекты ищутся в приёмнике по уникальному идентификатору или по полям поиска, заданным в правилах. Если поля поиска настроены небрежно, в приёмнике появятся дубли справочников — это самая распространённая проблема переноса.
Как выгрузить табличные данные и отчёты в Excel
Пользовательская выгрузка в Excel выполняется через сохранение табличного документа. Сформировав отчёт или открыв список, выберите «Файл» → «Сохранить как» (или кнопку сохранения) и укажите формат: лист Excel, CSV, PDF или HTML. Платформа сохранит именно то, что отображено на экране, — с группировками, итогами и оформлением.
Для списков справочников и документов есть команда «Вывести список» (или «Ещё» → «Вывести список» в управляемых формах): она формирует табличный документ из выбранных колонок, который затем сохраняется в нужном формате. Так можно получить, например, перечень номенклатуры с ценами для отправки контрагенту.
Ограничение способа принципиально: выгружается плоская таблица без ссылок и связей. Загрузить такой файл обратно как объекты базы нельзя без специальной обработки. Если цель — перенос данных между базами, Excel не подходит, нужен обмен через XML.
Программная выгрузка и интеграционные форматы
Для обмена с сайтами, банками и сторонними системами используют программную выгрузку встроенными средствами языка. Объекты ЗаписьXML, ЗаписьJSON, ЗаписьТекста и ТабличныйДокумент позволяют сформировать файл любой структуры. Типовые конфигурации уже содержат готовые механизмы: выгрузку платёжных поручений в банк-клиент, обмен с сайтом в формате CommerceML, выгрузку регламентированной отчётности.
Типичный пример — выгрузка данных в JSON для передачи через HTTP-сервис. Разработчик обходит выборку запроса, заполняет структуру и сериализует её:
Запись = Новый ЗаписьJSON;
Запись.УстановитьСтроку();
ЗаписатьJSON(Запись, ДанныеДляВыгрузки);
Результат = Запись.Закрыть();
При проектировании интеграционной выгрузки важно заранее определить: состав полей, формат дат и чисел, кодировку файла и поведение при ошибках. Несогласованность кодировки (UTF-8 против ANSI) и разделителей дробной части — классические причины того, что принимающая система не может прочитать корректный с виду файл.
Как проверить результат выгрузки
Любая выгрузка считается завершённой только после проверки. Для файла dt — это контрольная загрузка в пустую базу и сравнение количества документов за период. Для обмена XML — анализ протокола обработки (число выгруженных и загруженных объектов должно совпадать) и сверка контрольных итогов: оборотов по счёту, количества позиций в справочнике, сумм по документам.
Для пользовательских выгрузок в Excel проверка проще: открыть файл, убедиться, что все строки и колонки на месте, итоги сходятся с отчётом в 1С, а данные не обрезаны. Если выгрузка регулярная, полезно зафиксировать контрольные цифры один раз и сверять с ними каждый следующий файл.
Как проверить результат
Загружается в пустую базу без ошибок, количество документов совпадает
Ошибка при загрузке, размер файла аномально мал
Число выгруженных объектов равно числу загруженных, ошибок нет
Есть пропущенные объекты и сообщения о не найденных правилах
Обороты и остатки в источнике и приёмнике сходятся
Расхождения сумм или дубли элементов справочников
Все строки на месте, итоги совпадают с отчётом
Обрезанные строки, сбитая кодировка текста
Частые вопросы о выгрузке в 1С
Чем выгрузка в dt отличается от резервной копии средствами СУБД?
Файл dt создаётся средствами платформы и независим от СУБД — его можно загрузить на другой сервер или в файловый вариант. Резервная копия СУБД обычно быстрее на больших базах и позволяет восстановление на момент времени, но привязана к конкретной СУБД. На практике комбинируют оба способа.
Можно ли выгрузить только часть данных, а не всю базу?
Да. Для выборочной выгрузки используют универсальный обмен данными XML с отбором по периоду и типам объектов, планы обмена с регистрацией изменений или типовые обработки переноса. Выгрузка dt всегда включает базу целиком.
Почему после загрузки XML в приёмнике появились дубли контрагентов?
Причина в настройке полей поиска в правилах обмена. Если поиск идёт по уникальному идентификатору, а базы создавались независимо, одинаковые объекты не сопоставляются. Настройте поиск по комбинации реквизитов, например по ИНН и КПП для контрагентов, и выполните сопоставление повторно.
Как выгрузить список документов в Excel вместе с отбором?
Установите нужный отбор в списке, затем вызовите «Ещё» → «Вывести список», отметьте требуемые колонки и сохраните полученный табличный документ через «Файл» → «Сохранить как» в формате Excel. В файл попадут только строки, прошедшие отбор.
Выгрузка обрывается с ошибкой нехватки памяти — что делать?
На больших объёмах выгружайте данные порциями: по периодам или по типам объектов. Для dt проверьте свободное место на диске и достаточность памяти на сервере. В клиент-серверном варианте имеет смысл выполнять выгрузку в период минимальной нагрузки.
Можно ли автоматизировать регулярную выгрузку?
Да. Типовые планы обмена поддерживают расписание через регламентные задания, а запуск платформы в пакетном режиме с параметрами позволяет выполнять выгрузку dt или обработку по расписанию через планировщик операционной системы.
Что важно запомнить
Вид выгрузки выбирается по цели: dt — для копии базы, XML-обмен — для переноса данных между конфигурациями, Excel/CSV — для передачи таблиц людям. Любая выгрузка завершается проверкой: контрольной загрузкой, анализом протокола или сверкой итогов.