Имя: Пароль:
1C
1С v8
Групповая запись в один Word-овский файл
0 ares
 
08.10.13
16:38
Исходные данные:
Платформа 8.2.18

При печати обьекта есть шаблон Word (хотите как двоичный, хотите как ActiveDocument), по данным объекта печать идет на 2 страницы, первая портрет, вторая ланшафт. Все хорошо, все отлично.

Однако когда кол-во объектов возрасло в тысячи, возникла необходимость вывода на печать одного большого файла т.е. ко-во объектов * 2 = кол-во страниц.

Погуглил, нашел несолько аналогов, но они основаны на методе Paste или PasteAndFormat, но они копируют только ТЕКСТ, формат страницы не копируют. Т.е. текст 2 страницы копируется на портрет.

Вот ближайший код к решению, но может быть и тупик((
    // Объект Microsoft Word из макета
    ОбъектВорд = ПолучитьМакет("Макет").Получить();
    
    // Документ из объекта и его активация
    Документ = ОбъектВорд.Application.Documents(1);
    Документ.Activate();
    
    // Выборка данных
    Выборка = ОбъектВорд.Application.Selection;                              
    
    // Создание разделов
    Выборка.Find.Text ="[НомерАкта]"; //Нахожу первый раздел
    Выборка.Find.Forward =1;
    Выборка.Find.Wrap =1;
    Выборка.Find.Execute();
    НашлиРазделы = Выборка.Find.Found;
    Если НашлиРазделы Тогда
        Выборка.MoveUp(4,1);
        Выборка.MoveDown(4,7,1);
        Выборка.Copy();       //Копирую весь раздел
        Для СчетчикЦикла = 1 По 2 Цикл
            Выборка.PasteAndFormat(0);  //В цикле вывожу 2 раза, чтобы потом заполнить
        КонецЦикла;
    КонецЕсли;    
    
// Вывод документа
    ОбъектВорд.Application.Visible = Истина;
    ОбъектВорд.Activate();

Мне бы хоть какой ответ, может это вообще невозможно средствами 1С или нормальное описание методов Word