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