| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | Процедура ТЗПечать(ТЗ,Заголовок="") Экспорт  Перем Таб, Кол,Стр; #Если Клиент Тогда  Линия = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная,1);  ТолстаяЛиния = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 2);  Таб=Новый ТабличныйДокумент;  Таб.Область(1,1).Текст=Заголовок;  Таб.Область(1,1).ШиринаКолонки = 4;  Таб.Область(1,1).Обвести(ТолстаяЛиния,ТолстаяЛиния,ТолстаяЛиния,ТолстаяЛиния);  Для Кол=1 По ТЗ.Колонки.Количество() Цикл  врЗаголовок = "";  Если СокрЛП(Строка(ТЗ.Колонки[Кол-1].Заголовок)) <> "" Тогда  врЗаголовок = Строка(ТЗ.Колонки[Кол-1].Заголовок);  Иначе  врЗаголовок = Строка(ТЗ.Колонки[Кол-1].Имя)  КонецЕсли;  Таб.Область(2,Кол+1).Текст = врЗаголовок;  Таб.Область(2,Кол+1).Шрифт = Новый Шрифт(,,Истина);// жирный  Таб.Область(2,Кол+1).Обвести(ТолстаяЛиния,ТолстаяЛиния,ТолстаяЛиния,ТолстаяЛиния);  врШир = ТЗ.Колонки[Кол-1].Ширина;  Если врШир > 0 Тогда  Таб.Область(2,Кол+1).ШиринаКолонки = врШир;  КонецЕсли;  КонецЦикла;  i=0;  Для Каждого Ном ИЗ ТЗ Цикл  i=i+1;  Таб.Область(i+2,1).Текст=Строка(i);  Таб.Область(i+2,1).Обвести(Линия, Линия, Линия, Линия);  Для Кол=1 По ТЗ.Колонки.Количество() Цикл  Таб.Область(i+2,Кол+1).Текст=Строка(ТЗ[i-1][кол-1]);  Таб.Область(i+2,Кол+1).Обвести(Линия, Линия, Линия, Линия);  КонецЦикла;  Если i/10=Цел(i/10) Тогда   Состояние(Заголовок+", печать: "+Строка(i));  КонецЕсли;  КонецЦикла;   Таб.Показать(Заголовок); #КонецЕсли КонецПроцедуры | 
Если Вы хотите больше узнать о программировании в 1С, тогда регистрируйтесь на курс: 1С 8.3 Старт >>>
 
