Как изменить цены на розничные в документе «Корректировка поступления» в 1С и почему этого делать не стоит?

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

При работе в розничной торговле на базе конфигурации «1С:Управление торговлей 10.3» (или аналогичных решениях на обычных формах, например, «1С:УПП 1.3») часто возникает классический конфликт интересов между методологией финансового учета и удобством работы линейного персонала в розничных точках. Типичный пример: оператор оформляет документ КорректировкаПоступления, в котором по умолчанию отражаются оптовые (закупочные) цены поставщика. Однако руководство или материально ответственные лица (продавцы на торговых точках) требуют, чтобы во всех внутренних документах и печатных формах (включая связанные счета-фактуры) фигурировали исключительно розничные цены, так как продавцы находятся на «подотчете по рознице» и оптовые цены их интересовать не должны.

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

---

Почему стандартная «Корректировка поступления» не может работать в розничных ценах

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

Если мы попытаемся принудительно подставить розничные цены в этот документ, система совершит движения по следующим регистрам:

  1. Регистр «Взаиморасчеты с контрагентами»: Программа рассчитывает долг перед поставщиком на основании сумм, указанных в документе корректировки. Если товар закупался по 100 рублей, а вы укажете в корректировке его розничную цену в 150 рублей, программа зафиксирует, что вы должны поставщику на 50 рублей больше за каждую единицу товара. Взаиморасчеты мгновенно «поплывут», и сверка с контрагентом станет невозможной.
  2. Регистр «Партии товаров на складах»: Корректировка поступления изменяет себестоимость партий. Если себестоимость товара будет искусственно завышена до розничной цены, программа некорректно рассчитает валовую прибыль при последующих продажах. Финансовый результат компании будет искажен: прибыль окажется заниженной, а затраты — завышенными.

Рассмотрим простой пример. Вы оплатили поставщику 1000 рублей и получили 10 единиц товара по цене 100 рублей. Затем вы обнаружили недовоз 1 единицы товара и решили сделать корректировку на 9 единиц. Но при этом в корректировке указали розничную цену в 150 рублей. Программа посчитает, что стоимость полученного товара составляет 9 * 150 = 1350 рублей. В результате, вместо того чтобы поставщик остался должен вам 100 рублей за недополученный товар, программа покажет, что это вы должны поставщику еще 350 рублей! Бухгалтерский и управленческий баланс при таком подходе сойтись не могут.

---

Специфика розничного склада (АТТ / НТТ) в 1С:УТ 10.3

Выясним, как устроен учет товаров в рознице. Если ваш магазин или торговая точка зарегистрированы в базе как розничный склад (Автоматизированная торговая точка — АТТ), то учет на таком складе ведется в розничных ценах. Но это не значит, что документ поступления должен заполняться розничными ценами! Цепочка документов в типовом решении выглядит следующим образом:

  1. Товар приходуется документом ПоступлениеТоваровУслуг по закупочной стоимости.
  2. Цены продажи фиксируются в системе с помощью документа УстановкаЦенНоменклатуры.
  3. Для отражения товаров на розничном складе по розничным ценам в обязательном порядке проводится документ ПереоценкаТоваровВРознице. Именно он делает движения по регистру ТоварыВРознице, начисляя торговую наценку и формируя розничную стоимость под отчет материально ответственным лицам (МОЛ).

Если изменить цены в самом документе корректировки поступления, система не сможет корректно рассчитать и списать торговую наценку. При проведении документа программа выдаст ошибку: "Для товара не задана цена АТТ! Необходимо выполнить переоценку!", либо зафиксирует неверные остатки по розничным ценам в регистре ТоварыВРознице.

---

Решение 1. Использование внешней печатной формы (ВПФ) — самый безопасный путь

Если перед вами стоит задача «скрыть» от продавцов оптовые цены и выдать им печатную форму накладной исключительно в розничных ценах, но при этом сохранить правильный финансовый учет в базе данных, лучшим решением будет создание внешней печатной формы.

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

  1. Получает список товаров из табличной части проводимого документа корректировки.
  2. Обращается к регистру сведений ЦеныНоменклатуры на дату документа.
  3. Находит розничную цену для каждой позиции номенклатуры по заданному типу цен (например, «Розничная»).
  4. Подставляет эти розничные цены в макет печатной формы (например, ТОРГ-12) и рассчитывает итоговую стоимость в розничных ценах.

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


// Функция получает розничные цены для списка товаров из документа
Функция ПолучитьРозничныеЦеныНоменклатуры(МассивТоваров, ДатаДокумента, ТипЦенРозничный) Экспорт
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |	ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
        |	ЦеныНоменклатурыСрезПоследних.Цена КАК ЦенаРозничная
        |ИЗ
        |	РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Период, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
        |ГДЕ
        |	ЦеныНоменклатурыСрезПоследних.Номенклатура В(&МассивТоваров)";
        
    Запрос.УстановитьПараметр("Период", ДатаДокумента);
    Запрос.УстановитьПараметр("ТипЦен", ТипЦенРозничный);
    Запрос.УстановитьПараметр("МассивТоваров", МассивТоваров);
    
    Возврат Запрос.Выполнить().Выгрузить();
КонецФункции

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

---

Решение 2. Корректировка остатков через складские документы (Списание и Оприходование)

В исходном обсуждении автор упоминает: «Корректировку делаю по другим причинам. Например, иногда забивают не то количество, не тот товар. Ранее редактировали прямо в поступлении, но иногда путаница получается. Теперь хочу через корректировку попробовать... Я не возвращаю поставщику ничего, меняю у себя, для себя».

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

Для исправления внутренних ошибок в 1С:УТ 10.3 предназначены специализированные складские документы. Посмотрим, как правильно оформить такие операции:

  1. Если обнаружена недостача товара (ввод лишнего количества оператором):

    Используйте документ СписаниеТоваров. При списании с розничного склада программа автоматически спишет товар по розничной стоимости и скорректирует учет у материально ответственного лица.

  2. Если обнаружены излишки товара (оператор забыл внести позицию):

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

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

Шаг 1. Выявление расхождения. По накладной поставщика должно быть 10 штук товара "А" по закупке 100 руб. Оператор ошибочно ввел 12 штук. Фактически на склад пришло 10 штук. Розничная цена товара — 150 руб.

Шаг 2. Оформление списания излишков. Создаем документ СписаниеТоваров на 2 штуки. Указываем розничный склад. Документ спишет товар по розничной цене 150 руб. с подотчета розничной точки, а по регистру партий спишется себестоимость 100 руб. Учет выровнен.

---

Решение 3. Использование механизма «Пересортица товаров»

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

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

Эти документы легко распечатать в розничных ценах прямо из типового функционала конфигурации. Продавцы увидят знакомые им печатные формы актов списания и оприходования (ТОРГ-16 и другие) с розничными ценами и без проблем подпишут документы расхождений.

---

Резюме: правила работы с розничными ценами в закупках

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

Запомните три золотых правила учета в 1С:УТ 10.3:

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

← На главную