УТ 11.1 Простые приёмы: Печать новых ценников, только с изменившейся ценой






Простая задача напечатать только новые ценники – на товары, для которых цена изменилась

Пролог (в блоге)

Решение:

В процедуре ДобавитьКомандыПечаты модуля менеджера документа УстановкаЦенНоменклатуры, добавляем строки:

Затем Общие модули УправлениеПечатьюУТВызовСервера, в процедуру ПолучитьДанныеДляПечатиЦенниковИЭтикеток добавляем пару строк:

Теперь возвращаемся в модуль менеджера установки цен, находим и добавляем параметр функции ПолучитьДанныеДляПечатиЦенников:

А ниже обрабатываем ситуацию, в конце функции, вместо строки

СтруктураРезультат.Вставить("Товары", МассивРезультатов[0].Выгрузить());

Вставляем блок:

Всё. Сохраняем, проверяем, пользуемся.

Решение не самое рациональное с точки зрения производительности, использовать функции СрезПоследних в цикле не желательно, но всё работает.

Ограничения данного решения: работает только для одного документа и только с одним видом цен, если что, дорабатываем сами.

6 Comments

  1. teflon

    Юрий, спасибо, что делитесь опытом. Отдельное спасибо за внятное оформление, за скриншоты.

    Reply
  2. cjeymik

    Есть другой вариант: в документе Установка цен номенклатуры жмем «Изменить строки» — «Удалить строки без изменения». В итоге в документе остаются только те товары, для которых цена изменилась. Далее Печать — Ценники….

    Reply
  3. bydk

    Только в самой реализации 2 запроса в цикле… Уж получение цен можно было и одним запросом сделать)

    Reply
  4. Yury1001

    (2) cjeymik, о, точно!

    Тот случай, когда легче было написать кнопку, чем разбираться с типовой)))

    Reply
  5. alyaev.a.v

    Очередной велосипед.

    в (2) по моему самое разумное решение.

    Reply
  6. Yury1001

    (5) alyaev.a.v, Уточнил у клиента, он говорит я знал про эту кнопку, когда заказ делал, но мы, во-первых печатаем полный список установки цен (как накладную) на проверку и подпись, а во-вторых, иногда, нужно перепечатать старый ценник и это легче сделать из установки, чем искать в подборе. Поэтому, всё норм.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *