|
УТ 11.1 свои данные в шаблоне ценников | ☑ | ||
---|---|---|---|---|
0
fantomrik
14.12.15
✎
19:26
|
Коллеги, привет!
Собственно делаю следующее, если начинает действовать автоматическая скидка на товары, у продавца автоматически появляется оповещение при запуске 1С и он должен распечатать ценники с видом старая (зачеркнутая цена) и новая цена. В обработку печати ценников добавил колонки с процентом скидки, суммой скидки и итоговой ценой. Сделал заполнение по кнопке "акционных товаров". Уперся в сабж. Поля доступные для применения в ценнике читаются на сколько я понял из макета СКД Обработки.ПечатьЭтикетокИЦенников.ПолучитьМакет("ПоляШаблонаТовары"). Посмотрел запрос - не совсем понимаю как он отбирает номенклатуру для печати (явного отбора нет) и как мне вставить мои поля, которые хранятся в обработке печати ценников в табличной части... Может кто то сталкивался с подобной задачей? |
|||
1
fantomrik
14.12.15
✎
19:43
|
Вобще вопрос думаю правильный, но запарный) пока пробую другим путем - смотрю процедуру печати, может в ней где подсуну свои параметры и заменю в шаблоне...
|
|||
2
Garykom
гуру
14.12.15
✎
21:05
|
сделай уже свою (внешнюю можно) печать ценников...
|
|||
3
fantomrik
14.12.15
✎
22:48
|
Собственно решил так, возможно кому то пригодиться. Обработка ПечатьЭтикетокИЦенников у меня уже была скопирована в дереве конфигурации и доделана под фирму.
1) В модуле основной формы обработки в процедуре Печать(Команда) первым параметром в процедуре УправлениеПечатьюКлиент.ВыполнитьКомандуПечати( вставляем имя нашей допиленной обработки, так как все равно покидает нас по общим модулям и вернет в печать модуля менеджера данной обработки. А зачем править ММ в типовой обработке, если у нас уже и так есть допиленая :) 2) В модуле основной формы обработки в функции ПолучитьПараметры () в ТЗ Товары добавим описание наших доп колонок. Все это "богатство" уйде в ХранилещеЗначений и позже при печати извлечем) Если у вас доп реквизиты для печати не в товарах, пихаем в ПараметрыПечати в этой же функции. 3) в модуле менеджера обработки в процедуре СформироватьПечатныеФормыЭтикетокИЦенниковТоваров идем в цикл заполнения параметров макета печати и отлавливая нужный нам заполняем из исходных данных (они получатся из хранилища). Соответственно параметры в макете у меня называются аналогично. Для каждого ПараметрШаблона Из СтруктураШаблона.ПараметрыШаблона Цикл Если ОбщегоНазначенияУТКлиентСервер.ЕстьРеквизитОбъекта(Область.Параметры, ПараметрШаблона.Значение) Тогда НаименованиеКолонки = СтруктураРезультата.СоответствиеПолейСКДКолонкамТаблицы.Получить(Справочники.ШаблоныЭтикетокИЦенников.ИмяПоляВШаблоне(ПараметрШаблона.Ключ)); Если НаименованиеКолонки <> Неопределено Тогда Область.Параметры[ПараметрШаблона.Значение] = СтрокаТовары[НаименованиеКолонки]; //++ 2015-12-14 //вставим свои значения в печать Иначе Попытка Если ПараметрШаблона.Ключ = "_ИтоговаяЦена" Тогда Область.Параметры[ПараметрШаблона.Значение] = СтруктураНастроек.ИсходныеДанные.Найти(СтрокаТовары.Номенклатура, "Номенклатура")._ИтоговаяЦена; ИначеЕсли ПараметрШаблона.Ключ = "_ПроцентАвтоматическойСкидки" Тогда Область.Параметры[ПараметрШаблона.Значение] = СтруктураНастроек.ИсходныеДанные.Найти(СтрокаТовары.Номенклатура, "Номенклатура")._ПроцентАвтоматическойСкидки; ИначеЕсли ПараметрШаблона.Ключ = "_СуммаАвтоматическойСкидки" Тогда Область.Параметры[ПараметрШаблона.Значение] = СтруктураНастроек.ИсходныеДанные.Найти(СтрокаТовары.Номенклатура, "Номенклатура")._СуммаАвтоматическойСкидки; КонецЕсли; Исключение КонецПопытки //--2015-12-14 КонецЕсли; КонецЕсли; КонецЦикла; |
|||
4
fantomrik
14.12.15
✎
22:48
|
Не самое красивое решение, но рабочее.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |