Как настроить автоматический расчет цены продажи в 1С:УНФ в зависимости от характеристик товара?

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

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

Понимание проблемы и архитектурный подход

Многие пользователи ожидают, что в 1С можно настроить некую формулу вида БазоваяЦена + НаценкаСвойства1 + НаценкаСвойства2. Однако важно понимать: стандартная архитектура 1С:УНФ ориентирована на работу с конкретной Номенклатурой и её Характеристиками. Каждый уникальный вариант товара (стул с тканью 2 и опорой хром) с точки зрения системы — это отдельная учетная единица.

Метод 1: Использование характеристик номенклатуры (рекомендуемый)

Самый правильный путь, который обеспечит вам корректную работу с остатками и себестоимостью — это использование штатных Характеристик. Рассмотрим, как это реализовать:

  1. Включите использование характеристик в настройках номенклатуры.
  2. Для каждого сочетания свойств (например, «Ткань 2, Опора Хром») создайте отдельную Характеристику.
  3. С помощью документа Установка цен номенклатуры задайте для каждой такой комбинации свою фиксированную цену.

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

Метод 2: Программная автоматизация через расширения конфигурации

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

Логика работы будет строиться на событии ПриИзменении для полей выбора свойств. Рассмотрим примерный алгоритм действий:

Разберем структуру кода для обработчика:


// Пример логики в обработчике ПриИзменении свойств
Процедура ПриИзмененииСвойства(Элемент)
    БазоваяЦена = ПолучитьБазовуюЦену(Объект.Номенклатура);
    Наценка = РассчитатьНаценку(Объект.КатегорияТкани, Объект.ВидОпоры);
    Объект.Цена = БазоваяЦена + Наценка;
КонецПроцедуры

При использовании этого метода вы можете хранить наценки в отдельном справочнике или Регистре сведений. При выборе менеджером ткани 2-й категории, система программно будет добавлять 250 рублей к цене, установленной в карточке Номенклатуры.

Метод 3: Использование спецификаций и производства

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

Почему это важно для учета?

Анализируя ситуацию, важно помнить, что Управленческий учет требует четкого понимания, какой товар был продан. Если вы просто меняете цену «на лету» без привязки к конкретной Характеристике, вы потеряете детализацию по остаткам. Поэтому:

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

← На главную