Почему документ 'Поступление товаров' в 1С Розница 2.3 формирует движения по регистру 'Товары к поступлению' вместо 'Товары на складах'?

Пользователь 1С v8.3 (Управляемые формы) 1С:Розница Управленческий учет Торговля и дистрибуция
← На главную

Мы сталкиваемся с распространенной ситуацией в 1С Розница 2.3, когда после проведения документа «Поступление товаров» ожидаемые движения по регистру накопления «Товары на складах» не формируются. Вместо этого, или в дополнение к этому, мы наблюдаем движения по регистру «Товары к поступлению». Это приводит к некорректному отображению остатков на складе, затрудняет оперативный учет и может вызывать ошибки при планировании закупок и продаж. Давайте разберем эту проблему подробно, выясним ее корни и найдем эффективное решение, основываясь на опыте пользователей и системной логике 1С.

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

Понимание регистров накопления «Товары на складах» и «Товары к поступлению»

Прежде чем углубляться в решение, важно ясно понимать предназначение двух ключевых регистров, участвующих в учете товарных запасов в 1С Розница. Корректное разграничение их функций позволяет нам точно диагностировать проблему.

  1. Регистр накопления «Товары на складах»

    Этот регистр является фундаментом оперативного складского учета. Он предназначен для отражения фактического наличия товаров на конкретных складах нашей компании. Когда товар физически поступает на склад (приемка) или списывается с него (например, при продаже, внутреннем перемещении, списании по порче), движения записываются именно в этот регистр. Он всегда показывает, сколько товара фактически находится на остатке и доступно для дальнейших операций. Отчеты, построенные на данных этого регистра, такие как «Остатки товаров», позволяют нам видеть актуальные данные о товарах, доступных для реализации, внутреннего потребления или других операций. Если в данном регистре нет движений после проведения документа поступления, это значит, что система по какой-то причине не учла товар на физическом остатке склада.

  2. Регистр накопления «Товары к поступлению» (или «Товары к получению на склады»)

    Данный регистр играет ключевую роль в двухфазной, или ордерной, схеме оформления складских операций. Его основная задача — фиксировать информацию о товарах, которые ожидаются к поступлению на склад. Движения по этому регистру формируются на основании документов, которые инициируют процесс поступления (например, документ «Поступление товаров» или «Заказ поставщику»), но еще не подтверждают фактическую приемку товара кладовщиком. По сути, этот регистр отражает "товары в пути", или товары, по которым существует юридический документ (накладная, договор), но физически они еще не оприходованы и, следовательно, не доступны для использования или продажи. Если мы видим движения только по этому регистру, это означает, что товар документально "заказан" или "отправлен поставщиком", но еще не "принят на склад" кладовщиком.

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

Механизм работы ордерной схемы оформления складских операций

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

  1. Назначение ордерной схемы

    Основное преимущество ордерной схемы заключается в возможности разделения ответственности и информационных потоков внутри предприятия. Рассмотрим несколько ключевых аспектов:

    • Разделение функций: Менеджер по закупкам может оформлять финансовые документы (например, «Поступление товаров»), не имея прямого доступа к информации о фактических остатках на складе. В то же время кладовщик, ответственный за фактический прием товара, работает с отдельным складским ордером, фокусируясь исключительно на количестве и качестве принимаемых позиций, и может не видеть закупочных цен, что повышает безопасность данных.
    • Гибкость учета: Ордерная схема незаменима, когда фактическое поступление или отгрузка товара и оформление первичных документов разнесены во времени. Например, документы могут быть оформлены заранее, а товар поступит только через несколько дней.
    • Частичные поступления: Она также полезна, если товар поступает или отгружается частями, а один финансовый документ поступления/реализации должен быть закрыт только после полной обработки всех частей поставки.
    • Контроль и минимизация ошибок: Внедрение двух этапов (документ и ордер) позволяет нам добавить дополнительный уровень контроля, уменьшая вероятность ошибок в учете запасов.
  2. Принцип работы при поступлении товаров

    При использовании ордерной схемы процесс поступления товара разбивается на два основных этапа:

    1. Оформление документа «Поступление товаров» (или «Приобретение товаров и услуг»)

      На первом этапе менеджер или бухгалтер создает документ «Поступление товаров». Этот документ содержит полную информацию о поставщике, номенклатуре, количестве и ценах. При его проведении, если для данного магазина или склада включена ордерная схема, формируются движения по регистру «Товары к поступлению». Это означает, что система "знает" о будущей поставке и эти товары ожидаются, но они еще не числятся на фактическом остатке склада и не доступны для продажи.

    2. Создание и проведение документа «Приходный ордер на товары»

      На втором этапе кладовщик, основываясь на информации из «Поступления товаров» или «Заказа поставщику», формирует и проводит документ «Приходный ордер на товары». Именно этот складской документ отражает фактический факт приемки товара на склад, после физической проверки и размещения. При его проведении система делает движения по регистру «Товары на складах» (увеличение фактического остатка) и, одновременно, сторнирует (уменьшает) движения по регистру «Товары к поступлению», закрывая ожидаемое поступление. Таким образом, товар становится доступным для дальнейших операций, и мы видим его на фактическом остатке.

