Имя: Пароль:
1C
 
Можно ли вытащить картинку на УПР форму из файла?
0 Umka2008
 
25.09.10
20:01
В демо примере там справочник с хранилищем. Картинка сначала записывается в него, а потом через
АдресКартинки = ПолучитьНавигационнуюСсылку(ФайлКартинки, "ДанныеФайла"); вытаскивается на форму в поле Картинка.

А могу я не сохраняя файл в базе, сразу по его пути вытащить? И как?
1 Злопчинский
 
25.09.10
20:17
как-то слабо представляю как тонкий клиент во владивостоке будет по какому-то "пути" (где?) вытаскивать картинку... в общем случае наверное лабуда полная, в частном случае - наверное прокатит...
2 Umka2008
 
25.09.10
20:18
Получается для веба нужно все картинки пихать в базу?
3 AndreyLan
 
25.09.10
20:20
А что мешает не пихая в базу все это сделать?
4 Umka2008
 
25.09.10
20:22
(3) Вот я и спрашиваю - как?
5 AndreyLan
 
25.09.10
20:35
Попробуй ПоместитьФайл + синтаксис помощник
6 Umka2008
 
25.09.10
21:55
Попробовал - получается, только в толстом
а в ВЕБ пишет
ПоместитьФайл(АдресКартинки,ФайлКартинки,,Ложь);
по причине: В веб-клиенте доступен только интерактивный режим
7 ll13
 
25.09.10
22:26
(6) Для веб клиента доступен только интерактивный выбор пользователем файла помещаемого в хранилище.
Пробуй ПоместитьФайлы() + ПодключитьРасширениеРаботыСФайлами() может покатит.
8 Umka2008
 
26.09.10
09:18
7 - а мне не надо чтобы юзер на клиенте выбирал картинку, картинка уже лежит вместе с базой на сервере, нужно просто ему ее показать, ПоместитьФайл(Адрес,"c:\kart.jpg",,Ложь) на толстом работает, но как ее заставить выполнится без ошибки на тонком?
9 ll13
 
26.09.10
15:24
(8) А чё ж ты тут всем мозги то паришь ?!
&НаСервере
Картинка = Новый Картинка("C:\Картинка.gif");
Затем
ПоместитьВоВременноеХранилище(<Данные>, <Адрес>)
А потом на клиенте вытаскивай её из вр.хран.
10 Umka2008
 
26.09.10
18:03
Теоретически понимаю, а как и где это прописать?
Можешь просто в виде примера объяснить?
11 Umka2008
 
26.09.10
18:27
Наконец-то, вот так получилось

&НаСервере
Функция ПоместитьФотоВХранилище()
   ФайлКартинки = Объект.ФайлКартинки;
   МояКартинка = Новый Картинка(ФайлКартинки);
   Возврат ПоместитьВоВременноеХранилище(МояКартинка, УникальныйИдентификатор);
КонецФункции    

&НаКлиенте
Процедура ПриОткрытии(Отказ)
   ФайлКартинки = Объект.ФайлКартинки;
   Если НЕ ПустаяСтрока(ФайлКартинки) Тогда
       АдресКартинки = ПоместитьФотоВХранилище();    
   Иначе
       АдресКартинки = "";
   Конецесли;
КонецПроцедуры
12 disk-2008
 
26.09.10
19:29
Да, работает.
Закон Брукера: Даже маленькая практика стоит большой теории.