8.х сохранение картинки

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем mhl, 30 май 2008.

  1. TopicStarter Overlay
    mhl
    Offline

    mhl Опытный в 1С

    Регистрация:
    23 июн 2007
    Сообщения:
    418
    Симпатии:
    0
    Баллы:
    26
    Подскажите как сохранить изображение. Конфигурация УПП. Создал для документа реквизит ОсновноеИзображение с типом СправочникСсылка.ХранилищеДополнительнойИнформации. На форме создал элемент Поле картинки и кнопку для добавления в нее фотки. Вот код кнопки:
    Код:
    Процедура ДействияФормыДобавитьФото(Кнопка)
    Отказ = Ложь;
    
    Если ЭтоНовый() Тогда
    Вопрос = "Перед вводом файлов и изображений необходимо записать элемент. Записать?";
    Ответ  = Вопрос(Вопрос, РежимДиалогаВопрос.ОКОтмена);
    Если Ответ = КодВозвратаДиалога.ОК Тогда
    Отказ = Не ЗаписатьВФорме();
    Иначе
    Отказ = Истина;
    КонецЕсли;
    КонецЕсли;
    
    Если НЕ Отказ Тогда
    ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
    ДиалогОткрытияФайла.Заголовок = "Выберите файл с фотографией";
    ДиалогОткрытияФайла.ПолноеИмяФайла = "";
    ДиалогОткрытияФайла.ПредварительныйПросмотр = Истина;
    ДиалогОткрытияФайла.Фильтр = 
    "Все картинки (*.bmp;*.dib;*.rle;*.jpg;*.jpeg;*.tif;*.gif;*.png;*.ico;*.wmf;*.emf)|*.bmp;*.dib;*.rle;*.jpg;*.jpeg;*.tif;*.gif;*.png;*.ico;*.wmf;*.emf|" 
    + "Формат bmp (*.bmp;*.dib;*.rle)|*.bmp;*.dib;*.rle|"
    + "Формат JPEG (*.jpg;*.jpeg)|*.jpg;*.jpeg|"
    + "Формат TIFF (*.tif)|*.tif|"
    + "Формат GIF (*.gif)|*.gif|"
    + "Формат PNG (*.png)|*.png|"
    + "Формат icon (*.ico)|*.ico|"
    + "Формат метафайл (*.wmf;*.emf)|*.wmf;*.emf|"; // картинки
    
    Если ДиалогОткрытияФайла.Выбрать() Тогда
    
    ВыбранноеФото = Новый Картинка(ДиалогОткрытияФайла.ПолноеИмяФайла,Ложь);
    ЭлементыФормы.ОсновноеИзображение.Картинка = ВыбранноеФото;
    
    Файл = Новый Файл(ДиалогОткрытияФайла.ПолноеИмяФайла);
    
    НайтиИмя = Справочники.ХранилищеДополнительнойИнформации.НайтиПоНаименованию(Строка(Файл.ПолноеИмя));
    Если НайтиИмя.Наименование = "" <span style='cursor: pointer; color:red' Onclick="window.open('http://www.1c-pro.ru/wiki/index.php/тогда')">Тогда	</span>
    НовыйЭлемент = Справочники.ХранилищеДополнительнойИнформации.СоздатьЭлемент();
    НовыйЭлемент.Объект = ЭтотОбъект.Ссылка;
    НовыйЭлемент.ВидДанных = Перечисления.ВидыДополнительнойИнформацииОбъектов.Изображение;
    НовыйЭлемент.Наименование = Строка(Файл.ПолноеИмя);
    НовыйЭлемент.Хранилище = Новый ХранилищеЗначения(ВыбранноеФото); 
    НовыйЭлемент.Записать();
    ОсновноеИзображение = НовыйЭлемент.Ссылка;
    Иначе
    ОсновноеИзображение = НайтиИмя.ССылка;
    КонецЕсли;
    Иначе
    Отказ = Истина;
    Возврат;
    КонецЕсли;
    КонецЕсли;
    КонецПроцедуры
    
    Проблема в том, что картинка не сохраняется :unsure: Нажимаю кнопку ОК провожу документ, а при повторном открытии фотки нету
  2. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    А подсмотреть в справочнике "Номенклатура"?
  3. lazy
    Offline

    lazy Модераторы Команда форума Модератор

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    Определись - она не сохраняется, или не отображается.

    Кроме кода сохранения картинки нужен еще и код, который ее будет показывать пользователю например в предопределенной процедуре "ПриОткрытии"
    Вот простой пример:
    Код:
            ДанныеФотографии = Фотография.Получить();
    Если ДанныеФотографии <> Неопределено Тогда
    ЭлементыФормы.Фотография.Картинка = Фотография.Получить();
    КонецЕсли;
    
  4. TopicStarter Overlay
    mhl
    Offline

    mhl Опытный в 1С

    Регистрация:
    23 июн 2007
    Сообщения:
    418
    Симпатии:
    0
    Баллы:
    26
    Спасибо заработало)))
  5. banana_space
    Offline

    banana_space

    Регистрация:
    30 июн 2008
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    Пытался сделать тоже самое, но для группы в справочнике "Номенклатура". Изобрадение сохраняется в хранилище, однако при открытии формы группы изображение не выводится.
  6. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Так код где?

Поделиться этой страницей