Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Проблема с вставкой открытой картинки в реквизит формы типа ХранилищеДанных
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
ktu78
Добрый день, коллеги.
Подскажите пожалуйста.
У меня есть справочник Номенклатура, управляемая форма - форма элемента.
Задача в чем - нужно открыть файл картинки с изображением товара и вставить в табличную часть справочника, в поле СодержимоеФайла, имеющее тип "ХранилищеЗначений".
Этот тип не отображается на форме. В конструкторе формы выдает "Недоступен в данной форме"

Я создал команду на форме, а те в табличной части и написал код:

&НаКлиенте
Процедура ОткрытьФайл(Команда)
  
   // открываем файл картинки для каждой строки
   Режим = РежимДиалогаВыбораФайла.Открытие;
    ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим);
    ДиалогОткрытияФайла.ПолноеИмяФайла = "";
   Текст = "ru = ""Фото товара""";
    Фильтр = НСтр(Текст)+"(*.jpg)|*.jpg*";

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

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


&НаСервере
Процедура ДобавьКартинку(ОткрытыйФайл)
    Картинка = РеквизитФормыВЗначение("СодержимоеФайла");
    Объект.Картинка =  Новый ХранилищеЗначения(ОткрытыйФайл);
    ЗначениеВРеквизитФормы(Картинка, "СодержимоеФайла");
КонецПроцедуры


Подскажите, как записать открытую картинку в реквизит табличной части "СодержимоеФайла". Заранее благодарен. Удачи Вам в Вашем деле!


 ! 

Правила, 12: выделяйте код!
 
ktu78
трудно сказать
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.