|
v7: программно вставить рисунок в отчет |
☑ |
0
vip67
23.06.13
✎
08:10
|
Всем привет! 1с 7.7 подскажите, как программно вставить в отчет рисунок из файла? к примеру, - для каждого контрагента есть свой рисунок - при выборе контрагента в отчет нужно вставить именно его рисунок
|
|
1
vip67
23.06.13
✎
08:49
|
up
|
|
2
Кукуев
23.06.13
✎
10:19
|
Что-то не верится, что с такой линейкой и такой вопрос.
Но, на всякий случай...
Можно сделать файл рисунка с именем = коду контрагента (код, надеюсь, уникальный :))
Типа Контрагент.Код = "000123", его рисунок в файле 000123.bmp
И вславлять этот файл в отчет при выборе контрагента
|
|
3
vip67
23.06.13
✎
10:52
|
(2)так вот и вопрос - КАК вставить в отчет этот файл?
приформировании отчета вручную - понятно, а вот программно?
|
|
4
vip67
23.06.13
✎
10:54
|
я уже год не работал с 7.7 и вот информации по данному вопорсу в инете не нашел...
|
|
5
Кукуев
23.06.13
✎
11:06
|
Ну да, но есть в вопросе ещё и
для каждого контрагента есть свой рисунок - при выборе контрагента в отчет нужно вставить именно его рисунок...
А вставить можно так:
В макете отчета, в нужное место, вставляется объект Рисунок.
На закледке Текст пишется
ИзображениеЗагрузить(Таб.ТекущийОбъект)
В модуле отчета функция
Функция ИзображениеЗагрузить(Куда)
Куда.Загрузить(ТекФайл);
Куда.РежимРисования(3);
КонецФункции //ИзображениеЗагрузить()
, где ТекФайл - найденный файл рисунка конкретного контрагента
|
|
6
Кукуев
23.06.13
✎
11:07
|
Наверное, писать как найти файл - лишнее :)
|
|
7
Zhuravlik
23.06.13
✎
11:17
|
(0) Здесь пост №6 - , расписано подробнее решение в (5)...
|
|
8
probably
23.06.13
✎
11:20
|
Добавить в макет картинку.
В свойстве картинки в поле Текст написать
Таб.ТекущийОбъект.Загрузить(ПутьККартинке)
|
|
9
vip67
23.06.13
✎
17:35
|
спастбо всем!
|
|
10
vip67
23.06.13
✎
17:36
|
(6) как найти файл - действительно - лишнее :))
|
|
11
vip67
23.06.13
✎
18:26
|
а вот теперь усложним вопрос для знатоков: как эту картинку сделать с прозрачным фоном?
я читал, что сделать это можно через ОЛЕ (т.е. в Верде делаем картинку с прозрачным фоном, потом ее вставляем - но это руками)
написал такой код в процедуре модуля обработки
WordApp = CreateObject("Word.Application");
NewDoc=WordApp.Documents;
???=NewDoc.Add("c:\????.doc");
на макет кинул робъект ОЛЕ Верд, где в тексте прописал вызов процедуры - в итоге - выводит только квадратик, само содержимое - не выводит.
|
|
12
vip67
25.06.13
✎
08:24
|
ап, так как насчет ОЛЕ объекта? у кого какие соображения есть?
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший