Выгрузка и выемка данных из 1С 8.3: три рабочих способа

· 9 мин

Содержание

Выемка данных в 1С — это выгрузка базы или её части в отдельный файл: чтобы перенести учёт на другой компьютер, сделать копию перед обновлением или отдать базу на анализ. В платформе 8.3 есть три формата под разные задачи: .dt — вся база целиком, .cf — только конфигурация без данных, .xml — выборочная выгрузка отдельных справочников и документов.

Выбор зависит от того, что именно нужно забрать. Переносите учёт полностью — берите .dt. Нужна только доработанная конфигурация для другой базы — .cf. Надо вытащить один справочник контрагентов или остатки по складу — выгрузка через XML. Ниже — как сделать каждую выемку через Конфигуратор и как поставить её на автомат в пакетном режиме.

Все операции с .dt делаются в режиме Конфигуратор, не в режиме «Предприятие». Выгрузка конфигурации — тоже Конфигуратор. Выборочная выгрузка XML работает из «Предприятия» через внешнюю обработку.

Какой формат выбрать под свою задачу

Форматы не взаимозаменяемы: каждый забирает свой слой базы.

  • 📦 DT — полный снимок: и конфигурация, и все данные (документы, справочники, регистры, настройки пользователей). Это точная копия базы на момент выгрузки.
  • 🧩 CF — только конфигурация: формы, отчёты, структура метаданных, доработки. Данных внутри нет.
  • 📄 XML — выборочные данные: указанные справочники и документы без привязки к конфигурации целиком.
Что именно нужно выгрузить из базы?

Коротко в таблице — что забирает каждый формат и когда он уместен:

ФорматЧто внутриКогда братьГлавный риск
.dtДанные + конфигурацияПолный перенос, резервная копияЗагрузка затирает базу-приёмник
.cfТолько конфигурацияПеренос доработок между базамиПерезапишет конфигурацию приёмника
.cfeРасширение конфигурацииДоработки без снятия с поддержкиНужно отдельно обновить структуру БД
.xmlВыбранные объекты данныхВытащить справочник, документыДубли и неразрешённые ссылки

Размер файла отличается в разы. .dt сжимается внутренним архиватором и обычно в несколько раз меньше рабочей базы. .cf — единицы-десятки мегабайт. XML-выгрузка зависит от объёма выбранных данных.

Что сделать до выгрузки

Две вещи решают большинство проблем при выемке: монопольный доступ и свежая копия.

Монопольный доступ. Выгрузка информационной базы в .dt требует, чтобы в базе не было активных пользователей. Платформа сама проверит это и не даст выгрузиться, если кто-то работает. Для файловой базы достаточно закрыть все сеансы «Предприятия». Для клиент-серверной — завершить сеансы через консоль администрирования.

Прежде чем завершать чужие сеансы, предупредите пользователей: несохранённые данные в открытых документах потеряются. Делайте это в обеденный перерыв или после работы, а не в разгар проведения документов.

Резервная копия. Перед любой загрузкой данных обратно в рабочую базу сделайте её копию. Загрузка .dt полностью затирает текущую базу, откатить это нельзя. Для выгрузки (чтения) копия не нужна — база не меняется.

Порядок подготовки:

  1. Проведите отложенные документы и закройте период, если выгружаете для переноса.
  2. Выгоните пользователей из базы (или дождитесь, пока все выйдут).
  3. Запустите платформу в режиме Конфигуратор под учётной записью с правами администратора.
  4. Убедитесь, что на диске есть место: файл .dt займёт заметный объём.

Выгрузка всей базы в файл DT

Это главный способ полного переноса и резервирования. Файл .dt содержит абсолютно всё.

Через Конфигуратор:

  1. Откройте базу в режиме Конфигуратор.
  2. Меню Администрирование → Выгрузить информационную базу.
  3. Укажите папку и имя файла — например base_2026-10-07.dt.
  4. Нажмите Сохранить и дождитесь завершения. На крупной базе это минуты.

Файл готов — его можно перенести на флешку, в облако, отправить коллеге.

Загрузка .dt в другую базу:

  1. Создайте пустую информационную базу (при добавлении базы выберите «Создание новой без конфигурации») или откройте ту, в которую грузите.
  2. Конфигуратор → Администрирование → Загрузить информационную базу.
  3. Выберите файл .dt.
  4. Подтвердите замену. Платформа предупредит, что текущая база будет перезаписана.