Основные причины проблемы и ее решение

В нашем случае проблема заключается в том, что документ «Поступление товаров», который по логике должен формировать движения в регистр ожидаемого поступления, делает это корректно. Однако последующий этап, который должен перевести товар в фактические остатки (то есть сформировать движения по регистру «Товары на складах»), либо не происходит вовсе, либо его функциональность нарушена. Зачастую это происходит из-за некорректных настроек ордерной схемы, которые могут "зависнуть" или быть неверно установленными.

Автором темы было обнаружено, что основной причиной оказалось отключенное состояние флага использования ордерной схемы, которое, возможно, было некорректно установлено или сброшено во время миграции данных. Несмотря на то, что флаг мог быть визуально отключен в интерфейсе, внутренние механизмы системы по какой-то причине продолжали работать по принципу ордерной схемы, что приводило к движениям только в регистр «Товары к поступлению» без последующего перемещения в «Товары на складах». По сути, система ожидала приходный ордер, но не информировала об этом, так как флаг был отключен.

Мы предлагаем следующий алгоритм действий для решения данной проблемы:

  1. Проверка общих настроек ордерной схемы в конфигурации

    Сначала нам необходимо убедиться, что общая функциональная опция использования ордерной схемы в конфигурации 1С Розница установлена корректно. Перейдите в раздел «Администрирование», затем выберите «Настройки параметров учета» или «Запасы и закупки» (в зависимости от версии и интерфейса). Здесь мы ищем флажок «Использовать ордерную схему» или аналогичную настройку, управляющую общим включением ордерного учета. Убедитесь, что он установлен в соответствии с вашими потребностями. Если вы не планируете использовать ордерную схему вообще, убедитесь, что флажок снят. В нашем случае, даже если он был снят, его переключение (например, включение и последующее отключение, или наоборот) помогло восстановить корректное поведение системы. Это действие часто помогает "освежить" внутренние параметры и кэши.

  2. Проверка настроек ордерной схемы на уровне магазина и склада

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

    Перейдите в раздел «НСИ» (Нормативно-справочная информация), затем «Предприятие», и выберите «Магазины». Откройте карточку того магазина, в который производится поступление товаров, и который является источником проблемы.

    На вкладке, связанной с настройками склада или учета (часто это вкладка «Склады», «Настройка склада» или «Настройки ордерной схемы»), найдите опцию «Использовать ордерную схему» и проверьте ее состояние для поступлений. Важно, чтобы эта настройка соответствовала вашим ожиданиям и общей логике бизнес-процессов:

    • Если вы НЕ хотите использовать ордерную схему для данного магазина/склада, убедитесь, что флажок «Использовать ордерную схему – При поступлении» снят.
    • Если вы хотите использовать ордерную схему, убедитесь, что флажок установлен. В этом случае, после проведения «Поступления товаров», вам потребуется создать и провести «Приходный ордер на товары» для фактического оприходования на склад.

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

  3. Перепроведение документов после изменения настроек

    После внесения изменений в настройки ордерной схемы (как общие, так и для конкретного магазина/склада), критически важно перепровести все затронутые документы «Поступление товаров», которые были оформлены после возникновения проблемы. Это позволит системе заново сформировать движения регистров в соответствии с актуальными настройками. Мы можем сделать это пошагово:

    1. Откройте список документов «Поступление товаров» в разделе «Закупки».
    2. Выберите один из проблемных документов, который не сформировал движения по «Товары на складах».
    3. Отмените его проведение (кнопка «Отменить проведение» или соответствующая команда в меню «Еще»).
    4. Повторно проведите документ (кнопка «Провести» или «Провести и закрыть»).
    5. Проверьте движения документа по регистрам. Для этого в документе есть кнопка «Движения документа» или «Перейти к движениям» (обычно находится в меню «Еще» или под кнопкой «Провести и закрыть»). Убедитесь, что теперь появились движения по регистру «Товары на складах» и, если ордерная схема не используется, отсутствуют движения по «Товары к поступлению».

    Если один документ перепровелся корректно, вы можете использовать функционал группового перепроведения документов, если таковое предусмотрено в вашей конфигурации или специальными обработками (например, «Групповое изменение реквизитов», с отбором по типу документа и последующей операцией проведения).

Рассмотрим пример, как это может выглядеть в коде 1С, иллюстрирующий логику проведения документа «Поступление товаров»:


// Фрагмент кода, иллюстрирующий логику проведения документа "Поступление товаров"
// (Для общей демонстрации, реальный код в типовой конфигурации может быть сложнее)

