Как настроить индивидуальные управляемые скидки для каждой строки чека в 1С:Розница 2.3?

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

В процессе работы с программой 1С:Розница 2.3 многие пользователи сталкиваются с задачей, когда кассиру необходимо самостоятельно определять размер скидки для каждой конкретной позиции в чеке. Например, на первую строку нужно установить скидку 30%, на вторую — 15%, а на третью — 10%. Однако стандартная настройка управляемых скидок часто ведет себя непредсказуемо: при назначении скидки на одну позицию система автоматически применяет её ко всему документу.

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

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

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

  1. Нажмем кнопку «Создать» и выберем тип скидки, например, «Процент».
  2. В поле «Размер скидки» укажем нужный номинал (например, 10%).
  3. Критически важный момент: в поле «Область предоставления» необходимо выбрать значение В строке. Если оставить значение «В документе», скидка всегда будет применяться ко всей сумме чека.
  4. Установим флаг Назначается вручную. Это переводит скидку в разряд управляемых, позволяя кассиру выбирать её из списка в РМК.
  5. Вкладку «Условия предоставления» оставим пустой, так как право выбора мы делегируем продавцу.

Повторим эти действия для всех необходимых номиналов скидок (15%, 30% и т.д.).

Шаг 2: Настройка групп совместного применения скидок

Часто проблема кроется не в самой скидке, а в том, как она взаимодействует с другими правилами. Разберем работу групп совместного применения. Все созданные нами скидки должны находиться в одной папке (группе). Посмотрим на настройки этой группы:

Если для группы выбран вариант Максимум или Сложение, система может некорректно интерпретировать строчные скидки при наличии общих скидок на чек. Для управляемых скидок по строкам рекомендуется использовать вариант Вытеснение, чтобы ручной выбор кассира был приоритетнее автоматических расчетов. Проанализируем иерархию: если управляемая скидка находится внутри группы с автоматическими скидками, проверьте, чтобы приоритет управляемой скидки был выше.

Шаг 3: Настройка дополнительных прав пользователя

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

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

Шаг 4: Порядок действий кассира в интерфейсе РМК

Рассмотрим правильный алгоритм работы кассира, чтобы избежать автоматического распределения скидки на весь список товаров. Проблема «одинаковой скидки на все строки» часто возникает из-за неверной последовательности действий:

  1. Кассир добавляет товары в список.
  2. Важно: сначала нужно выделить курсором (нажать мышкой или перейти стрелками) ту конкретную строку, к которой должна быть применена скидка.
  3. Нажать кнопку Управляемые скидки (или комбинацию клавиш Ctrl+F8).
  4. В открывшемся окне выбрать нужную скидку.
  5. Если после этого кассир нажмет общую кнопку «Рассчитать скидки», система может сбросить ручные настройки, если в базе есть более приоритетные автоматические скидки.

Шаг 5: Анализ программных ошибок и обходные пути

Проанализируем ситуацию, описанную пользователями: «ставлю на одну строку 10%, на вторую 30%, а система ставит везде 30%». Это типичное поведение для некоторых релизов 1С:Розница 2.3 (начиная с 2.3.10), где был замечен баг интерфейса РМК. При выборе управляемой скидки форма выбора не всегда корректно передает индекс текущей строки обратно в документ ЧекККМ.

Способ обхода №1: Использование ручных скидок.
Вместо «Управляемых скидок» (которые являются предопределенными шаблонами) можно включить использование «Ручных скидок». В настройках РМК разрешите редактирование колонки «% Ск.». В этом случае кассир просто вводит число в ячейку строки. Это работает стабильно и не требует сложных настроек маркетинговых акций.

Способ обхода №2: Минимальное условие предоставления.
Попробуйте добавить к управляемой скидке формальное условие За разовый объем продаж со значением «более 0.01 руб.». Иногда это заставляет движок скидок более жестко привязываться к конкретной номенклатурной позиции в строке, предотвращая распространение правила на весь документ.

Способ обхода №3: Промокоды.
Если работа по строкам критична, можно использовать механизм промокодов. Создается правило, которое срабатывает при вводе определенного кода. Кассир может «пропикивать» карту скидки или вводить код именно для выбранной позиции. Этот механизм в платформе 8.3 реализован более изолированно от общего расчета чека.

Техническое резюме

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

  1. Область предоставления в объекте СкидкаНаценка установлена как В строке.
  2. Группа совместного применения имеет корректный приоритет (желательно Вытеснение).
  3. В настройках РМК и дополнительных правах отсутствуют запреты на редактирование строк.

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

← На главную