Загрузка .dt стирает содержимое базы-приёмника без возврата. Грузите только в пустую или в ту, что не жалко перезаписать. Версия платформы приёмника должна быть не ниже той, в которой сделана выгрузка.

Типичная ошибка при загрузке — несовпадение версий. Если .dt выгружен в более новой платформе, старая его не откроет. Обновите платформу на приёмнике до нужного номера релиза.

Для серверной базы размер .dt и время выгрузки растут вместе с объёмом данных. Если база большая и выгрузка идёт долго, для регулярного резервирования разумнее использовать штатные средства СУБД (бэкап PostgreSQL или MS SQL), а выгрузку в .dt оставить для переноса на другую площадку. Файловую базу (1Cv8.1CD) можно продублировать и простым копированием папки, но только когда база закрыта — на открытой копия получится повреждённой.

Сохранение конфигурации в файл CF

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

Выгрузка конфигурации:

  1. Конфигуратор → Конфигурация → Открыть конфигурацию (если не открыта).
  2. Конфигурация → Сохранить конфигурацию в файл.
  3. Укажите имя, например cfg.cf.

Внутри — только метаданные: справочники, документы, формы, модули. Ни одной записи данных.

Загрузка .cf в базу-приёмник:

  1. Конфигуратор приёмника → Конфигурация → Загрузить конфигурацию из файла.
  2. Выберите .cf.
  3. После загрузки платформа предложит обновить конфигурацию базы данных — согласитесь (Обновить конфигурацию базы данных, клавиша F7).

Есть близкий формат — .cfe, файл расширения конфигурации . Расширения появились в платформе 8.3.6 и позволяют дорабатывать типовую конфигурацию , не снимая её с поддержки. Загрузка .cfe (Конфигурация → Расширения конфигурации) и обновление конфигурации БД — два отдельных шага, не путайте их с загрузкой основной конфигурации.

Если нужно сравнить две конфигурации перед загрузкой, используйте Конфигурация → Сравнить, объединить с конфигурацией из файла. Платформа покажет, что именно отличается, и даст выбрать, какие объекты переносить.

Частичная выемка данных через XML

Когда нужна не вся база, а отдельные объекты — список контрагентов, номенклатуру, остатки на складе, — формат XML удобнее всего. Он забирает только выбранные данные.

Штатный инструмент — внешняя обработка «Выгрузка и загрузка данных XML» (файл с расширением .epf). Она поставляется с типовыми решениями, работает из режима «Предприятие» и не требует ни монопольного доступа, ни захода в Конфигуратор. Есть и близкая по смыслу обработка «Универсальный обмен данными в формате XML» — выбор зависит от того, какая идёт с вашей конфигурацией.

Порядок выгрузки:

  1. В «Предприятии» откройте обработку: Файл → Открыть и укажите файл обработки .epf.
  2. На вкладке выгрузки отметьте галочками нужные объекты — например, справочник Контрагенты или Номенклатура.
  3. Задайте файл-приёмник с расширением .xml.
  4. Запустите выгрузку.

Обработка выгружает объекты вместе с их внутренними ссылками, поэтому вместе с документами подтянутся связанные справочники.

Для типового переноса между конфигурациями (например, из УТ в БП) чаще используют механизм планов обмена и правила конвертации, а не ручную выгрузку XML. Ручной XML хорош, когда структуры баз одинаковые или почти одинаковые.

Загрузка XML и разрешение конфликтов

Загрузка XML сложнее выгрузки: объекты встают в живую базу, где уже что-то есть. Отсюда конфликты.

Как грузить:

  1. Откройте ту же обработку «Выгрузка и загрузка данных XML» в базе-приёмнике.
  2. Перейдите на вкладку загрузки, укажите файл .xml.
  3. Запустите загрузку и просмотрите протокол.

Каждый объект 1С имеет внутренний уникальный идентификатор (GUID). Обработка ищет в приёмнике объект с таким же идентификатором:

  • 🔁 Нашла — обновляет существующий объект данными из файла.
  • ➕ Не нашла — создаёт новый.

