- Добавляем реквизит объекта “ДанныеКартинки” тип ХранилищеЗначения
- Добавляем в реквизит формы реквизи “СсылкаНаКартинку”, типа неограниченная строка
- Переносим его на форму и меняем вид на “Поле картинки”, свойство “РазмерКартинки”=АвтоРазмер
- Добавляем команду “ВыбратьИзображение”, переносим на форму и прописываем код обработки команды. пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
&НаКлиенте Процедура ВыбратьИзображение(Команда) Оповещение=Новый ОписаниеОповещения("ОбработкаВыбораФайла",ЭтаФорма); НачатьПомещениеФайла(Оповещение,,,Истина,УникальныйИдентификатор); КонецПроцедуры &НаКлиенте Процедура ОбработкаВыбораФайла(Результат, Адрес, ВыбранноеИмяФайла, ДополнительныеПараметры) Экспорт Если Не Результат Тогда Возврат; КонецЕсли; СсылкаНаКартинку=Адрес; КонецПроцедуры |
Добавляем 2 события на форму для записи и чтения изображения:
1 2 3 4 5 6 7 8 9 10 11 |
&НаСервере Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) Если ЭтоАдресВременногоХранилища(СсылкаНаКартинку) Тогда ТекущийОбъект.ДанныеКартинки=Новый ХранилищеЗначения(ПолучитьИзВременногоХранилища(СсылкаНаКартинку)); КонецЕсли; КонецПроцедуры &НаСервере Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка) СсылкаНаКартинку=ПолучитьНавигационнуюСсылку(Объект.Ссылка,"ДанныеКартинки"); КонецПроцедуры |