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

В этой статье мы разберем все актуальные способы выгрузки проводок — от ручного экспорта через типовой отчет до автоматизированных решений с использованием запросов 1С и внешних обработок. Особое внимание уделим форматам выгрузки (.xlsx, .xml, .mxl), типичным ошибкам (например, обрезка длинных проводок при экспорте в Excel) и способам их устранения. Если вы работаете с 1С:Бухгалтерией 3.0, 1С:ERP или 1С:Комплексной автоматизацией, здесь вы найдете решения под вашу конфигурацию.

Материал будет полезен как начинающим пользователям, так и опытным специалистам: первые узнают, как выгрузить данные без программирования, а вторые — как автоматизировать процесс с помощью скриптов и оптимизировать выгрузку больших объемов данных.

1. Стандартные способы выгрузки проводок без программирования

Платформа 1С:Предприятие 8.3 предоставляет несколько встроенных инструментов для экспорта проводок, не требующих знания языка или SQL. Эти методы подходят для разовых операций или небольших баз данных.

Самый простой способ — использование типового отчета Оборотно-сальдовая ведомость по счету или Карточка счета. Чтобы выгрузить проводки через них:

  1. Откройте раздел Отчеты → Стандартные отчеты → Оборотно-сальдовая ведомость.
  2. Укажите нужный счет (например, 60.01 для расчетов с поставщиками) и период.
  3. Нажмите Показать настройки и на вкладке Дополнительно отметьте галочкой Показывать проводки.
  4. Сформируйте отчет и нажмите Еще → Вывести в Excel или Сохранить как....

Преимущество метода — скорость и простота. Однако у него есть ограничения:

  • 📉 Ограничение по строкам: Excel может обрезать данные, если проводок больше 1 048 576 (максимум для .xlsx).
  • 🔄 Отсутствие детализации: не всегда экспортируются все реквизиты проводки (например, аналитика по субконто).
  • ⚙️ Нет гибкости: нельзя настроить структуру выгружаемого файла (порядок колонок, группировки).
📊 Какой формат выгрузки вы используете чаще?
Excel (.xlsx)
XML (.xml)
Текстовый (.txt/.csv)
Другой

Для более гибкой выгрузки подходит универсальный отчет (Отчеты → Универсальный отчет). Здесь можно:

  • 📊 Выбрать любой регистр бухгалтерии (например, Хозрасчетный или Налоговый).
  • 🔧 Настроить отбор по датам, счетам, организациям или валютам.
  • 📄 Сохранить результат в Excel, PDF или HTML.
⚠️ Внимание: При выгрузке через универсальный отчет проверьте настройки Печать → Макет. Если макет не оптимизирован, в Excel могут "съехать" колонки или пропасть данные.

2. Выгрузка проводок через обработки: готовые решения

Если стандартные отчеты не покрывают ваши нужды (например, требуется выгрузить проводки с дополнительными реквизитами или в нестандартном формате), на помощь приходят внешние обработки. Их можно скачать бесплатно или купить на портале 1С-Отчетность, Инфостарт или в каталоге 1С:ИТС.

Популярные обработки для выгрузки проводок:

Название обработки Формат выгрузки Особенности Стоимость
Выгрузка проводок в Excel (Инфостарт) .xlsx, .csv Поддержка аналитики, сохранение иерархии субконто, пакетная выгрузка Бесплатно / 500–1500 ₽
Универсальный экспорт данных (1С:ИТС) .xml, .json, .xlsx Гибкие настройки полей, поддержка UTD, работа с большими объемами От 2000 ₽
Выгрузка в DBF для 1С:Бухгалтерии .dbf Совместимость с устаревшими системами, поддержка кодировки DOS Бесплатно
Экспорт проводок в ФНС (для проверок) .xml (Формат ФНС) Автоматическое формирование файла для налоговой по требованию 54-ФЗ От 3000 ₽

