|
Как получить из строки картинку и отобразить в табличном документе? |
☑ |
0
andrey i1c
15.08.20
✎
19:22
|
В реквизите на форме с типом данных строка содержится строка e1cib/data/Справочник.Картинки.Файл?ref=81d31cb72cb0989711eabbe2ad225357
как получить из этой строки картинку и отобразить в табличном документе?
|
|
1
antgrom
15.08.20
✎
19:59
|
Если ты не против - переименую ветку более информативно.
|
|
2
antgrom
15.08.20
✎
20:01
|
(0) Не пробовал посмотреть в типовых, например в типовой УТ.
В карточке номенклатуры показывается фото с самой номенклатурой
|
|
3
CepeLLlka
15.08.20
✎
20:11
|
(0)Если я не ошибаюсь, то тебе нужно сначала получить ссылку элемент справочника "Картинки", через навигационную ссылку..
Вот так
Функция ПолучитьСсылкуИзНавигационной(ТвояНавигационнаяСсылка)
ПерваяТочка = Найти(НС, "e1cib/data/");
ВтораяТочка = Найти(НС, "?ref=");
ПредставлениеТипа = Сред(НС, ПерваяТочка + 11, ВтораяТочка - ПерваяТочка - 11);
ШаблонЗначения = ЗначениеВСтрокуВнутр(ПредопределенноеЗначение(ПредставлениеТипа + ".ПустаяСсылка"));
ЗначениеСсылки = СтрЗаменить(ШаблонЗначения, "00000000000000000000000000000000", Сред(НС, ВтораяТочка + 5));
Ссылка = ЗначениеИзСтрокиВнутр(ЗначениеСсылки);
КонецФункции
Затем уже получить двоичные данные из хранилища значения которые будет доступен по полученной "ссылке"
СсылкаНаКартинку = ПолучитьСсылкуИзНавигационной(ТвояНавигационнаяСсылка);
Изображение = новый Картинка();
Изображение = СсылкаНаКартинку.Файл.Получить();
Ну и вывести её в макет
ТабДок = Новый ТабличныйДокумент;
Макет = ОбработкаОбъект.ПолучитьМакет("Макет");
ОбластьКартинки = Макет.ПолучитьОбласть("ОбластьСКартинкой");
ОбластьКартинки.Рисунки.Логотип.Картинка = Изображение;
|
|
4
CepeLLlka
15.08.20
✎
20:17
|
(3)Тут ошибка - "Функция ПолучитьСсылкуИзНавигационной(ТвояНавигационнаяСсылка)" заменить на "Функция ПолучитьСсылкуИзНавигационной(НС)"
И перед КонецФункции нужно вставить "Возврат Ссылка;"
|
|
5
andrey i1c
15.08.20
✎
20:42
|
(4) а в табличном документе Картинку как параметр в области обозначать?
|
|
6
andrey i1c
15.08.20
✎
20:43
|
(5) в макете
|
|
7
CepeLLlka
15.08.20
✎
20:47
|
(6)Неее.. нужно создать элемент - "Рисунок" и поместить его в область
|
|
8
CepeLLlka
15.08.20
✎
20:48
|
(6)Если есть возможность, подгляди в макете счета на оплату, там должна быть область с каринкой-логотипом..
|
|
9
CepeLLlka
15.08.20
✎
20:51
|
(6)Вот тут можно подсмотреть..
|
|
10
andrey i1c
15.08.20
✎
21:17
|
вот так сделал, напрямую открывал картинку с локального диска.
Спасибо)
|
|
11
CepeLLlka
15.08.20
✎
21:32
|
(10)А как же (0)?
|
|
12
andrey i1c
16.08.20
✎
09:56
|
(11) Не получилось преобразовать строку...а так как есть оригиналы картинок, то как вариант загружал напрямую
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший