понедельник, 1 июля 2013 г.

Пример работы с MS Word из 1с

//Вариант 1:
НовыйПутьКФайлу = ПолучитьИмяВременногоФайла(".docx");//Шаблон - файл Ворд храниться в хранилище.  

Хранилище_.Получить().Записать(НовыйПутьКФайлу);   

Ворд = Новый COMОбъект("Word.Application");
Док = Ворд.Documents.open(НовыйПутьКФайлу);   

для сч = 1 по Док.ContentControls.Count Цикл //ContentControls - элементы управления, которым присвоены теги.
    Тег = НРег(Док.ContentControls(сч).Tag);
    Текст = Соот.Получить(Тег);//В соответствии записаны Теги и Их Значения.
    Док.ContentControls(сч).Range.Text = Текст;

    Если ПустаяСтрока(Текст) Тогда
        Сообщить("Не нашли текст для Тега:"+Тег);
    КонецЕсли;

КонецЦикла;
Док.Application.Visible = Истина;
Док.Application.Activate();


//Вариант 2:
Док = ПолучитьМакет(ИмяШаблона);// Файл Ворд храниться в макете  
КомОбъект = Док.Получить();

КомОбъект.Bookmarks("НомерДоговора").Select();//НомерДоговора - закладка
КомОбъект.Application.Selection.TypeText(СокрЛП(Договор.Номер));

КомОбъект.Application.Visible=1;
КомОбъект = 0;