Цены на наборы и комплекты могут понадобиться, если стоит задача сформировать прайс-лист на товары, или выгрузить цены на сайт. Данная разработка создана для решения задачи ценообразования динамических наборов и комплектов.
Пересчет цен на наборы и комлекты осуществляется в трех случаях:
- При создании или редактировании набора/варианта комплектации,
- При изменении цен на исходные комплектующие,
- При необходимости пересчета цен на существующие наборы или комплекты.
Данная разработка состоит из расширения и обработки. Сначала устанавливается расширение, для корректной работы нужно снять галку Безопасный режим:

Форма обработки состоит из трех команд:
- Настройки,
- Очередь наборов и комплектов на пересчет цен,
- Пересчет цен.
Для клиент-серверных баз можно настроить расписание для регламентного задания по пересчету цен.

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

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

Рассмортим механизм автоматического пересчета цен на комплект при изменении варианта комплектации на примере номенклатуры _Набор сладостей. У данной номенклатуры есть вариант комплектации:

Изменим количество комплектующих и запишем карточку варианта комплектации.

В результате данный вариант комплектации добавляется в очередь на пересчет цен.


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

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

После того, как в очередь добавлены варианты комплектации, на которые нужно пересчитыть цены, необходимо выполнить третью команду обработки Пересчет цен. Для дальнейшего примера оставим только _Набор сладостей.

Появляется окно с сообщением о состоянии выполнения команды по пересчету цен:

По завершению команды увидим сообщение о том, что действие выполнено:

Автоматически создан и проведен документ Установка цен номенклатуры по заданным в настройках видам цен. В списке документов видим комментарий Ценообразование наборов и комплектов, который говорит о том, что документ создан обработкой по пересчету цен:


Пользователи получат уведомление об изменении цен на электронную почту с прикрепленным файлом Excel:


В телеграм придет сообщение об успешной установке цен на наборы/комплекты с вложенным файлом Excel:


Из очереди на пересчет цен данный вариант комплектации удаляется.
Рассмотрим пример, когда на какую-то комплектующую не установлена цена. Добавим в вариант комплектации _Зефир бело-розовый - на него цена в базе не установлена. При записи варианта комплектации он автоматически добавляется в очередь на пересчет цен. Но в этом случае цену на комплект расчитать корректно не получится.

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


Письмо на электронную почту. Содержание вложенного файла идентично файлу, отправленному в телеграм:

Исправим это. Установим цены на _Зефир бело-розовый. После проведения документа установки цен на зефир, вариант комлектации _Набор сладостей попадает в очередь на пересчет цен.
После выполнения команды Пересчет цен автоматически создается и проводится документ устаноки цен для комплекта _Набор сладостей. На почту и в телеграм отправлены сообщения об успешном пересчете цен.