Как установить и использовать обработку:

  1. Скачайте файл обработки (.epf или .erf) с проверенного источника.
  2. В перейдите в Файл → Открыть → Выбрать файл обработки.
  3. Запустите обработку и следуйте инструкциям на экране (обычно нужно указать период, счета и формат выгрузки).
  4. Сохраните результат в удобное место.

Убедиться, что обработка совместима с вашей версией 1С (8.3.x)

Проверить отзывы других пользователей на портале

Создать резервную копию базы перед первым запуском

Тестировать выгрузку на небольшом периоде (например, 1 день)

-->

⚠️ Внимание: Обработки от сторонних разработчиков могут содержать вредоносный код. Всегда скачивайте их с официальных источников (1С:ИТС, Инфостарт) и проверяйте антивирусом. Перед массовой выгрузкой протестируйте обработку на копии базы.

3. Программная выгрузка проводок: запросы и скрипты

Для автоматизации выгрузки или интеграции с другими системами (например, 1С:ЗУП, Битрикс24, МойСклад) требуется программный подход. В 1С:Предприятие это реализуется через встроенный язык запросов или HTTP-сервисы.

Пример кода для выгрузки проводок в Excel через запрос:

Процедура ВыгрузитьПроводкиВExcel()

// Создаем запрос к регистру бухгалтерии

Запрос = Новый Запрос;

Запрос.Текст =

"ВЫБРАТЬ

| ПроводкаДокумента.Ссылка КАК Документ,

| ПроводкаДокумента.Дата КАК Дата,

| ПроводкаДокумента.СчетДт КАК СчетДт,

| ПроводкаДокумента.СчетКт КАК СчетКт,

| ПроводкаДокумента.Сумма КАК Сумма,

| ПроводкаДокумента.СубконтоДт1 КАК СубконтоДт,

| ПроводкаДокумента.СубконтоКт1 КАК СубконтоКт

|ИЗ

| РегистрБухгалтерии.Хозрасчетный КАК ПроводкаДокумента

|ГДЕ

| ПроводкаДокумента.Дата МЕЖДУ &НачалоПериода И &КонецПериода

|УПОРЯДОЧИТЬ ПО

| Дата";

// Устанавливаем параметры периода

НачалоПериода = НачалоДня(ТекущаяДата());

КонецПериода = КонецДня(ТекущаяДата());

Запрос.УстановитьПараметр("НачалоПериода", НачалоПериода);

Запрос.УстановитьПараметр("КонецПериода", КонецПериода);

// Выполняем запрос

РезультатЗапроса = Запрос.Выполнить();

Выборка = РезультатЗапроса.Выбрать();

// Создаем Excel-документ

Excel = Новый COMОбъект("Excel.Application");

Книга = Excel.Workbooks.Add();

Лист = Книга.Worksheets(1);

// Заполняем заголовки

Лист.Cells(1, 1).Value = "Документ";

Лист.Cells(1, 2).Value = "Дата";

Лист.Cells(1, 3).Value = "СчетДт";

// ... (остальные колонки)

// Заполняем данные

НомерСтроки = 2;

Пока Выборка.Следующий() Цикл

Лист.Cells(НомерСтроки, 1).Value = Выборка.Документ;

Лист.Cells(НомерСтроки, 2).Value = Выборка.Дата;

// ... (остальные поля)

НомерСтроки = НомерСтроки + 1;

КонецЦикла;

// Сохраняем файл

ПутьКФайлу = "C:\Temp\Проводки_" + Формат(ТекущаяДата(), "ДФ=yyyyMMdd") + ".xlsx";

Книга.SaveAs(ПутьКФайлу);

Excel.Quit();

КонецПроцедуры

Этот код можно:

  • 🔄 Доработать под свои нужды (например, добавить отбор по организации или валюте).
  • 📅 Запускать по расписанию через Регламентные задания.
  • 🔗 Интегрировать с другими системами (например, отправлять файл на FTP или в облако).

