Данная процедура дополняет функционал стандартной, для УТ 10.3, обработки "Печать ценников". В меню Заполнить добавляем элемент ЗаполнитьПоУстановкаЦен и (соответственно ему) действие КоманднаяПанельТоварыЗаполнитьПоУстановкаЦен
Процедура КоманднаяПанельТоварыЗаполнитьПоУстановкаЦен(Кнопка)
Документ = Документы.УстановкаЦенНоменклатуры.ПолучитьФормуВыбора().ОткрытьМодально();
Если Документ = Неопределено Тогда
Возврат;
КонецЕсли;
Товары.Очистить();
Если Документ.Товары.Количество()>0 Тогда
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| УстановкаЦенНоменклатурыТовары.Номенклатура,
| УстановкаЦенНоменклатурыТовары.Цена,
| УстановкаЦенНоменклатурыТовары.ЕдиницаИзмерения
|ИЗ
| Документ.УстановкаЦенНоменклатуры.Товары КАК УстановкаЦенНоменклатурыТовары
|ГДЕ
| УстановкаЦенНоменклатурыТовары.Ссылка = &Ссылка
| И УстановкаЦенНоменклатурыТовары.ТипЦен = &ТипЦен";
Запрос.УстановитьПараметр("Ссылка", Документ);
Запрос.УстановитьПараметр("ТипЦен", ТипЦен);
Результат = Запрос.Выполнить().Выбрать();
ТЗ=Новый ТаблицаЗначений;
ТЗ.Колонки.Добавить("Номенклатура");
ТЗ.Колонки.Добавить("Цена");
ТЗ.Колонки.Добавить("ЕдиницаИзмерения");
ТЗ.Колонки.Добавить("Количество");
ТЗ.Колонки.Добавить("Печать");
Пока Результат.Следующий() Цикл
Стр =ТЗ.Добавить();
Стр.Номенклатура =Результат.Номенклатура;
Стр.Цена =Результат.Цена;
Стр.ЕдиницаИзмерения=Результат.ЕдиницаИзмерения;
Стр.Количество =1;
Стр.Печать =Истина;
КонецЦикла;
//
Если ТЗ.Количество()>0 тогда
Товары.Загрузить(ТЗ);
иначе
Если ПустаяСтрока(ТипЦен) тогда
Сообщить("Не выбрана цена");
иначе
Сообщить("В документе отсутствует цена- "+ТипЦен.Наименование+" или у документа неправильно заполнена табличная часть");
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры//КоманднаяПанельТоварыЗаполнитьПоУстановкаЦен
Также эту процедуру легко можно переделать под любой другой документ.