Дополнительные изображения для характеристик 10.3

1. Farhat95 03.02.23 17:53 Сейчас в теме
Доброго времени суток знатоки! Делаю доработку формы номенклатуры. Задача состоит в том чтобы у характеристик было несколько фото. Выбрать и сохранить получается фотографии но вот сами изображения не появляются. Что я не так сделал ?

Процедура КоманднаяПанельХарактеристикиДопИзображение(Кнопка)
	
	ТД = ЭлементыФормы.Характеристики.ТекущиеДанные;
	
	Если ТД <> Неопределено Тогда
		
		//РаботаСФайлами.ОткрытьФормуИзображения(ЭтаФорма, ТД.ДопИзображение, ТД.Ссылка);
		Если ТД.ДопИзображение = Неопределено ИЛИ ТД.ДопИзображение.Пустая() Тогда
			
		ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
		ДиалогОткрытияФайла.Заголовок = "Выберите файл с изображением";
		ДиалогОткрытияФайла.ПолноеИмяФайла = "";
		ДиалогОткрытияФайла.ПредварительныйПросмотр = Истина;
		//ДиалогОткрытияФайла.Фильтр = ПолучитьФильтрИзображений();

		Если ДиалогОткрытияФайла.Выбрать() Тогда
			ВыбранноеИзображение = Новый Картинка(ДиалогОткрытияФайла.ПолноеИмяФайла, Ложь);
		Иначе
			Возврат;
		КонецЕсли;
		
		НовыйОбъект = Справочники.ХранилищеДополнительнойИнформации.СоздатьЭлемент();
		НовыйОбъект.ВидДанных = Перечисления.ВидыДополнительнойИнформацииОбъектов.Изображение;
		НовыйОбъект.Хранилище = Новый ХранилищеЗначения(ВыбранноеИзображение, Новый СжатиеДанных);
		НовыйОбъект.Объект = ТД.ССылка;
		НовыйОбъект.ИмяФайла = ТД.Наименование;
		
		ФормаИзображения = НовыйОбъект.ПолучитьФорму("ФормаИзображения");
		
	Иначе
		
		ФормаИзображения = ТД.ДопИзображение.ПолучитьФорму("ФормаИзображения");
		
	КонецЕсли;
	
	ФормаИзображения.ВладелецФормы = ТД.Ссылка;
	ФормаИзображения.РежимВыбора = Истина;
	ФормаИзображения.ЗакрыватьПриВыборе = Ложь;
	ФормаИзображения.Открыть();
		
	КонецЕсли;

КонецПроцедуры
Показать
Прикрепленные файлы:
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. Farhat95 03.02.23 17:53 Сейчас в теме
Вторая фотка тоже назначена, и в справочнике ДопИнформации тоже показывается а вот на форме не выводится сама фотка.
3. Farhat95 08.02.23 17:52 Сейчас в теме
Решил почти все! кроме одного.

ТД = ЭлементыФормы.Характеристики.ТекущиеДанные;
	
	Если ТД <> Неопределено Тогда
		Если НЕ ТД.ОсновноеИзображение.Пустая()Тогда
			ЭлементыФормы.ОсновноеИзображениеХарактеристик.Картинка = 
			ТД.ОсновноеИзображение.Хранилище.Получить();
		Иначе			
			ЭлементыФормы.ОсновноеИзображениеХарактеристик.Картинка = 
			мПустаяКартинка;
		КонецЕсли;
			ПоказатьФотоХарактеристик();
	КонецЕсли;
Показать

Вот код при активации строки.
он выводит доп фото на форму. Но только фото первой строки.
Как я понял при смене строки он все равно первую строку читает. Что делать ?
4. Farhat95 08.02.23 17:54 Сейчас в теме
ПоказатьФотоХарактеристик(); ---- делает запрос к хранилищу и создает новые изображения если они есть.
5. Farhat95 08.02.23 17:58 Сейчас в теме
ДА и еще, ОСновное изображение меняется при смене строки. А вот ПоказатьФотоХАрактеристик() как будто один раз только срабатывает.((
6. Farhat95 09.02.23 11:17 Сейчас в теме
Процедура ПоказатьФотоХарактеристик()
	
	ТД = ЭлементыФормы.Характеристики.ТекущиеДанные;
	
	Запрос = Новый Запрос;
	Запрос.Текст = "ВЫБРАТЬ
	               |	ХранилищеДополнительнойИнформации.Ссылка КАК ДопИзоб
	               |ИЗ
	               |	Справочник.ХранилищеДополнительнойИнформации КАК ХранилищеДополнительнойИнформации
	               |ГДЕ
	               |	ХранилищеДополнительнойИнформации.Объект = &Объект
	               |	И ХранилищеДополнительнойИнформации.ВидДанных = &ВидДанных
	               |	И НЕ ХранилищеДополнительнойИнформации.ПометкаУдаления
	               |	И ХранилищеДополнительнойИнформации.Ссылка <> &ОснФото";
	Запрос.УстановитьПараметр("Объект", ТД.Ссылка);
	Запрос.УстановитьПараметр("ВидДанных", Перечисления.ВидыДополнительнойИнформацииОбъектов.Изображение);
	Запрос.УстановитьПараметр("ОснФото", ОсновноеИзображение);
	ДопИз = Запрос.Выполнить().Выбрать();
	ДопИз.Колонки.Добавить("НомерСтроки", Новый ОписаниеТипов("Число")); н = 1;
	Для Каждого СтрДопИзоб Из ДопИз Цикл
		СтрДопИзоб.НомерСтроки = н; н = н + 1;
		ДобНовоеФотоХарактеристики(СтрДопИзоб.НомерСтроки, СтрДопИзоб.ДопИзоб.Хранилище.Получить());
	КонецЦикла;

	
КонецПроцедуры
Показать
9. Farhat95 09.02.23 11:24 Сейчас в теме
(6)
ДопИз = Запрос.Выполнить().Выбрать();
Тут не выбрать а выгрузить
7. Farhat95 09.02.23 11:18 Сейчас в теме
Может тут что то не так ?)
8. Farhat95 09.02.23 11:18 Сейчас в теме
хоть что то напишите )))))))))))
10. пользователь 09.02.23 11:32
Сообщение было скрыто модератором.
...
11. Farhat95 09.02.23 11:41 Сейчас в теме
(10)Сразу видно, человек профессионал )
12. Farhat95 14.02.23 14:24 Сейчас в теме
Сам все сделал! Я молодец!
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)