Как добавить вторую цену (дисконтную) в ценник УТ 11.4?

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

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

Вариант 1: Использование дополнительных реквизитов

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

  1. Перейдем в НСИ и администрирование — Администрирование — Общие настройки — Дополнительные реквизиты и сведения.
  2. Создадим новый дополнительный реквизит для справочника Номенклатура с типом значения Число.
  3. Назначим этот реквизит товарам, для которых требуется печать второй цены.
  4. В редакторе шаблонов ценников мы теперь сможем добавить этот реквизит как отдельное поле.

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

Вариант 2: Доработка запроса СКД через расширение конфигурации

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

Рассмотрим по шагам, как мы можем модифицировать вывод данных:

  1. Создадим новое Расширение конфигурации и добавим в него стандартный макет ценника для доработки.
  2. В СКД макета добавим новый набор данных — запрос. Нам потребуется обратиться к регистру сведений ЦеныНоменклатуры или ДействующиеСкидки.
  3. Напишем запрос, который будет вычислять скидочную цену. Например, если мы знаем, что скидка всегда составляет 5%, мы можем применить следующий логический подход:

ВЫБРАТЬ
    ЦеныСрезПоследних.Цена * 0.95 КАК ЦенаСоСкидкой
ИЗ
    РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&Период, ВидЦены = &ОсновнойВидЦены) КАК ЦеныСрезПоследних

Нюансы реализации:

Вариант 3: Использование видов цен

Архитектурно верным решением в 1С:УТ является создание отдельного Вида цены. Мы можем настроить его так, чтобы он автоматически рассчитывался от основного вида цен по формуле (-5%).

При печати ценника мы сможем выбрать оба вида цен — Основной и Дисконтный. Если стандартный редактор шаблонов не дает возможности вывести два разных вида цены, мы можем создать пользовательский макет в режиме Предприятие, где выведем параметры Цена1 и Цена2, привязав их к соответствующим видам цен в настройках отчета.

Резюме:

Мы рассмотрели три подхода к решению задачи. Выбор зависит от ваших целей: если нужно быстрое решение без привлечения программиста — используйте Дополнительные реквизиты. Если же требуется стабильная работа и автоматизация — лучше всего воспользоваться Расширением конфигурации и внести правки в СКД макета ценника. Это обеспечит корректный расчет цен и профессиональный вид печатных форм.

← На главную