В процессе оптовых и розничных продаж компании часто сталкиваются с необходимостью жесткого контроля ценообразования. Менеджеры по продажам в погоне за выполнением плана или под давлением клиентов могут необоснованно занижать цены, предоставляя избыточные скидки. Это напрямую снижает маржинальность бизнеса и может увести сделку в убыток.
В этой статье мы подробно разберем, как в программе «1С:Управление торговлей 11» (а также в родственных конфигурациях «1С:ERP» и «1С:Комплексная автоматизация 2») настроить автоматический запрет на проведение документов продажи (таких как «Заказ клиента», «Реализация товаров и услуг» или «Коммерческое предложение»), если цена в них оказалась ниже установленного минимума.
Для начала нам необходимо определить, какая именно цена будет считаться минимально допустимой для нашей компании. Это может быть фиксированная цена (например, «Минимальная розничная»), динамическая («Себестоимость + 5%») или любой другой вид цены, зарегистрированный в системе.
Выполним настройку по шагам:
Минимальная цена продажи. Настроим способ ее расчета (например, заполнение по закупкам или наценка на себестоимость).Минимальная цена продажи.По умолчанию в 1С администраторы и пользователи с полными правами могут игнорировать любые ограничения. Чтобы контроль цен заработал для обычных менеджеров, нам необходимо настроить их права доступа. Программа должна понимать, кому разрешено отклоняться от правил, а кому — нет.
Проанализируем этот процесс подробнее:
Отклонение от условий продаж (в некоторых релизах она может называться аналогично, отвечая за право продажи ниже минимальных цен).Теперь, если менеджер без этой роли попытается провести документ «Реализация товаров и услуг» или «Заказ клиента», где цена хотя бы одной номенклатурной позиции будет ниже значения, зарегистрированного в регистре Цены номенклатуры по типу Минимальная цена продажи, программа заблокирует проведение и выдаст предупреждающее сообщение.
Часто пользователи, перешедшие со старых версий программ (например, «1С:Управление торговлей 10.3», «УПП 1.3» или «КА 1.1»), ищут привычную настройку в дополнительных правах пользователей. Напомним, что в старой редакции существовала прямая опция: Не отпускать товар с ценой ниже определенного типа.
Выясним причину, почему вы не найдете ее в УТ 11. В современных управляемых формах 1С архитектура была полностью переписана. Теперь контроль завязан на гибкую систему соглашений, видов цен и ролей пользователей. Механизм стал более масштабируемым, хотя и требует понимания взаимосвязи настроек.
На практике стандартная схема контроля цен может иметь особенности, которые необходимо учитывать:
Если типовой механизм контроля цен кажется вам избыточным, неудобным или вы хотите, чтобы система работала в режиме предупреждения (сообщала о занижении цены, но не блокировала проведение), эту задачу можно решить с помощью создания небольшого расширения конфигурации.
Рассмотрим пример кода, который можно внедрить в процедуру проведения документа продажи для кастомной проверки цен:
&После("ОбработкаПроведения")
Процедура Расш_ОбработкаПроведенияКонтрольЦен(Отказ, РежимПроведения)
// Проверим, установлены ли полные права. Если да — контроль пропускаем.
Если РольДоступна("ПолныеПрава") Тогда
Возврат;
КонецЕсли;
Для Каждого СтрокаТовары Из ЭтотОбъект.Товары Цикл
// Получаем минимально допустимую цену для номенклатуры
МинимальнаяЦена = РегистрыСведений.ЦеныНоменклатуры.ПолучитьПоследнее(
ЭтотОбъект.Дата,
Новый Структура("Номенклатура, ВидЦены", СтрокаТовары.Номенклатура, Справочники.ВидыЦен.НайтиПоНаименованию("Минимальная цена продажи"))
).Цена;
Если ЗначениеЗаполнено(МинимальнаяЦена) И СтрокаТовары.Цена < МинимальнаяЦена Тогда
ТекстСообщения = СтрШаблон("Товар %1 продается по цене %2, что ниже минимально допустимой (%3)!",
СтрокаТовары.Номенклатура, СтрокаТовары.Цена, МинимальнаяЦена);
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения, ЭтотОбъект, "Товары[" + (СтрокаТовары.НомерСтроки - 1) + "].Цена");
Отказ = Истина; // Блокируем проведение документа
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Использование подобных расширений позволяет реализовать уникальные сценарии проверки, учитывающие специфику вашего бизнеса (например, контролировать наценку в разрезе конкретных брендов, групп номенклатуры или индивидуально по каждому складу).
В современных релизах конфигурации «1С:Управление торговлей 11.5» появился специализированный контур контроля минимальных розничных цен (МРЦ) для маркируемой продукции (табачные изделия, никотиносодержащая продукция, алкоголь). Этот контроль работает автоматически при интеграции с ИС МП (Честный Знак) и ЕГАИС.
Программа сверяет цены в чеках ККМ и оптовых документах с государственными реестрами минимальных цен. В данном случае никакие настройки прав пользователей не позволят обойти этот контроль, поскольку продажа ниже МРЦ является прямым нарушением законодательства и влечет за собой крупные штрафы для организации.