Для выгрузки в XML или JSON используйте ЗаписьXML или ЗаписьJSON:

ЗаписьXML = Новый ЗаписьXML;

ЗаписьXML.ОткрытьФайл("C:\Temp\Проводки.xml");

ЗаписьXML.ЗаписатьОбъявлениеXML();

ЗаписьXML.ЗаписатьНачалоЭлемента("Проводки");

Пока Выборка.Следующий() Цикл

ЗаписьXML.ЗаписатьНачалоЭлемента("Проводка");

ЗаписьXML.ЗаписатьАтрибут("Дата", Выборка.Дата);

ЗаписьXML.ЗаписатьАтрибут("Сумма", Выборка.Сумма);

// ... (остальные поля)

ЗаписьXML.ЗаписатьКонецЭлемента(); // Проводка

КонецЦикла;

ЗаписьXML.ЗаписатьКонецЭлемента(); // Проводки

ЗаписьXML.Закрыть();

💡

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

4. Типичные ошибки при выгрузке проводок и их решения

Даже опытные пользователи сталкиваются с проблемами при экспорте проводок. Рассмотрим самые распространенные ошибки и способы их устранения.

Ошибка 1: Пустой файл или отсутствие данных

  • 🔍 Причина: Неверно указан период, отбор по счету или организации.
  • Решение:
    • Проверьте даты в настройках отчета/запроса.
    • Убедитесь, что в базе есть проводки за выбранный период (посмотрите Оборотно-сальдовую ведомость).
    • Если используете обработку, проверьте ее настройки (возможно, установлен фильтр по пустой организации).

Ошибка 2: Обрезка данных в Excel (не все строки экспортированы)

  • 🔍 Причина: Превышен лимит строк в Excel (1 048 576 для .xlsx).
  • Решение:
    • Разбейте выгрузку на несколько файлов (например, по месяцам).
    • Используйте формат .csv — он не имеет ограничений по строкам.
    • Для больших объемов данных выгружайте в XML или JSON.

Ошибка 3: "Съехавшие" колонки в Excel

  • 🔍 Причина: Несовпадение разделителей в .csv или неверный макет в обработке.
  • Решение:
    • При экспорте в CSV укажите разделитель ; (точка с запятой) вместо , (запятой).
    • В обработке проверьте настройки макета (ширину колонок, шрифты).
    • Откройте файл в LibreOffice Calc — он лучше справляется с форматами, чем Excel.

Ошибка 4: Ошибка при записи в файл (доступ запрещен)

  • 🔍 Причина: Нет прав на запись в выбранную папку или файл уже открыт в другой программе.
  • Решение:
    • Сохраняйте файл в папку с полными правами (например, C:\Temp или рабочий стол).
    • Закройте все программы, которые могут блокировать файл (Excel, блокнот).
    • Если используете сетевой диск, проверьте права доступа.
Что делать, если выгрузка зависает?

Если процесс выгрузки "завис" (например, при большом объеме данных), попробуйте:

1. Уменьшить период выгрузки (например, выгружать данные помесячно).

2. Использовать фоновое задание: в есть механизм Фоновые задания, который позволяет выполнять длительные операции без блокировки интерфейса.

3. Оптимизировать запрос: добавьте индексы по полям, участвующим в отборе (например, по дате или счету).

4. Выгружать данные частями: сначала экспортируйте шапки документов, затем проводки к ним.

⚠️ Внимание: Если выгружаемые данные содержат персональные данные (ФИО, паспортные данные), убедитесь, что файл хранится в защищенном месте и соответствует требованиям 152-ФЗ "О персональных данных". Для передачи таких данных используйте шифрование (например, Zip с паролем).

5. Выгрузка проводок для специфических задач

В некоторых случаях требуется нестандартная выгрузка проводок — например, для аудита, интеграции с банком или передачи в ФНС. Рассмотрим особенности таких сценариев.

