Почему в 1С:УТ 11.4 не отображаются закупочные цены и обязательно ли создавать документ «Установка цен номенклатуры»?

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

В конфигурации 1С:Управление торговлей, редакция 11.4 (а также в ERP и Комплексной автоматизации) начинающие специалисты и пользователи часто сталкиваются с ситуацией: в настройках вида цены указан способ расчета по данным информационной базы (например, на основе цен поступления), но в заказах клиентов или в подборе товаров цена упорно остается пустой. Разберем подробно, как устроена подсистема ценообразования, почему «автоматического» подтягивания цен из закупок напрямую в продажи не происходит и какую роль в этом играет система компоновки данных (СКД).

Механизм работы цен в УТ 11: теория и практика

Для начала проанализируем ситуацию, описанную в теме. Пользователь настраивает Вид цены, выбирает способ расчета «Произвольный запрос к данным ИБ» и стандартную схему Цены поступления. Казалось бы, логика системы должна быть следующей: при открытии документа продажи программа видит настройку, выполняет запрос к последнему документу Приобретение товаров и услуг и подставляет цену. Однако это не так.

В 1С:УТ 11 существует жесткое разделение между двумя сущностями:

  1. Данные о закупках: Это факты хозяйственной деятельности, которые записываются документами поступления в регистры накопления (например, ВыручкаИСебестоимостьПродаж или специализированные регистры закупок).
  2. Цены продажи (Прайс-лист): Это управленческие данные, которые хранятся исключительно в регистре сведений ЦеныНоменклатуры.

Рассмотрим подробнее: когда менеджер создает Заказ клиента или Реализацию товаров и услуг, система обращается только к регистру сведений ЦеныНоменклатуры на определенную дату. Если в этом регистре нет записи по данному виду цены для конкретного товара, колонка «Цена» останется пустой. Никакие динамические расчеты «на лету» из документов поступления в момент продажи не производятся из соображений производительности и архитектурной целостности.

Зачем тогда нужен «Произвольный запрос к данным ИБ»?

Выясним причину существования этой настройки. Способ расчета «Произвольный запрос к данным ИБ» — это не способ отображения цены, а алгоритм заполнения. Смысл этой схемы заключается в автоматизации рутинного процесса ввода цен. Рассмотрим, как это работает по шагам:

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

Таким образом, СКД — это всего лишь «помощник», который избавляет вас от необходимости вручную смотреть в бумажную накладную и перебивать цифры в прайс-лист.

Чем чреват отказ от создания документов «Установка цен»?

Проанализируем последствия, если игнорировать создание документов установки цен и пытаться работать без актуального регистра ЦеныНоменклатуры:

Отличие «Цен номенклатуры» от «Цен поставщиков»

Важно не путать эти понятия. В 1С:УТ 11.4 есть отдельный функционал регистрации цен поставщиков. В документе Приобретение товаров и услуг можно установить флаг «Регистрировать цены поставщика». В этом случае данные запишутся в другой регистр — ЦеныНоменклатурыПоставщиков.

Однако, даже если вы зарегистрировали цену поставщика, она все равно не станет вашей «Закупочной ценой» для продажи автоматически. Вам потребуется создать документ Установка цен номенклатуры, где в качестве способа заполнения можно будет указать данные из цен поставщиков. Это лишний раз подтверждает правило: любая цена, используемая в документах продажи, должна пройти через «Установку цен».

Как автоматизировать процесс?

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

Вариант 1: Использование регламентного задания

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


// Пример логики для автоматического создания документа
ДокУстановка = Документы.УстановкаЦенНоменклатуры.СоздатьДокумент();
ДокУстановка.Дата = ТекущаяДата();
// Добавление видов цен
НоваяСтрокаВида = ДокУстановка.ВидыЦен.Добавить();
НоваяСтрокаВида.ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию("Закупочная");

// Вызов процедуры типового заполнения по СКД
// (используются типовые механизмы конфигурации)
ПараметрыЗаполнения = Обработки.ФормированиеЦенНоменклатуры.ПолучитьПараметрыЗаполнения();
Обработки.ФормированиеЦенНоменклатуры.ЗаполнитьЦеныПоДаннымИБ(ДокУстановка, ПараметрыЗаполнения);

ДокУстановка.Записать(РежимЗаписиДокумента.Проведение);

Вариант 2: Ввод на основании

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

Резюме

Мы выяснили, что в 1С:УТ 11.4 не существует «динамических» цен для документов продажи, которые берутся напрямую из закупки без записи в регистр. Документ Установка цен номенклатуры является обязательным связующим звеном. Использование СКД «Цены поступления» — это эффективный инструмент автоматизации заполнения этого документа, но он не заменяет сам факт фиксации цены в системе. Для корректной работы менеджеров и корректного расчета прибыли всегда поддерживайте регистр сведений ЦеныНоменклатуры в актуальном состоянии.

← На главную