Вход | Регистрация
 

Добавление картинки. WEB клиент

Добавление картинки. WEB клиент
Я
   Zixxx
 
30.04.19 - 14:25
Необходимо чтобы web пользователь выбирал картинки, которые будут сохраняться в табличную часть.
Но после добавления не получается получить картинку
По началу хранилище картинки равно двоичным данным, а вот после того как происходит ЗначениеВРеквизитФормы оно становится= Неопределенно

Как правильно сделать?

[CODE]&НаКлиенте
Процедура ВыбратьКартинку(Команда)
    
    ОписаниеОповещения = Новый ОписаниеОповещения("ОбработатьВыборФайла", ЭтаФорма);
    ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
    ДиалогОткрытияФайла.МножественныйВыбор = Ложь;
        
    НачатьПомещениеФайлов(ОписаниеОповещения, , ДиалогОткрытияФайла, Истина, УникальныйИдентификатор);

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

&НаКлиенте
Процедура ОбработатьВыборФайла(ПомещенныеФайлы, ДополнительныеПараметры) Экспорт

    Если ПомещенныеФайлы = Неопределено Тогда
        Возврат;
    КонецЕсли;

    Для каждого ПереданныйФайл Из ПомещенныеФайлы Цикл
        ДобавитьСтрокуНаСервере(ПереданныйФайл);
    КонецЦикла;
    
КонецПроцедуры

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

&НаКлиенте
Процедура ВебКартинкиПриАктивизацииСтроки(Элемент)
    Адрес = ПолучитьНавигационнуюСсылку(Объект.Ссылка, "ВебКартинки.Хранилище", Элементы.ВебКартинки.ТекущаяСтрока);
    СсылкаНаКартинку = Адрес;
КонецПроцедуры[/CODE]
 
 
   runoff_runoff
 
1 - 30.04.19 - 14:30
Объект.ВебКартинки.Добавить()
без "превращения" данных формы в объект номенклатуры и обратно
   Zixxx
 
2 - 30.04.19 - 14:34
(1) Но там не будет реквизита хранилища у табличной части
   ptiz
 
3 - 30.04.19 - 14:49
(0) Задачу наверняка можно решить, но делать ХранилищеЗначение в ТЧ Номенклатуры - изначально ошибочно. Справочник умрет. Делай отдельный справочник ПрикрепленныеФайлы, сами ДвоичныеДанные - в РС с измеренеием "ПрикрепленныйФайл". А уже в ТЧ Номенклатуры - ссылку на справочник ПрикрепленныеФайлы.
   runoff_runoff
 
4 - 30.04.19 - 14:55
(3) +1 канонически
   ptiz
 
5 - 30.04.19 - 15:11
(2) а если "в лоб", то делать НоменклатураОбъект.Записать() после НоваяСтрока.Хранилище    = Хранилище; 
...но будут нюансы с модифицированностью
   runoff_runoff
 
6 - 01.05.19 - 01:33
добавляете "красную" колонку Адрес в данные формы Объект.ВебКартинки
туда сваливаете адреса картинок
а в процедуре ПередЗаписьюНаСервере записываете картинки из адресов в хранилища, у вас там как раз доступны и Объект (данные формы), и ТекущийОбъект (справочник объект)

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.