Выгрузка для аудиторской проверки

Aудиторы обычно запрашивают проводки в структурированном виде с детализацией по:

  • 📌 Субконто (контрагенты, договоры, проекты).
  • 💰 Валюте и курсу (если ведется валютный учет).
  • 📑 Первичным документам (ссылки на счета-фактуры, акты).

Для этого подойдет:

  • 📊 Обработка "Выгрузка данных для аудита" (доступна на Инфостарт).
  • 🔧 Запрос с JOIN’ом к документам (пример ниже).

Пример запроса с детализацией по субконто:

ВЫБРАТЬ

Проводка.Ссылка КАК Документ,

Проводка.Дата,

Проводка.СчетДт,

Проводка.СчетКт,

Проводка.Сумма,

Проводка.ВалютнаяСумма,

Проводка.Курс,

СубконтоДт.Наименование КАК СубконтоДт_Наименование,

СубконтоКт.Наименование КАК СубконтоКт_Наименование,

ДокументОснова.Номер КАК НомерДокументаОснова

ИЗ

РегистрБухгалтерии.Хозрасчетный КАК Проводка

ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК СубконтоДт

ПО Проводка.СубконтоДт1 = СубконтоДт.Ссылка

ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК СубконтоКт

ПО Проводка.СубконтоКт1 = СубконтоКт.Ссылка

ЛЕВОЕ СОЕДИНЕНИЕ Документ.СчетФактураВыданный КАК ДокументОснова

ПО Проводка.Ссылка = ДокументОснова.Ссылка

ГДЕ

Проводка.Дата МЕЖДУ &НачалоПериода И &КонецПериода

Выгрузка для банка (например, для подтверждения платежей)

Банки часто требуют выгрузку проводок по расчетным счетам в своем формате. Например, для Сбербанк Бизнес Онлайн или Тинькофф может понадобиться файл с колонками:

  • 📅 Дата операции
  • 💳 Номер счета
  • 💵 Сумма (приход/расход)
  • 📝 Назначение платежа
  • 🏢 Контрагент (ИНН/КПП)

Для этого:

  1. Используйте обработку "Выгрузка платежей для банка" (есть на Инфостарт).
  2. Настройте правила соответствия счетов бухгалтерского учета и банковских счетов.
  3. Экспортируйте данные в CSV или Excel с разделителями, поддерживаемыми банком.

Выгрузка для ФНС (по требованию 54-ФЗ)

Налоговая инспекция может запросить проводки в XML-формате по своей схеме. Для этого:

  • 📋 Используйте обработку "Формирование файла для ФНС" (входит в 1С:ИТС).
  • 🔍 Проверьте, что в выгрузке присутствуют:
    • Реквизиты организации (ИНН, КПП).
    • Дата и номер документа-основания.
    • Суммы с разбивкой по налогам (НДС, налог на прибыль).
  • 📂 Сохраните файл с именем по шаблону: ИНН_КПП_ДДММГГГГ.xml.
⚠️ Внимание: Форматы выгрузки для ФНС могут меняться. Перед отправкой файла сверьте его структуру с актуальными требованиями на сайте nalog.ru или в личном кабинете налогоплательщика.

6. Автоматизация выгрузки: регламентные задания и интеграции

Если проводки нужно выгружать регулярно (например, ежедневно для аналитики или ежемесячно для отчетности), ручной экспорт становится неэффективным. В 1С:Предприятие есть инструменты для автоматизации:

Регламентные задания

Это встроенный механизм для запуска процедур по расписанию. Чтобы настроить автоматическую выгрузку:

  1. Перейдите в Администрирование → Поддержка и обслуживание → Регламентные задания.
  2. Создайте новое задание, выбрав тип Выполнение кода 1С.
  3. В поле Код вставьте процедуру выгрузки (например, ту, что приведена в разделе 3).
  4. Настройте расписание (ежедневно, еженедельно) и укажите время выполнения.
  5. Укажите пользователя, от имени которого будет выполняться задание (у него должны быть права на чтение проводок).

Пример кода для регламентного задания (выгрузка в Excel каждый день в 23:00):

Процедура ВыгрузитьПроводкиАвтоматически() Экспорт

Попытка

// Код выгрузки (аналогично разделу 3)

Сообщить("Выгрузка проводок завершена успешно!");

Исключение

ЗаписатьЖурналРегистрации("ОшибкаВыгрузкиПроводок", УровеньЖурналаРегистрации.Ошибка,,,

"Ошибка при выгрузке проводок: " + ОписаниеОшибки());

КонецПопытки;

КонецПроцедуры

Интеграция с внешними системами

Если проводки нужно передавать в другую систему (например, 1С:ЗУП, Битрикс24, МойСклад), используйте:

  • 🔗 HTTP-сервисы: настройте в веб-сервис, который будет отдавать проводки в JSON по запросу.
  • 📤 Обмен через файлы: выгружайте данные в общую папку, откуда другая система будет их забирать.
  • 🔄 Прямой обмен через 1С:Коннектор или 1С:EDI.

Пример настройки HTTP-сервиса для выгрузки проводок:

  1. Создайте новый HTTP-сервис в конфигураторе (Файл → Новый → HTTP-Сервис).
  2. Добавьте метод для получения проводок (например, ПолучитьПроводки).
  3. В коде метода реализуйте логику выборки и возврата данных в JSON:
Функция ПолучитьПроводки(ДатаНачала, ДатаОкончания) Экспорт

Запрос = Новый Запрос;

Запрос.Текст = "ВЫБРАТЬ ... "; // Запрос из раздела 3

Запрос.УстановитьПараметр("НачалоПериода", ДатаНачала);

Запрос.УстановитьПараметр("КонецПериода", ДатаОкончания);

Результат = Запрос.Выполнить();

Возврат JSON.Записать(Новый Массив(Результат.Выгрузить()));

КонецФункции

  1. Опубликуйте сервис на веб-сервере (Apache, IIS или встроенном сервере ).
  2. В внешней системе настройте запрос к вашему сервису (например, GET /hs/Проводки/ПолучитьПроводки?ДатаНачала=01.01.2026&ДатаОкончания=31.01.2026).
💡

Регламентные задания и HTTP-сервисы позволяют полностью автоматизировать выгрузку проводок, но требуют прав администратора и знания основ программирования в 1С. Для новичков проще использовать готовые обработки с функцией автоэкспорта.

7. Оптимизация выгрузки больших объемов данных

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

1. Пакетная выгрузка

Разбивайте данные на части и выгружайте их последовательно. Например:

  • 📅 По месяцам или кварталам.
  • 📊 По счетам бухгалтерского учета (например, сначала 60.01, затем 62.01).
  • 🏢 По организациям (если ведется учет по нескольким юрлицам).

Пример кода для пакетной выгрузки по месяцам:

Процедура ВыгрузитьПроводкиПакетно()

НачалоГода = НачалоГода(ТекущаяДата());

КонецГода = КонецГода(ТекущаяДата());

ТекущаяДата = НачалоГода;

Пока ТекущаяДата <= КонецГода Цикл

КонецМесяца = КонецМесяца(ТекущаяДата);

ВыгрузитьПроводкиЗаПериод(ТекущаяДата, КонецМесяца,

"C:\Temp\Проводки_" + Формат(ТекущаяДата, "ДФ=yyyyMM") + ".xlsx");

ТекущаяДата = НачалоСледующегоМесяца(ТекущаяДата);

КонецЦикла;

КонецПроцедуры

2. Оптимизация запросов

Чтобы ускорить выборку данных:

  • 🔍 Используйте индексы по полям, участвующим в отборе (дата, счет, организация).
  • 📉 Избегайте ВЫБРАТЬ РАЗЛИЧНЫЕ и ГРУППИРО