Почему в режиме РМК 1С:УТ 11.4 разрешена продажа ниже закупки и как это исправить?

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

Часто в практике работы с 1С:Управление торговлей 11.4 возникает ситуация, когда в обычных документах (например, в РеализацияТоваровУслуг) система жестко блокирует попытки продать товар по цене ниже закупочной, но стоит кассиру перейти в интерфейс РМК (Рабочее место кассира), как этот контроль таинственным образом исчезает. Разберем подробно, почему так происходит, и как правильно настроить систему, чтобы исключить убыточные продажи в рознице.

Поймем разницу между контролем в опте и рознице

Прежде всего, проанализируем ситуацию: в 1С механизмы контроля оптовых и розничных продаж разведены по разным модулям. Оптовые продажи опираются на настройки прав доступа и соглашения с клиентами, в то время как РМК — это специализированный интерфейс, оптимизированный под скорость работы. В рознице существует негласное правило: цена, зафиксированная в документе УстановкаЦенНоменклатуры, является приоритетной. Если менеджер установил розничную цену, система считает её «законной», даже если она ниже себестоимости. Рассмотрим, как заставить программу проверять рентабельность даже в этих условиях.

Шаг 1: Настройка минимально допустимых цен в маркетинге

Это самый важный этап, который часто упускают. Для того чтобы РМК «знал», ниже какой границы нельзя опускаться, нам необходимо явно указать этот предел в настройках маркетинга. Выполним следующие действия:

  1. Перейдем в раздел CRM и маркетинг — Настройки и справочники.
  2. Найдем пункт Настройки маркетинга.
  3. В открывшемся окне обратим внимание на поле Вид цены минимально допустимых цен продажи.

Если это поле пустое, то РМК не будет проверять цену, какую бы «Закупочную» цену вы ни создавали. Нам нужно выбрать здесь тот вид цены, который будет служить «дном». Например, создадим вид цены МинимальнаяЦена, в формуле которой будет указано [Закупочная] * 1.05 (закупка плюс 5% наценки). После выбора этого вида цены в настройках маркетинга, система начнет сопоставлять цену в чеке с этим эталоном.

Шаг 2: Настройка Типового соглашения для розницы

Рабочее место кассира всегда функционирует в контексте определенного соглашения (чаще всего это Типовое соглашение с розничными покупателями). Проанализируем настройки этого документа:

Шаг 3: Разграничение «Ручной скидки» и «Ручной цены»

Рассмотрим сценарий, когда кассир меняет не саму цену товара, а применяет огромную ручную скидку. В 1С:УТ 11.4 контроль минимальных цен может срабатывать на изменение поля Цена, но пропускать изменения в поле Скидка. Выясним причину в настройках прав:

  1. Зайдем в Администрирование — Настройки пользователей и прав — Дополнительные права пользователей.
  2. Выберем нужного пользователя (кассира).
  3. В разделе Продажи найдем параметр Максимальный процент ручной скидки.

Если у кассира стоит разрешение на скидку в 99%, он технически сможет продать товар практически за бесценок. Чтобы этого избежать, ограничьте максимальный процент ручной скидки до разумных пределов (например, 5-10%).

Шаг 4: Специальные права в интерфейсе РМК

Интерфейс РМК имеет свои собственные «внутренние» настройки прав, которые могут перекрывать общие настройки системы. Разберем, куда нужно посмотреть:

Перейдем в Продажи — Настройки интерфейса РМК. Здесь настраиваются права для ролей «Кассир» и «Старший кассир». Проверим наличие флага Разрешить цену ниже минимальной. Если этот флаг установлен, кассир сможет игнорировать все предупреждения системы. Его необходимо снять для рядовых сотрудников.

Шаг 5: Проблема «зашитой» логики и перепиленной конфигурации

Как упоминалось в обсуждении, если конфигурация «перепилена со всех сторон», стандартные методы могут не работать. В 1С контроль часто встраивается в процедуру ПередЗаписью() документа ЧекККМ. Однако в РМК проверка может происходить в момент нажатия кнопки «Оплата» или «Пробить чек».

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


// Пример упрощенной проверки в модуле формы РМК
&НаКлиенте
Процедура ПроверитьМинимальныеЦены(СтрокаТабличнойЧасти)
    
    МинимальнаяЦена = ПолучитьМинимальнуюЦенуСервер(СтрокаТабличнойЧасти.Номенклатура);
    
    Если СтрокаТабличнойЧасти.Цена < МинимальнаяЦена Тогда
        ТекстСообщения = "Цена товара " + СтрокаТабличнойЧасти.Номенклатура + 
                         " ниже минимально допустимой (" + МинимальнаяЦена + ")!";
        ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстСообщения);
        // Блокировка дальнейших действий
    КонецЕсли;

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

Такой код позволяет принудительно вызвать проверку в момент подбора товара в корзину РМК, не дожидаясь этапа пробития чека.

Резюме и выводы

Подводя итог, можно сказать, что решение проблемы «продаж ниже закупки» в РМК кроется в трех плоскостях:

  1. Маркетинговая настройка: обязательное указание «Вида цены минимально допустимых цен продажи» в общих настройках маркетинга.
  2. Права доступа: ограничение прав на ручные скидки и прав на отклонение от условий продаж именно в интерфейсе РМК.
  3. Актуальность данных: убедитесь, что документ УстановкаЦенНоменклатуры для закупочных цен введен и проведен, а кэш системы обновлен.

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

← На главную