|
Вывод изображения в печать | ☑ | ||
---|---|---|---|---|
0
Ly_Alena
14.10.15
✎
13:44
|
Доброе утро! Задача такая: нужно вывести картинку из хранилища дополнительной информации в печать. Нужно ли в макете какое-то особенное место организовывать и как это сделать? Ну и собственно как это сделать?
Я в макет добавила картинку (Таблица - Рисунки - Картинка...) "ОсновноеИзображение" В модуле пишу: ТаблицаНоменклатуры = Новый ТаблицаЗначений; ТаблицаНоменклатуры.Колонки.Добавить("ГруппаНоменклатуры",,"ГруппаНоменклатуры"); ТаблицаНоменклатуры.Колонки.Добавить("Номенклатура",,"Номенклатура"); ТаблицаНоменклатуры.Колонки.Добавить("Цена",,"Цена"); //ТаблицаНоменклатуры.Свернуть("ГруппаНоменклатуры, Номенклатура", "Цена"); //ТаблицаНоменклатуры.Сортировать("ГруппаНоменклатуры"); ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РасчетПрайсовойЦены"; Макет = ПолучитьМакет("РасчетПрайсовойЦены"); ОбластьМакета = Макет.ПолучитьОбласть("Заголовок"); ТабДокумент.Вывести(ОбластьМакета); Для Каждого Строка Из Товары Цикл Стр=ТаблицаНоменклатуры.Добавить(); Стр.ГруппаНоменклатуры=Строка.ГруппаНоменклатуры; Стр.Номенклатура=Строка.Номенклатура.НаименованиеПолное; Стр.Цена=Строка.Цена; КонецЦикла; Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | МояТаблицаСТоварами.Номенклатура, | МояТаблицаСТоварами.Цена, | МояТаблицаСТоварами.ГруппаНоменклатуры |ПОМЕСТИТЬ ВТТовары |ИЗ | &МояТаблицаСТоварами КАК МояТаблицаСТоварами |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВТТовары.ГруппаНоменклатуры КАК ГруппаНоменклатуры, | ВТТовары.Номенклатура, | ВТТовары.Цена |ИЗ | ВТТовары КАК ВТТовары |ИТОГИ ПО | ГруппаНоменклатуры"; Запрос.УстановитьПараметр("МояТаблицаСТоварами", Товары); ВыборкаГруппы = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаГруппы.Следующий() Цикл // тут выводим область группировки ВыборкаНоменклатура = ВыборкаГруппы.Выбрать(); ОбластьМакета = Макет.ПолучитьОбласть("ГруппаНоменклатуры"); ОбластьМакета.Параметры.ГруппаНоменклатуры=ВыборкаГруппы.ГруппаНоменклатуры; ТабДокумент.Вывести(ОбластьМакета); Пока ВыборкаНоменклатура.Следующий() Цикл // тут выводим область детальных записей ОбластьМакета = Макет.ПолучитьОбласть("Стр"); ОбластьМакета.Параметры.Номенклатура=ВыборкаНоменклатура.Номенклатура.НаименованиеПолное; Если ВыборкаНоменклатура.Номенклатура.ПринадлежностьКПрайсу=Перечисления.ПринадлежностьНоменклатурыКПрайсу.ЦенаПоЗапросу Тогда ОбластьМакета.Параметры.Цена="По запросу"; Иначе ОбластьМакета.Параметры.Цена=ВыборкаНоменклатура.Цена; КонецЕсли; ТабДокумент.Вывести(ОбластьМакета); КонецЦикла; ОбластьМакета = Макет.ПолучитьОбласть("ОсновноеИзображение"); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ХранилищеДополнительнойИнформации.Объект, | ХранилищеДополнительнойИнформации.Хранилище, | ХранилищеДополнительнойИнформации.ИмяФайла |ИЗ | Справочник.ХранилищеДополнительнойИнформации КАК ХранилищеДополнительнойИнформации |ГДЕ | ХранилищеДополнительнойИнформации.Объект = &Объект"; Запрос.УстановитьПараметр("Объект",ВыборкаГруппы.ГруппаНоменклатуры); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл ИмяКартинки = ВыборкаДетальныеЗаписи.ИмяФайла; ОсновноеИзображение = Новый Картинка(ВыборкаДетальныеЗаписи.Хранилище.Получить()); ОбластьМакета.Параметры.Изображение = ОсновноеИзображение; КонецЦикла; ТабДокумент.Вывести(ОбластьМакета); КонецЦикла; Ниче не выводит |
|||
1
Ly_Alena
14.10.15
✎
13:45
|
Пока писала - уже вечер наступил...
|
|||
2
Любопытная
14.10.15
✎
13:47
|
Запросы в цикле, ай-яй-яй как печально.
|
|||
3
Ly_Alena
14.10.15
✎
13:47
|
Область где картинка "ОсновноеИзображение", у картинки имя "Изображение"
|
|||
4
Ly_Alena
14.10.15
✎
13:47
|
(2) это уже от безысходности, по разному пробовала
|
|||
5
Любопытная
14.10.15
✎
13:49
|
Макет = ПолучитьОбщийМакет("ПечатьКартинки");
Областьшапка = Макет.ПолучитьОбласть("Шапка"); ОбластьШапка.Рисунки.D1.Картинка = СтрокаТЧ.Страница.Хранилище.Получить(); У меня вот так написано. Выводится |
|||
6
Любопытная
14.10.15
✎
13:50
|
D1 это имя рисунка в макете, если что
|
|||
7
Ly_Alena
14.10.15
✎
14:01
|
(6) что такое "Страница"?
|
|||
8
Ly_Alena
14.10.15
✎
14:05
|
Написала так:
Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | МояТаблицаСТоварами.Номенклатура, | МояТаблицаСТоварами.Цена, | МояТаблицаСТоварами.ГруппаНоменклатуры, | МояТаблицаСТоварами.ОсновноеИзображение |ПОМЕСТИТЬ ВТТовары |ИЗ | &МояТаблицаСТоварами КАК МояТаблицаСТоварами |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВТТовары.ГруппаНоменклатуры КАК ГруппаНоменклатуры, | ВТТовары.Номенклатура, | ВТТовары.Цена, | ВТТовары.ОсновноеИзображение |ИЗ | ВТТовары КАК ВТТовары |ИТОГИ ПО | ГруппаНоменклатуры"; Запрос.УстановитьПараметр("МояТаблицаСТоварами", Товары); ВыборкаГруппы = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаГруппы.Следующий() Цикл // тут выводим область группировки ВыборкаНоменклатура = ВыборкаГруппы.Выбрать(); ОбластьМакета = Макет.ПолучитьОбласть("ГруппаНоменклатуры"); ОбластьМакета.Параметры.ГруппаНоменклатуры=ВыборкаГруппы.ГруппаНоменклатуры; ТабДокумент.Вывести(ОбластьМакета); Пока ВыборкаНоменклатура.Следующий() Цикл // тут выводим область детальных записей ОбластьМакета = Макет.ПолучитьОбласть("Стр"); ОбластьМакета.Параметры.Номенклатура=ВыборкаНоменклатура.Номенклатура.НаименованиеПолное; Если ВыборкаНоменклатура.Номенклатура.ПринадлежностьКПрайсу=Перечисления.ПринадлежностьНоменклатурыКПрайсу.ЦенаПоЗапросу Тогда ОбластьМакета.Параметры.Цена="По запросу"; Иначе ОбластьМакета.Параметры.Цена=ВыборкаНоменклатура.Цена; КонецЕсли; ОбластьМакета.Рисунки.Изображение.Картинка = ВыборкаНоменклатура.ОсновноеИзображение.Хранилище.Получить(); ТабДокумент.Вывести(ОбластьМакета); КонецЦикла; КонецЦикла; Ошибка: {ВнешняяОбработка.РасчетПрайсовойЦены.МодульОбъекта(70)}: Поле объекта не обнаружено (Изображение) ОбластьМакета.Рисунки.Изображение.Картинка = ВыборкаНоменклатура.ОсновноеИзображение.Хранилище.Получить(); |
|||
9
Ly_Alena
14.10.15
✎
14:14
|
Вот так получилось:
ОбластьМакета.Рисунки["Изображение"].Картинка = ВыборкаНоменклатура.ОсновноеИзображение.Хранилище.Получить(); Всем спасибо! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |