|
Картинка на форме УФ | ☑ | ||
---|---|---|---|---|
0
Mr_Mihail
15.11.12
✎
10:58
|
Пытаюсь отобразить картинку на форме внешней обработки. при выделении строки на форме должна отображаться картинка. создал Декорацию с видом Картинка.
&НаКлиенте Процедура СписокНоменклатурыПриАктивизацииСтроки(Элемент) Попытка СтрокаНоменклатуры = Элементы.СписокНоменклатуры.ТекущиеДанные.Номенклатура; Элементы.Картинка = ПолучитьКартинку(СтрокаНоменклатуры); Исключение КонецПопытки; КонецПроцедуры &НаСервере Функция ПолучитьКартинку(СтрокаНоменклатуры) Попытка КартинкаНоменклатуры = Новый Картинка(ПолучитьИзВременногоХранилища(ПрисоединенныеФайлы.ПолучитьДанныеФайла(СтрокаНоменклатуры.ФайлКартинки).СсылкаНаДвоичныеДанныеФайла)); Исключение КонецПопытки; Возврат КартинкаНоменклатуры КонецФункции Программа ошибок не выдаёт. по отладчику смотрел - номенклатура цепляется, картинка тоже. но всё равно картинка не отображается, подскажите что делаю не правильно? |
|||
1
Heckfy
15.11.12
✎
11:01
|
ЭтаФорма.ОбновитьОтображениеДанных() не помогает?
|
|||
2
Cube
15.11.12
✎
11:01
|
Опять ты))
Знакомый код... Напоминает v8: УТ 11 Внешний отчет. Вставить Картинку Номенклатуры в Макет. |
|||
3
Cube
15.11.12
✎
11:02
|
(0) Посмотреть, как в УТ в справочнике "Номенклатура" картинка выводится религия до сих пор не позволяет?))
|
|||
4
GLazNik
15.11.12
✎
11:02
|
(0) вроде как Новый Картинка(ПолучитьИзВременногоХранилища( лишнее
|
|||
5
Mr_Mihail
15.11.12
✎
11:02
|
(2) так точно, пытаюсь теми же способами только уже на форме отображать. много лазил по форуму, но результата добиться не получилось. пришлось прибегнуть к вашей помощи)
|
|||
6
Mr_Mihail
15.11.12
✎
11:03
|
(3) первоначально там и смотрел. но не смог разобраться, опыта мало разбираться в чужом коде
|
|||
7
Cube
15.11.12
✎
11:04
|
(6) Что там разбираться-то? Вон в (4) уже подсказывают...
|
|||
8
Mr_Mihail
15.11.12
✎
11:05
|
(1) попробовал. безрезультатно(
|
|||
9
Mr_Mihail
15.11.12
✎
11:07
|
(4)
КартинкаНоменклатуры = ПрисоединенныеФайлы.ПолучитьДанныеФайла(СтрокаНоменклатуры.ФайлКартинки).СсылкаНаДвоичныеДанныеФайла; тоже не помогает( |
|||
10
Cube
15.11.12
✎
11:11
|
||||
11
GLazNik
15.11.12
✎
11:11
|
(6) чего там разбираться?
кода пару строк... добавляем реквизит, типа строка кидаем его на форму с видом поле картинки потом идет АдресКартинки = ПолучитьНавигационнуюСсылкуКартинки(Объект.ФайлКартинки, УникальныйИдентификатор) а там вызов который уже есть у тебя Возврат ПрисоединенныеФайлы.ПолучитьДанныеФайла(ФайлКартинки, ИдентификаторФормы).СсылкаНаДвоичныеДанныеФайла; |
|||
12
Mr_Mihail
15.11.12
✎
11:18
|
(10) у меня УТ 11 (11.0.8.11). форма совсем другая, и в процедуре ПриСозданииНаСервере ничего про отображение картинки. АдресКартинки с типом строка без ограничения?
|
|||
13
Mr_Mihail
15.11.12
✎
11:19
|
(11) я не то что не разобрался, я его найти не смог. Сейчас попробую, спасибо
|
|||
14
НЕА123
15.11.12
✎
11:20
|
интересный подход в (0).
>Программа ошибок не выдаёт. отладчиком пользоваться не умеем, а вот все в попытку-исключение все засунуть - это мастерски. |
|||
15
Cube
15.11.12
✎
11:23
|
(12) У меня 11.0.6.9.
|
|||
16
GLazNik
15.11.12
✎
11:25
|
(14) гы и вправду... красиво :)
(12) Причем тут ПриСозданииНаСервере? Поиском по модулю пользоваться умеем? Поищите где используется АдресКартинки |
|||
17
Mr_Mihail
15.11.12
✎
11:28
|
(14) умею я пользоваться отладчиком. первая попытка для того что бы программа не зависала в начале, поскольку процедура выполняется при открытии формы, когда таб часть пустая. а вторая попытка, когда номенклатура не имеет картинку
|
|||
18
D_Pavel
15.11.12
✎
11:29
|
У меня так работает:
СсылкаНаКартинку=ПоместитьВоВременноеХранилище(Новый Картинка(НайденныеФайлы[0].ПолноеИмя, Истина), УникальныйИдентификатор); Где СсылкаНаКартинку это путь к данным картинки на форме |
|||
19
Mr_Mihail
15.11.12
✎
11:30
|
||||
20
GLazNik
15.11.12
✎
11:30
|
(17) это "пять"! Все это спокойно обрабатывается без Попытка Исключение.
|
|||
21
Mr_Mihail
15.11.12
✎
11:31
|
Получилось с отображением картинки, осталось только настроить ширину и высоту. Спасибо за помощь!
|
|||
22
Mr_Mihail
15.11.12
✎
11:31
|
(20) ну других способов я пока не знаю.
|
|||
23
GLazNik
15.11.12
✎
11:34
|
(22) это не повод все оборачивать попыткой. Избавляйтесь от этой вредной привычки. Попытка Исключение только в крайнем случае, когда другие методы невозможны.
|
|||
24
Mr_Mihail
15.11.12
✎
11:36
|
(23) хорошо, буду искать иные способы.
|
|||
25
acsent
15.11.12
✎
11:36
|
КартинкаНоменклатуры - адрес временного хранилища должно быть
|
|||
26
Mr_Mihail
15.11.12
✎
11:39
|
(25) я её теперь не использую. сразу с сервера записываю значение в реквизит обработки
Отчет.Картинка = ПрисоединенныеФайлы.ПолучитьДанныеФайла(СтрокаНоменклатуры.ФайлКартинки).СсылкаНаДвоичныеДанныеФайла; |
|||
27
D_Pavel
15.11.12
✎
11:56
|
(26) Так в тонком клиенте может не работать. Лучше сделать как я написал
|
|||
28
Mr_Mihail
15.11.12
✎
12:11
|
(27) всё проверил, работает.
вот результат: &НаКлиенте Процедура СписокНоменклатурыПриАктивизацииСтроки(Элемент) Если Элементы.СписокНоменклатуры.ТекущиеДанные <> Неопределено Тогда СтрокаНоменклатуры = Элементы.СписокНоменклатуры.ТекущиеДанные.Номенклатура; ПолучитьКартинку(СтрокаНоменклатуры); КонецЕсли КонецПроцедуры &НаСервере Процедура ПолучитьКартинку(СтрокаНоменклатуры) Если ЗначениеЗаполнено(СтрокаНоменклатуры.ФайлКартинки) ТОгда Отчет.Картинка = ПрисоединенныеФайлы.ПолучитьДанныеФайла(СтрокаНоменклатуры.ФайлКартинки).СсылкаНаДвоичныеДанныеФайла; Иначе Отчет.Картинка = Неопределено; КонецЕсли; КонецПроцедуры Всем ещё раз спасибо за помощь! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |