Как настроить многоуровневое ценообразование по клиентам и товарам в 1С:Управление торговлей 11

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

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

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

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

Особенности архитектуры ценообразования в 1С:УТ 11

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

  1. Регистр сведений ЦеныНоменклатуры не содержит измерения «Партнер» или «Клиент». Документ УстановкаЦенНоменклатуры фиксирует стоимость только в разрезе справочников ВидыЦен, Номенклатура, характеристик и упаковок. Задать цену одновременно на связку «Товар + Клиент» через стандартную установку цен невозможно.
  2. Ограничение формы подбора товаров. Если расчет стоимости завязан на механизм автоматических скидок и наценок, итоговая сумма не вычисляется в реальном времени внутри формы подбора. В подборе отображается цена, определенная по соглашению. Пересчет с учетом условий и вытеснений происходит только после переноса строк в табличную часть документа Товары при вызове команды Рассчитать скидки (наценки) или при проведении документа.

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

Вариант 1. Использование механизма «Уточнение цен по ценовым группам» в соглашениях

Этот вариант подходит, если критически важно видеть рассчитанную цену непосредственно в стандартном окне подбора номенклатуры до ее переноса в документ.

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

  1. Создание видов цен. Перейдем в раздел CRM и маркетинг → Настройки и справочники → Виды цен. Создадим базовый вид цены для обычных продаж. Для позиций с наценкой создадим расчетный вид цены, где способ задания цены настроим как Рассчитывать по формуле от других видов цен. Если для позиций должна задаваться конкретная фиксированная стоимость, создадим отдельный статический вид цены и зафиксируем значения документом УстановкаЦенНоменклатуры.
  2. Классификация номенклатуры по ценовым группам. В справочнике ЦеновыеГруппы выделим группы товаров, требующие особого ценообразования. В карточках соответствующих позиций номенклатуры укажем присвоенную ценовую группу.
  3. Настройка базовых условий в типовых соглашениях. В типовом соглашении с клиентами на закладке Условия продаж укажем базовый вид цены. Для выделенного списка товаров используем табличную часть Уточнение цен по ценовым группам, привязав спецгруппы товаров к соответствующим расчетным или статическим видам цен.
  4. Настройка условий по клиентам в индивидуальных соглашениях. Для клиентов, имеющих персональные цены на определенные товары, создадим ИндивидуальноеСоглашениеСКлиентом. В таблице Уточнение цен по ценовым группам индивидуального соглашения переопределим вид цены для требуемых ценовых групп.

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

Вариант 2. Реализация через подсистему автоматических скидок и наценок

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

Рассмотрим подробнее порядок настройки:

  1. Базовый вид цены (Пункт 1). В типовом соглашении об условиях продаж выбираем основной вид цены, который действует на все позиции по умолчанию.
  2. Выделенный список товаров (Пункт 2). В разделе CRM и маркетинг → Скидки (наценки) создаем автоматические скидки. Если требуется назначить жесткую стоимость, выбираем способ предоставления Специальная цена. Если требуется наценка или скидка, используем Скидка (наценка) процентом (для наценки указывается отрицательный процент). В условиях предоставления задаем список номенклатуры или используем динамический справочник СегментыНоменклатуры.
  3. Список товаров по клиентам (Пункт 3). Создаем аналогичные скидки/наценки со специальной ценой или процентом, но в условиях предоставления скидки указываем конкретного партнера через условие Получатель: Партнер либо назначаем их непосредственно внутри индивидуального соглашения с клиентом на вкладке Скидки (наценки) по соглашению.
  4. Настройка приоритетов совместного применения. Объединяем созданные правила в группу совместного применения с вариантом Вытеснение. Скидке для общего выделенного списка товаров присваиваем наивысший приоритет (помещаем выше в дереве). Правилу по клиенту назначаем более низкий приоритет.

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

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

← На главную