Картинка на форме не очищается, в чем может быть причина?

1. user703620_irina-kulikova 18.10.19 10:40 Сейчас в теме
Добрый...
8.3 УФ. Есть таблица в ней несколько путей на картинки (типа E:\Картинки\DC00000003208.jpg и т.д). Отдельно на форме есть реквизит Объект.Фото ТИП (строка), вид(картинка). И реквизит УникальныйИд(строка).
Так вот код при активации строки, подгружаю картинку...

&НаКлиенте
Процедура ДанныеПриАктивизацииСтроки(Элемент)
    Если ЗначениеЗаполнено(Элементы.Данные.ТекущиеДанные.ПутьККартинке) Тогда;
        Путь = Элементы.Данные.ТекущиеДанные.ПутьККартинке;
        УстановитьКартинку(Путь);
    КонецЕсли;
    
КонецПроцедуры


&НаСервере
Процедура УстановитьКартинку(Путь)
        
    ПутьККартинке =  Путь;
    Картинка = Новый Картинка(ПутьККартинке);
    
    Если Объект.УникальныйИд <> "" Тогда
        УдалитьИзВременногоХранилища(Объект.УникальныйИд);
    КонецЕсли;
    АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(Картинка, Новый УникальныйИдентификатор);

    Объект.УникальныйИд = АдресВоВременномХранилище ;
    Объект.Фото = АдресВоВременномХранилище;
    
КонецПроцедуры
Показать



Картинка то появляется, но когда я выбираю последующие, то картинки у меня накладываются одна на одну, хотя я ведь временное хранилище по старому "УникальныйИд" очищаю? Подскажите решение???
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. dhurricane 18.10.19 11:04 Сейчас в теме
(1) Не могу сказать, помогут ли мои рекомендации. Но тем не менее.

- В обработчике "ПриАктивизацииСтроки" запрещен вызов процедур и функций с директивой &НаСервере. Используйте подключаемые обработчики оповещений.
- Попробуйте помещать данные в хранилище формы. Т.е. не генерировать всякий раз новый уникальный идентификатор, а использовать уникальный идентификатор формы.
- Нет необходимости каждый раз удалять/добавлять данные во временном хранилище. Можно помещать данные по одному и тому же адресу. Т.е. когда "Объект.УникальныйИд" заполнен, помещать по нему.
5. user703620_irina-kulikova 18.10.19 11:16 Сейчас в теме
(4)

ПутьККартинке =  Путь;
Карт = Новый Картинка(ПутьККартинке);

Если Объект.УникальныйИд = "" Тогда
	АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(Карт, Новый УникальныйИдентификатор);
иначе
	АдресВоВременномХранилище = ПоместитьВоВременноеХранилище(Карт,Объект.УникальныйИд);
КонецЕсли;

Объект.УникальныйИд = АдресВоВременномХранилище ;
Объект.Фото = АдресВоВременномХранилище;
Показать


так загружается только первая картинка, новые не прописываются
6. AlexandrSmith 69 18.10.19 13:11 Сейчас в теме
(1) Надо тестировать, менять код, пытаться обходить неприятности. На первый взгляд вроде правильно все сделали.
7. user5300 1015 18.10.19 14:52 Сейчас в теме
(1)
Если Объект.УникальныйИд <> "" Тогда
УдалитьИзВременногоХранилища(Объект.УникальныйИд);
КонецЕсли;


а так не пробовали?
///Если Объект.УникальныйИд <> "" Тогда 
//УдалитьИзВременногоХранилища(Объект.УникальныйИд); 
//КонецЕсли;
2. sapervodichka 6812 18.10.19 10:59 Сейчас в теме
попробуй использовать ОтобразитьИзменениеДанных(Объект.Фото, ВидИзмененияДанных.Изменение) выполянется на клиенте
3. user703620_irina-kulikova 18.10.19 11:03 Сейчас в теме
Оставьте свое сообщение

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