Добрый день, подскажите пожалуйста как вывести картинку номенклатуры в печатную форму? УНФ 1.6

1. user973528 03.02.21 09:37 Сейчас в теме
Добрый день, делаю печатную форму.

Есть таблица с колонками "Номенклатура", Код", "Картинка".

Подскажите пожалуйста, как можно получить картинку номенклатуры и вывести в ячейке "Картинка"? Заранее спасибо

Пытаюсь сделать так, но изображение всегда равно неопределено, хотя картинка в базе есть

Стр.ФайлКартинкиФайлХранилище = Номенклатура.ФайлКартинки.ФайлХранилище;

 Изображение = Стр.ФайлКартинкиФайлХранилище.Получить();
	   
	   Если Изображение = Неопределено Тогда
			СтрокаМакета = "СтрокаБезКартинки";
	   Иначе
			СтрокаМакета = "СтрокаСКартинкой";
	   КонецЕсли;
		
	   Если Не Изображение = Неопределено Тогда
			ОбластьСтрока.Рисунки["Изображение"].Картинка = Изображение;
	   КонецЕсли;
		
		ТабличныйДокумент.Вывести(ОбластьСтрока);
Показать
Прикрепленные файлы:
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. ls600 03.02.21 09:46 Сейчас в теме
3. user973528 03.02.21 09:53 Сейчас в теме
4. KVIKS 404 03.02.21 17:58 Сейчас в теме
В УНФ 1.6 делал так
з=Новый Запрос("ВЫБРАТЬ
				|	НоменклатураПрисоединенныеФайлы.Ссылка КАК Ссылка
				|ИЗ
				|	Справочник.НоменклатураПрисоединенныеФайлы КАК НоменклатураПрисоединенныеФайлы
				|ГДЕ
				|	НоменклатураПрисоединенныеФайлы.ВладелецФайла = &ВладелецФайла
				|	И НоменклатураПрисоединенныеФайлы.Наименование = ""Для прайса""");
				З.УстановитьПараметр("ВладелецФайла",ВыборкаНоменклатура.Номенклатура);
				//Картинка  = ВыборкаНоменклатура.Номенклатура.ФайлКартинки;
				р=з.Выполнить().Выбрать();
				Если р.Следующий() тогда
					Картинка=р.Ссылка;
				Иначе
					Картинка="";
				КонецЕсли;	
				
				ОблКартинка = ТабДокМатрица.Область("R"+Формат(НачИнд, "ЧГ=")+"C1:R"+Формат(КонИнд, "ЧГ=") +"C1");
				//ОблКартинка.ГраницаСправа = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.НетЛинии);
				//ОблКартинка.ГраницаСнизу = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.НетЛинии, 2);
				ОблКартинка.Объединить();
				
				Если ЗначениеЗаполнено(Картинка) Тогда	
					Попытка
						ДвоичныеДанныеКартинки = УправлениеНебольшойФирмойСервер.СсылкаНаДвоичныеДанныеФайла(Картинка,);
						ДвДанные  =ПолучитьИзВременногоХранилища(ДвоичныеДанныеКартинки);
						КартинкаДок = Новый Картинка(ДвДанные);
						ОблКартинка.Картинка = КартинкаДок;	
						ОблКартинка.РазмерКартинки=РазмерКартинки.Пропорционально;
						линия=Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная);
						ОблКартинка.Обвести(линия,линия,линия,линия);
					Исключение
					КонецПопытки;	
				КонецЕсли;
Показать

Получается что картинка вставляется в ячейку Табдок.
7. DimanZ 27 22.04.21 17:40 Сейчас в теме
(4)
ДвДанные =ПолучитьИзВременногоХранилища(ДвоичныеДанныеКартинки);
КартинкаДок = Новый Картинка(ДвДанные);


Большое спасибо!!!
Пытался Новый Картинка(ДвоичныеДанныеКартинки) и получал ошибку Файл не найден.
Оказывается нужно получить из временного хранилища.
8. BatTsyren 18.03.22 10:06 Сейчас в теме
(4) А где взять наименование ("Для прайса")?
9. KVIKS 404 18.03.22 10:17 Сейчас в теме
(8)Когда загружаете картинку в 1С надо дать ей наименование "Для прайса", чтобы из кучи картинок по товару, 1С понимала что надо взять только с названием "Для прайса".
BatTsyren; +1 Ответить
11. BatTsyren 18.03.22 10:34 Сейчас в теме
(9) Если картинки уже загружены, то наименование это Номенклатура.ФайлКартинки.Наименование?
12. KVIKS 404 18.03.22 12:29 Сейчас в теме
(11)Вот это наименование
Прикрепленные файлы:
BatTsyren; +1 Ответить
5. Kuzmin_A 10.02.21 18:34 Сейчас в теме
Например
Область = Макет.Получить("СтрокаТаблицы");
Для каждого стр Из ДанныеТаблицы Цикл
Область.Параметры.Заполнить(стр);
Область.Рисунки.ИмяКартинки.Картинка = стр.КартинкаДок;
ТабДок.Вывести(Область);
КонецЦикла;
Прикрепленные файлы:
6. PlatonStepan 38 12.02.21 08:41 Сейчас в теме
из СП:
Рис=ТабДок.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
Индекс=ТабДок.Рисунки.Индекс(Рис);
ТабДок.Рисунки[Индекс].Картинка = МояКартинка;
ТабДок.Рисунки[Индекс].Расположить(ТабДок.Область("R1C1:R4C4"));
ТабДок.Показать();
10. KVIKS 404 18.03.22 10:18 Сейчас в теме
(8) можно стереть это условие
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот