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

В этой статье мы разберем 5 проверенных способов выгрузки остатков из разных конфигураций 1С: от стандартных отчетов до программного обмена через COM-соединение. Особое внимание уделим типичным ошибкам, которые приводят к расхождениям в данных, и покажем, как их избежать. Если вы работаете с 1С:Управление торговлей 11, ERP или Розницей — здесь найдете актуальные инструкции с учетом последних обновлений платформы.

Для удобства мы структурировали материал по уровням сложности: от ручных методов для начинающих до автоматизированных решений для программистов. В конце статьи — уникальная таблица соответствия форматов выгрузки требованиям популярных маркетплейсов (Ozon, Wildberries, Яндекс Маркет), которую вы не найдете в стандартной документации 1С.

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

Самый простой метод — использование встроенных отчетов. Он подходит для разовых выгрузок небольших номенклатур (до 500 позиций) и не требует навыков программирования. Основной инструмент — отчет "Ведомость по товарам на складах", который есть во всех торговых конфигурациях.

Чтобы сформировать выгрузку:

  • 📊 Перейдите в раздел Отчеты → Товары → Ведомость по товарам на складах
  • 🔍 В настройках отчета выберите нужные склады и период (обычно текущая дата)
  • 📥 Нажмите Ещё → Вывести в Excel или Сохранить как... для экспорта в CSV
  • 🔄 При необходимости отсортируйте данные по артикулам или категориям

Главный недостаток метода — отсутствие гибкости. Вы получите все колонки из отчета, включая ненужные для выгрузки (например, себестоимость или последнюю цену закупки). Для маркетплейсов потребуется дополнительная обработка файла.

💡

Если вам нужны только артикул, название и остаток — перед выгрузкой настройте видимость колонок в отчете через кнопку "Настройки → Показать/скрыть колонки".

⚠️ Внимание: В конфигурациях 1С:Розница 2.3 и старше отчет "Ведомость по товарам" может не учитывать резервы под заказы. Для точных остатков используйте отчет "Остатки товаров с учетом резервов".

2. Выгрузка через обработку "Универсальный обмен данными"

Для регулярного обмена данными 1С предлагает стандартную обработку "Универсальный обмен данными" (доступна в УТ 11, ERP и КА 2). Она позволяет настроить выгрузку остатков в форматах XML, CSV или DBF с гибкими настройками структуры файла.

Пошаговая инструкция:

  1. Откройте обработку через Файл → Открыть → [Папка с шаблонами] → UniversalDataExchange.epf
  2. Выберите тип обмена "Выгрузка данных" и укажите объект "Товары"
  3. В настройках отбора задайте нужные склады и номенклатурные группы
  4. На вкладке "Формат" выберите CSV и настройте разделители (обычно ;)
  5. Укажите путь для сохранения файла и запустите выгрузку

Преимущество этого метода — возможность сохранять настройки шаблона для повторного использования. Однако для работы с обработкой требуются права администратора базы.

Сделать резервную копию базы|Проверить права доступа|Уточнить требования к формату файла у получателя|Протестировать выгрузку на тестовой базе

-->

Формат файла Плюсы Минусы Рекомендации
CSV Универсальный, поддерживается всеми системами Нет структуры, проблемы с кодировкой Используйте UTF-8, экранируйте разделители
XML Сохраняет иерархию данных Большой размер файла, сложно редактировать Подходит для интеграции с 1С других организаций
XLSX Удобно для ручной обработки Ограничение на 1 млн строк Используйте для небольших номенклатур
JSON Идеален для API-интеграций Не поддерживается стандартными обработками Требует доработки через 1С:Скрипт

3. Автоматическая выгрузка через регламентные задания

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

Настройка регламентного задания:

  • 🕒 Перейдите в Администрирование → Поддержка и обслуживание → Регламентные задания
  • 🆕 Создайте новое задание типа "Выгрузка данных"
  • 📁 Укажите обработку выгрузки (можно использовать стандартную или кастомную)
  • ⏰ Настройте расписание (например, каждый день в 23:00)
  • 📤 Укажите путь для сохранения файла (сетевая папка или FTP)

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

Раз в день|Раз в неделю|Вручную по запросу|Не выгружаю остатки|Использую автоматическую синхронизацию-->

⚠️ Внимание: В облачных версиях 1С (1С:Фреш) регламентные задания имеют ограничения по времени выполнения — не более 30 минут для одной операции. Для больших баз может потребоваться разбивка выгрузки на части.

4. Программная выгрузка через COM-соединение (для разработчиков)

Для сложных интеграций (например, с Bitrix24, MoySklad или кастомными CRM) используется программная выгрузка через COM-соединение. Этот метод требует знания 1С:Скрипт и основ работы с API.

Пример кода для выгрузки остатков в JSON:

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

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

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

"ВЫБРАТЬ

| Номенклатура.Артикул КАК Артикул,

| Номенклатура.Наименование КАК Наименование,

| ОстаткиТоваров.КоличествоОстаток КАК Остаток

|ИЗ

| РегистрНакопления.ОстаткиТоваров.Остатки КАК ОстаткиТоваров

| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК Цены

| ПО ОстаткиТоваров.Номенклатура = Цены.Номенклатура

|ГДЕ

| ОстаткиТоваров.Склад = &Склад";

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

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

МассивДанных = Новый Массив;

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

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

Элемент = Новый Структура;

Элемент.Вставить("артикул", Выборка.Артикул);

Элемент.Вставить("наименование", Выборка.Наименование);

Элемент.Вставить("остаток", Выборка.Остаток);

МассивДанных.Добавить(Элемент);

КонецЦикла;

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

ЗаписьJSON.УстановитьСтроку();

ЗаписьJSON.Записать(МассивДанных);

ТекстJSON = ЗаписьJSON.Закрыть();

ЗаписатьФайл("C:\temp\остатки.json", ТекстJSON);

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

Этот код формирует JSON-файл с остатками для указанного склада. Для работы с API маркетплейсов потребуется добавить авторизацию и обработку ответа сервера.

Как обработать ошибки при COM-выгрузке?

При программной выгрузке частые ошибки связаны с:

1. Превышением лимита памяти — разбивайте большие выборки на части по 1000 записей

2. Блокировками базы — используйте транзакции с коротким временем выполнения

3. Несоответствием типов данных — явное приведение типов (например, Число(Остаток)) решает 80% проблем

4. Проблемами с кодировкой — всегда указывайте UTF-8 при работе с JSON/XML

5. Выгрузка остатков для маркетплейсов: особенности форматов

Каждый маркетплейс предъявляет свои требования к формату выгрузки остатков. Например, Ozon требует обязательные поля offer_id и stock, а Wildberriesbarcode и quantity. Ниже приведена таблица соответствия, которая поможет избежать ошибок при загрузке.

Маркетплейс Требуемый формат Обязательные поля Особенности
Ozon CSV или XLSX offer_id, stock, price Разделитель — точка с запятой; десятичный разделитель — точка
Wildberries XLSX barcode, quantity, warehouse Остаток должен быть целым числом
Яндекс Маркет XML (YML) id, available, price Требуется валидация через сервис Яндекса
М.Видео CSV vendor_code, stock_qty Ограничение 5000 строк на файл

Для упрощения работы с маркетплейсами рекомендуем использовать специализированные обработки от партнеров 1С, такие как "1С-Маркетплейс" или "Атол: Интеграция с маркетплейсами". Они автоматически преобразуют данные в нужный формат и обрабатывают ответы серверов.

💡

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

6. Типичные ошибки и способы их устранения

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

  • 🔴 Расхождения в остатках: Проверьте, учитывает ли отчет резервы под заказы. В 1С:ERP используйте отчет "Остатки товаров с учетом резервов"
  • 🔴 Пустой файл выгрузки: Убедитесь, что в настройках отбора указаны правильные склады и период. В 1С:Розница по умолчанию может стоять фильтр по текущему магазину
  • 🔴 Ошибка кодировки: При экспорте в CSV всегда выбирайте кодировку UTF-8. В Windows по умолчанию используется Windows-1251, что приводит к "кракозябрам"
  • 🔴 Долгая выгрузка: Для больших баз (более 100к позиций) используйте выгрузку по частям или настройте индексы на таблице остатков

Если ошибка повторяется — проверьте логи обмена в журнале регистрации (Администрирование → Поддержка и обслуживание → Журнал регистрации). Часто там содержится точная причина сбоя.

⚠️ Внимание: В конфигурациях на управляемых формах (начиная с 1С:Предприятие 8.3.10) при программной выгрузке может возникать ошибка "Недостаточно памяти". Решение — увеличьте параметр /MaxMemory в файле запуска 1С (значение не менее 2048).

7. Альтернативные способы: обмен через EDI и API

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

  • 📡 EDI-обмен: Автоматизированный обмен через операторов электронного документооборота (например, 1С-ЭДО или Диадок). Поддерживает форматы EDIFACT и XML
  • 🔌 Прямое API-взаимодействие: Интеграция через REST API маркетплейсов. Требует разработки промежуточного сервиса для преобразования данных
  • ☁️ Облачные коннекторы: Сервисы вроде 1С:Link или Atol Online, которые синхронизируют данные в реальном времени

Стоимость таких решений начинается от 10 000 рублей в месяц, но они окупаются за счет экономии времени и снижения ошибок. Например, EDI-обмен с Озон позволяет обновлять остатки каждые 15 минут без ручного участия.

FAQ: Частые вопросы по выгрузке остатков из 1С

Можно ли выгрузить остатки только по определенной группе товаров?

Да, во всех стандартных отчетах и обработках выгрузки есть возможность отбора по номенклатурным группам. В отчете "Ведомость по товарам" используйте фильтр "Группа номенклатуры". В программной выгрузке добавьте условие в запрос:

ГДЕ Номенклатура.Родитель = &ГруппаНоменклатуры
Почему в выгрузке не показываются товары с нулевым остатком?

Это стандартное поведение большинства отчетов 1С. Чтобы включить нулевые остатки:

  1. В отчете "Ведомость по товарам" снимите галочку "Только ненулевые остатки" в настройках
  2. В программной выгрузке не используйте условие КоличествоОстаток > 0

Исключение — выгрузка для Wildberries, где нулевые остатки передавать не рекомендуется (они автоматически скрывают такие товары из продажи).

Как выгрузить остатки с учетом транзитных товаров?

Транзитные товары (находящиеся в пути между складами) не отражаются в стандартных отчетах по остаткам. Для их учета:

  • Используйте отчет "Остатки товаров в пути" (доступен в 1С:ERP и УТ 11)
  • Объедините данные с основными остатками через ОБЪЕДИНИТЬ в запросе
  • В 1С:Розница транзит учитывается автоматически при включенной настройке "Учитывать товары в пути" в параметрах учета
Можно ли настроить выгрузку остатков в Google Sheets?

Да, для этого есть два способа:

  1. Через CSV: Выгрузите остатки в CSV, затем импортируйте в Google Sheets через Файл → Импорт
  2. Через API: Используйте Google Apps Script с подключением к 1С через HTTP-сервис. Пример скрипта:
    function importFrom1C() {
    

    var url = "http://ваш-сервер/hs/exchange/остатки";

    var response = UrlFetchApp.fetch(url);

    var data = JSON.parse(response.getContentText());

    var sheet = SpreadsheetApp.getActiveSheet();

    sheet.getRange(1, 1, data.length, 3).setValues(

    data.map(item => [item.артикул, item.наименование, item.остаток])

    );

    }

Для автоматического обновления настройте триггер в Google Sheets (например, раз в час).

Как проверить, что выгруженные остатки совпадают с данными в 1С?

Для контроля точности выгрузки:

  1. Сравните количество строк в выгруженном файле с количеством позиций в отчете "Ведомость по товарам" (должно совпадать)
  2. Проверьте 5-10 случайных позиций вручную (артикул → остаток)
  3. Используйте обработку "Сравнение данных" из 1С:ИТС для автоматического сопоставления
  4. Для маркетплейсов сверьте данные в личном кабинете через 10-15 минут после выгрузки (учитывайте задержки обработки)

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