Отсюда два частых сценария конфликтов:

  • Дубли справочников. Если контрагент есть в обеих базах, но заведён вручную с разными идентификаторами, загрузка создаст второго — визуально одинакового, но отдельного. Потом их придётся объединять.
  • Неразрешённые ссылки. Документ ссылается на номенклатуру, которой в приёмнике нет. Обработка создаст объект-заготовку с кодом, но без заполненных реквизитов — их надо дозаполнить вручную.

Грузите XML в рабочую базу только после резервной копии и лучше сначала проверьте на копии. Отменить массовую загрузку одним действием нельзя — только восстановлением из бэкапа.

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

Автоматизация выгрузки через консоль

Регулярную выемку в .dt ставят на автомат — чтобы копия создавалась ночью без участия человека. Платформа запускается в пакетном режиме из командной строки.

Исполняемый файл — 1cv8.exe (путь вида C:\Program Files\1cv8\<версия>\bin\1cv8.exe). Режим Конфигуратора — ключевое слово DESIGNER.

Выгрузка файловой базы в .dt:

"C:\Program Files\1cv8\8.3.24.xxxx\bin\1cv8.exe" DESIGNER /F "C:\Bases\Buh" /N "Администратор" /P "пароль" /DumpIB "D:\Backup\base.dt"

Выгрузка серверной базы — вместо /F указывается сервер и имя базы:

"...\1cv8.exe" DESIGNER /S "server1c\Buh" /N "Администратор" /P "пароль" /DumpIB "D:\Backup\base.dt"

Разбор ключей:

  • DESIGNER — запуск в режиме Конфигуратора.
  • /F — путь к файловой базе; /S — адрес серверной (сервер\имя_базы).
  • /N и /P — имя пользователя и пароль.
  • /DumpIB — выгрузить базу в указанный .dt.

Обратная операция — загрузка — ключ /RestoreIB "путь.dt". Для конфигурации: /DumpCfg и /LoadCfg, после загрузки .cf обычно добавляют /UpdateDBCfg для обновления структуры базы.

Пакетный запуск удобен ещё и тем, что результат можно проверять автоматически: платформа возвращает код завершения, а подробности пишет в файл из ключа /Out. Если в .bat после запуска 1cv8 анализировать этот код и содержимое протокола, несработавшая ночная выгрузка не останется незамеченной до утра. На серверах под управлением Linux принцип тот же, меняются только пути: вместо 1cv8.exe вызывается исполняемый файл клиента из каталога установки платформы.

Такой .bat-файл ставят в Планировщик заданий Windows на удобное время. Чтобы ошибки не терялись, добавьте ключ /Out "D:\Backup\log.txt" — платформа запишет протокол в файл.

Ночная выгрузка .dt тоже требует, чтобы в базе никто не работал. Для серверных баз, где сеансы идут круглосуточно, выгрузка в .dt может не пройти — тогда резервирование делают средствами СУБД (например, бэкап PostgreSQL или MS SQL), а не выгрузкой в .dt.

Проверка перед автоматической выгрузкой
Выполнено: 0 / 5

Частые вопросы

Чем выгрузка в .dt отличается от обычной резервной копии файловой базы?
Файловую базу можно скопировать на уровне файлов — папку с 1Cv8.1CD. Это быстрее, но копия корректна только когда база закрыта. Выгрузка в .dt сжимает данные и проверяет целостность, поэтому для переноса и долгого хранения она надёжнее.
Можно ли загрузить .dt из новой версии платформы в старую?
Нет. Файл .dt, выгруженный в более новой платформе, старая не откроет. Версия платформы на приёмнике должна быть не ниже версии, в которой делалась выгрузка. Решение — обновить платформу на приёмнике.
Почему выгрузка информационной базы недоступна — кнопка не срабатывает?
Чаще всего в базе остались активные сеансы. Платформа не выгружает базу, пока в ней кто-то работает. Закройте все сеансы «Предприятия» или завершите их через консоль администрирования, затем повторите.
После загрузки XML появились дубли контрагентов. Что делать?
Дубли возникают, когда один и тот же контрагент заведён в двух базах с разными внутренними идентификаторами. Объедините их штатной обработкой поиска и удаления дублей, оставив один элемент как основной.
Нужен ли монопольный доступ для сохранения конфигурации в .cf?
Нет. Выгрузка конфигурации (.cf) читает метаданные и не мешает работе пользователей. Монополия нужна для выгрузки и загрузки .dt, а также при обновлении структуры базы после загрузки .cf.