Как привязать цены к организации в 1С:Управление торговлей 11

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

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

Это создает серьезные неудобства, когда у компании есть несколько юридических лиц (например, ИП на патенте/упрощенке и ООО на ОСНО), закупки по которым происходят на разных условиях, а конечные цены продажи существенно отличаются из-за налоговой нагрузки и допрасходов. В этой статье мы подробно разберем, как решить задачу разделения цен по организациям, не прибегая к дублированию позиций в справочнике Номенклатура.

Причина проблемы: почему в 1С нет привязки цены к юрлицу

Проанализируем ситуацию с точки зрения архитектуры 1С. Разработчики фирмы 1С заложили концепцию, согласно которой номенклатура — это единый каталог товаров, а организация — это лишь юридическая оболочка. Прайс-лист (виды цен) компании в типовом виде считается единым. Однако на практике управленческий учет требует жесткого разделения цен. Выясним, какими методами можно обойти это ограничение.

---

Решение 1. Использование префиксов видов цен и типовых соглашений (Рекомендуемый типовой метод)

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

Разберем этот метод по шагам:

  1. Создание видов цен с префиксами:

    Перейдем в раздел CRM и маркетинг — Настройки и справочники — Виды цен. Вместо одного общего вида цены продажи создадим отдельные виды цен для каждой организации. Для наглядности добавим к ним понятные префиксы:

    • ИП_Закупочная и ИП_Розничная
    • ООО_Закупочная и ООО_Опт_Безнал
  2. Настройка правил продаж через соглашения:

    Перейдем в раздел CRM и маркетинг — Типовые соглашения с клиентами. Создадим два разных соглашения:

    • Соглашение для ИП: В шапке соглашения укажем организацию ИП, в поле «Сегмент партнеров» можно ограничить круг лиц, а на вкладке «Условия продаж» жестко зафиксируем вид цен ИП_Розничная и график оплаты (например, только наличный расчет).
    • Соглашение для ООО: Укажем организацию ООО, выберем вид цен ООО_Опт_Безнал и установим безналичный вариант оплаты.
  3. Защита от ошибок менеджеров:

    Чтобы исключить человеческий фактор, когда менеджер пытается продать товар от ООО по ценам ИП, необходимо настроить права доступа. В профиле групп доступа пользователей снимем флаг «Отклонение от условий продаж». Таким образом, при выборе соглашения в документе Заказ клиента или Реализация товаров и услуг система автоматически подставит нужную организацию и вид цены, заблокировав возможность их ручного изменения.

---

Решение 2. Использование схемы межфирменных продаж (Интеркампани)

Рассмотрим ситуацию, когда закупки выгоднее делать на ИП (так как там закупочные цены ниже), а отгружать товар клиентам приходится от имени ООО. Чтобы не оформлять кучу ручных документов перемещения и не путаться в ценах, настроим механизм Интеркампани.

Выполним следующие настройки:

  1. Включим опцию межфирменных продаж в меню НСИ и администрирование — Настройка НСИ и разделов — Финансовый результат и контроллинг — Межфирменные продажи.
  2. Настроим схему передачи товаров: укажем, что ООО имеет право продавать товар, принадлежащий ИП.
  3. Для автоматического расчета стоимости передачи создадим специальный вид цены (например, Цена передачи ИП-ООО). В настройках этого вида цены укажем способ расчета: «Цена поступления + процент» или «По себестоимости».
  4. В конце отчетного периода (месяца) запустим регламентную обработку «Оформление передач товаров». Система сама проанализирует продажи ООО, определит остатки, закупленные на ИП, и создаст документы Передача товаров между организациями по заранее настроенным ценам.

---

Решение 3. Расчет цен по себестоимости конкретной организации через СКД

Часто возникает вопрос: как правильно рассчитать отпускную цену, если она базируется на себестоимости закупки, а себестоимость у ИП и ООО разная? Стандартный шаблон расчета «Цена поступления» в схеме компоновки данных (СКД) не умеет разделять закупки по организациям «в лоб».

Посмотрим, как обойти это ограничение с помощью произвольного запроса к информационной базе в УТ 11.5:

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

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


ВЫБРАТЬ
    РегистрСтоимость.Номенклатура КАК Номенклатура,
    РегистрСтоимость.Характеристика КАК Характеристика,
    ВЫРАЗИТЬ(РегистрСтоимость.СтоимостьОстаток / РегистрСтоимость.КоличествоОстаток КАК ЧИСЛО(15, 2)) КАК Цена
ИЗ
    РегистрНакопления.СтоимостьТоваров.Остатки(&Период, Организация = &ОрганизацияИП) КАК РегистрСтоимость

Используя такие формулы, мы получим динамический расчет: вид цены ООО_Закупочная будет автоматически рассчитываться на основе партий ООО, а ИП_Закупочная — на основе партий ИП.

---

Решение 4. Автоматический фильтр видов цен через расширение конфигурации

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

Проанализируем алгоритм работы расширения:

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

Пример кода на встроенном языке 1С для обработчика расширения:


&НаКлиенте
Процедура Расш_ОрганизацияПриИзмененииПосле(Элемент)
    // Получаем текущую организацию из документа
    ТекущаяОрганизация = Объект.Организация;
    
    // Если организация заполнена, устанавливаем параметры выбора для поля ВидЦены
    Если ЗначениеЗаполнено(ТекущаяОрганизация) Тогда
        НовыйПараметр = Новый ПараметрВыбора("Отбор.СвязаннаяОрганизация", ТекущаяОрганизация);
        НовыеПараметры = Новый Массив;
        НовыеПараметры.Добавить(НовыйПараметр);
        
        Элементы.ВидЦены.ПараметрыВыбора = Новый ФиксированныйМассив(НовыеПараметры);
    Иначе
        Элементы.ВидЦены.ПараметрыВыбора = Новый ФиксированныйМассив(Новый Массив);
    КонецЕсли;
КонецПроцедуры

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

---

Резюме: какой метод выбрать?

Мы проанализировали четыре принципиально разных подхода к решению задачи. Выбор конкретного варианта зависит от бизнес-процессов вашей компании:

← На главную