Имя: Пароль:
1C
 
Получение картинок из хранилища значений
0 AlexToo
 
16.07.15
08:51
Добрый день, ведем работу со служебными записками к которым можем подключать картинки и иногда при открытии картинок выходит ошибка:
{Справочник.ХранилищеДополнительнойИнформации.Форма.ФормаСпискаФайловИИзображений.Форма(142)}: Ошибка при установке значения атрибута контекста (Картинка)
        ЭлементыФормы.ПолеИзображения.Картинка = ?(ТекущаяКартинка <> Неопределено, ТекущаяКартинка, Новый Картинка());
по причине:
Несоответствие типов

Когда смотрел в отладчике там код получения картинки:

Процедура ПоказатьКартинкуТекущейСтроки(Элемент)

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

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

КонецПроцедуры

Иногда по коду все нормально отрабатывает и переменная ТекущаяКартинка имеет тип Картинка, но когда появляется эта ошибка тип переменной ДвоичныеДанные, почему картинка превращается в двоичные данные и как это можно исправить пожалуйста подскажите?
1 Остап Сулейманович
 
16.07.15
08:57
(0) Почему так происходит - это к гадалке. Исправить - видимо нужно перед помещением полученного из хранилища в элемент управления проверить его тип. И уже тогда решать что с этим делать.
2 AlexToo
 
16.07.15
09:02
(1) ну тип у него ДвоичныеДанные хотя должна быть картинка, а как эти двоичные данные опять картинкой сделать?
3 Cyberhawk
 
16.07.15
09:47
Документация с ИТС по подсистеме БСП "Присоединенные файлы" (раздел про картинки в номенклатуре) тебе в помощь
4 Галахад
 
гуру
16.07.15
09:51
Может там pdf или doc?
5 fishb1
 
16.07.15
10:58
(2) Картинка = Новый Картинка(ДвоичныеДанные);
6 AlexToo
 
16.07.15
15:42
(5) Спасибо тебе огромное!
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс