0
Soulseller76
30.04.15
✎
10:52
|
Есть таблица значений. На каждую ее строку необходимо выести:
1. Заголовок таблицы
2.Саму таблицу с одной строкой.
Могу вывести заголовки:
АктивныйДокумент = ПолучитьМакет("ДоговорАренды");
MSWord = АктивныйДокумент.Получить();
// Получить объект из макета.
Word = MSWord.Application;
Документ = Word.Documents(1);
Документ.Activate();
//выведем заголовки таблиц
MSWord.ActiveWindow.Selection.GoTo(-1, , , "ЗаголовокТаблицы");
Счетчик = 1;
Для каждого СтрокаТЗ Из ТаблицаАдресаСРазбиением Цикл
СтроениеКорпус = ?(Найти(СтрокаТЗ.КорпусПомещения,"строение") > 0,СтрЗаменить(СтрокаТЗ.КорпусПомещения,"строение","Стр."),СтрЗаменить(СтрокаТЗ.КорпусПомещения,"корпус","Корп."));
MSWord.ActiveWindow.Selection.Font.Bold = Истина;
MSWord.ActiveWindow.Selection.Font.size = 11;
MSWord.ActiveWindow.Selection.ParagraphFormat.Alignment = 1;
Если ЗначениеЗаполнено(СтрокаТЗ.КодБТИ) Тогда
НомерАдресПомещения = Найти(СтрокаТЗ.КодБТИ, "помещение");
MSWord.ActiveWindow.Selection.TypeText(СтроениеКорпус+", "+Сред(СтрокаТЗ.КодБТИ,НомерАдресПомещения)+" ("+СтрокаТЗ.Площадь+" кв.м)");
Если Счетчик < ТаблицаАдресаСРазбиением.Количество() Тогда
MSWord.ActiveWindow.Selection.TypeParagraph();
КонецЕсли;
Иначе
MSWord.ActiveWindow.Selection.TypeText(СтроениеКорпус+", "+СтрокаТЗ.ЭтажПомещения+" ("+СтрокаТЗ.Площадь+" кв.м)");
MSWord.ActiveWindow.Selection.TypeParagraph();
КонецЕсли;
Счетчик = Счетчик +1;
КонецЦикла;
Получается вывести одну таблицу с несколькими строками (по количеству строк в таблице значений)
//выведем заголовки таблиц
MSWord.Bookmarks(СокрЛП("ТаблицыБС")).Select();
Документ.Paragraphs.Add();
Rng = MSWord.Application.Selection.Range;
Rng.InsertAfter(СокрЛП("Порядковый № БС")+"*"+"Период действия БС (от)"+"*"+"Период действия БС (до)"+"*"+"Величина БС, руб.");
СчетчикТаблиц = 1;
Для Каждого СтрочкаТаблицы из ТаблицаАдресаСРазбиением Цикл
Rng.InsertParagraphAfter();
Rng.InsertAfter(Строка("1" +"*"+ СтрочкаТаблицы.ДатаНачалаСрокаАренды +"*"+ СтрочкаТаблицы.ДатаОкончанияСрокаАренды+"*"+ ""));
Rng.InsertParagraphAfter();
КонецЦикла;
Rng.ConvertToTable("*");
Документ.Tables(1).AutoFormat(17);
Но чтобы было Заголовок таблицы, потом таблица, потом снова заголовок и так далее... Никак не могу сделать... :(
Помогите!!!
|
|