Имя: Пароль:
1C
1С v8
1C+Word
,
0 lamme
 
03.04.14
15:56
1С82
внешняя обработка. макет -это word документ.
окончание макета - типа росписи разных лиц.

как сделать - чтобы в макет выводилось?
вариант - типа на сделать ЭНН макетов с предустановленными росписями - не предлагать. Много вариантов.

как сделать
Вариант1 - каждая роспись - отд макет word.
вариант2 - каждая роспись - отд макет табличный документ.

остался вопрос - как взять из макета область необходимую и вставить ее в исходщный печатный макет в определенное место ?
1 lamme
 
03.04.14
15:58
вариант3 (не страдает разнообразием) - один табл документ с нескольими областями.

но конечный вопрос все тот же.
как скопировать откуда -то - и вставить куда-то - программно
2 Ksandr
 
03.04.14
15:58
Самый простой вариант - позвать специалиста.
Вариант сложнее - сделать под каждую роспись отдельную область в макете.
Как ее пихать в определенное место ответит СП и курение типовых
3 lamme
 
03.04.14
15:59
(2)
макет - ворд документ. не табличный документ
4 lamme
 
03.04.14
16:35
короче
как то так
v8: Как программно вставить в картинку в Ворд?

картинку - сохраняем в обработке как двоичные данные
ну и при необходимости - дергаем ту или иную роспись в виде картинки - локально.

как то так ..
5 lamme
 
03.04.14
16:44
кому вообще будет интересно дальше.
сохраняем в обработку картинку - как макет с типом - двоичные данные
и при необходимости - эти двоичные данные - сохраняем из макета обработки в локальный диск так:

Файл1 = ЭтотОбъект.ПолучитьМакет("МакетСКартинкой");
ИмяФайлаФайл1 = ПолучитьИмяВременногоФайла(".jpg");
Файл1.Записать(ИмяФайлаРосписьЗиминой);
6 _fvadim
 
03.04.14
17:26
мужик! нафик тему-то создавал?
7 lamme
 
03.04.14
17:47
как нафиг
думал что помогут быстрее решить вопрос.

вопрос возник другой.
как картинку вставить в нужное место ворд-документа.
а то он вставляет в самое начало.

формирование ворд-документа идет так

Документ = MSWord.Application.Documents(1);
            Документ.Activate();
            Selection = Документ.Application.Selection;
            
            Для Каждого ТекущийПараметр Из СтруктураПараметров Цикл
                ЗаменитьПараметр(Документ, ТекущийПараметр.Ключ, ТекущийПараметр.Значение); // тут одни текстовые маячки - меняю на необходимые значения
            КонецЦикла;
            
            
            Selection.InlineShapes.AddPicture(ФайлСКартинкой.ПолноеИмя);// вот тут идет вставка картнки в самое начало документа
            
            MSWord.Application.Visible = Ложь;
            ИмяФайла = ПолучитьИмяВременногоФайла(".doc");
            MsWord.SaveAs(ИмяФайла);
8 Сергей Д
 
03.04.14
17:58
Гым... Начальнику уже лень документы подписывать?
9 lamme
 
03.04.14
18:00
нет.
массовая рассылка напоминаний контрагентам
10 Franchiser
 
гуру
03.04.14
18:25
Обычно в ворде записываешь макрос, потом смотришь что ворд сделал. По сути тебе надо курсор поставить в нужное место, потом вставлять картинку. Каким образом поставить курсор в в нужное место есть много вариантов.
11 lamme
 
03.04.14
22:29
ну вот макрос и показывает
Джамп-Джамп-Лефт-Вниз-Райт ...

какие варианты то поставить курсор в необходимое место?
12 lamme
 
04.04.14
10:25
up
13 Franchiser
 
гуру
04.04.14
11:10
я обычно делаю в шаблоне word некое поле например пишешь [Картинка]. Затем ищешь картинку Ctrl-F [Картинка]. Потом найти. Этот макрос записываешь. Смотришь что получилось. Т.о. произошло позиционирование в нужном месте. Тебе пример кода нужен?
14 Bigbro
 
04.04.14
11:27
я использовал закладки. потом на них позиционировался.
15 lamme
 
04.04.14
11:32
(13)
я в приниципе уже сам дошел до этого

Selection.Find.Text = "#ТутРоспись#";
            Пока Selection.Find.Execute() = Истина Цикл
                сообщить (Selection.Text);
            конеццикла;    
            Selection.InlineShapes.AddPicture(ФайлСРосписью.ПолноеИмя);

т.е. он так ставить картинку с росписью в нужное место.



опять другой вопрос
как программно задать
чтобы формат картинки - обтекание - было за текстом ?
16 lamme
 
04.04.14
11:34
макросом такое не фиксируется.
17 lamme
 
04.04.14
13:15
опять таки
кому интересно
.
рабочий текст такой

// встаавляем картинку
            РисунокДок  = Selection.InlineShapes.AddPicture(ФайлСРосписью.ПолноеИмя, False, True);
            Фигура = РисунокДок.ConvertToShape();  // делаем картинку свободно плавающей и не привязаной к тексту
            Фигура.ZOrder(5); // делаем формат картиник - за текстом
            // есть описание на рус тут
            // http://scriptcoding.ru/2014/03/16/word-shape-figury/