Процедура ОбработкаПроведения(Отказ, РежимПроведения)

    // Инициализируем флаг использования ордерной схемы по умолчанию
    Перем ИспользоватьОрдернуюСхемуПоступления;
    ИспользоватьОрдернуюСхемуПоступления = Ложь; 

    // Получаем текущие настройки ордерной схемы для магазина/склада документа
    // Логика получения может зависеть от версии конфигурации и храниться:
    // - В настройках самого Магазина (элемент справочника "Магазины")
    // - В функциональных опциях системы (Администрирование -> Настройки запасов и закупок)
    // - На уровне Склада (элемент справочника "Склады")

    // Примерная логика получения настройки:
    Если ЗначениеЗаполнено(Склад) Тогда
        ПараметрыСклада = Склад.ПолучитьПараметрыУчета(); // Предполагаем наличие такого метода или реквизита
        Если ПараметрыСклада.ИспользоватьОрдернуюСхемуПоступления Тогда
            ИспользоватьОрдернуюСхемуПоступления = Истина;
        КонецЕсли;
    КонецЕсли;

    // Если ордерная схема включена для данного поступления
    Если ИспользоватьОрдернуюСхемуПоступления Тогда
        // Движения идут в регистр "ТоварыКПоступлению"
        Движения.ТоварыКПоступлению.Записывать = Истина;
        Для Каждого ТекСтрокаТовары Из Товары Цикл
            Движение = Движения.ТоварыКПоступлению.Добавить();
            Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
            Движение.Период = Дата;
            Движение.Магазин = Магазин; // Или Склад, в зависимости от измерений
            Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
            Движение.Характеристика = ТекСтрокаТовары.Характеристика;
            Движение.Количество = ТекСтрокаТовары.Количество;
            Движение.Цена = ТекСтрокаТовары.Цена;
            Движение.Сумма = ТекСтрокаТовары.Сумма;
            // ... другие измерения и ресурсы, если они есть в регистре "ТоварыКПоступлению" ...
        КонецЦикла;
        // Важно: Движений по "ТоварыНаСкладах" здесь не будет. 
        // Их сформирует последующий документ "Приходный ордер на товары".
    Иначе
        // Если ордерная схема отключена, движения идут напрямую в регистр "ТоварыНаСкладах"
        Движения.ТоварыНаСкладах.Записывать = Истина;
        Для Каждого ТекСтрокаТовары Из Товары Цикл
            Движение = Движения.ТоварыНаСкладах.Добавить();
            Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
            Движение.Период = Дата;
            Движение.Магазин = Магазин; // Или Склад, в зависимости от измерений
            Движение.Номенклатура = ТекСтрокаТовары.Номенклатура;
            Движение.Характеристика = ТекСтрокаТовары.Характеристика;
            Движение.Количество = ТекСтрокаТовары.Количество;
            Движение.ВидЦены = ВидЦеныПродажи; // Если регистр хранит цену
            Движение.Цена = ТекСтрокаТовары.Цена;
            Движение.Сумма = ТекСтрокаТовары.Сумма;
            // ... другие измерения и ресурсы, если они есть в регистре "ТоварыНаСкладах" ...
        КонецЦикла;
        // Важно: Движений по "ТоварыКПоступлению" здесь не будет.
    КонецЕсли;

    // ... дальнейшая логика проведения документа, не связанная с движениями товаров ...

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

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

Дополнительные аспекты, которые стоит проверить

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

  1. Вид склада

    Убедитесь, что для склада, указанного в документе «Поступление товаров», корректно установлен «Вид склада» (например, «Розничный» или «Оптовый»). Эта настройка доступна в карточке элемента справочника «Склады». Если вид склада не определен или установлен некорректно, это может повлиять на логику формирования движений по регистрам, особенно если в конфигурации предусмотрены специфические правила для разных видов складов или для их взаимодействия с другими подсистемами (например, с финансовым учетом или учетом в разрезе организаций). Мы должны убедиться, что вид склада соответствует его реальному назначению.

  2. Тип номенклатуры

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

  3. Влияние расширений конфигурации

    В исходной теме был приведен обширный список расширений. Несмотря на то, что удаление всех расширений не решило проблему в конкретном случае автора, наличие расширений всегда является потенциальным источником проблем. Расширения могут перехватывать или модифицировать стандартную логику проведения документов, в том числе влиять на формирование движений по регистрам. Это может быть как целенаправленное изменение, так и непредвиденный побочный эффект. Если проблема возникает при активных расширениях, мы рекомендуем следующий порядок действий:

    1. Отключить все расширения в разделе «Администрирование» -> «Расширения конфигурации» и проверить поведение системы на одном из проблемных документов.
    2. Если без расширений проблема исчезает, включать их по одному или группами, чтобы выявить проблемное расширение.
    3. Проанализировать код выявленного проблемного расширения на предмет модификации процедур проведения документов (например, модуля объекта документа «Поступление товаров») или работы с регистрами «Товары на складах» и «Товары к поступлению». Возможно, потребуется связаться с разработчиком расширения.

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

  4. Корректность переноса данных

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

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

Заключение

Мы видим, что проблема с неправильным формированием движений по регистрам «Товары на складах» и «Товары к поступлению» в 1С Розница 2.3 чаще всего связана с неверными или "зависшими" настройками ордерной схемы. Понимание принципов работы этих регистров и механизма ордерной схемы является ключевым для успешной диагностики и решения подобных ситуаций.

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

← На главную