Области

Областью табличного документа называется группа ячеек, имеющая имя. Обычно области включают в себя одну или несколько строк, колонок или любой прямоугольный диапазон ячеек. К области можно обратиться по координатам или имени.

Именование областей

Редактировать имена областей можно через окно свойств или с помощью панели «Имена», предварительно выделив нужный диапазон ячеек.

Панель «Имена» имеет следующие кнопки:

Любая область уже имеет системное имя, например:

Разработчик может задать собственное имя для области, например, «Шапка», и использовать его при формировании табличного документа. Для вывода пересечения горизонтальной и вертикальной секции можно использовать конструкцию с вертикальной чертой, например, «Обл = Макет.ПолучитьОбласть("Строка | Колонка")». Второй вариант — задать имя для пересечения и работать с этой областью, как с любой другой.

Общая схема работы

Основные методы формирования печатной формы следующие:

Вывести

Выводит в печатную форму очередной фрагмент табличного документа, добавляя его снизу, начиная с первой колонки.

Присоединить

Присоединяет к печатной форме очередной фрагмент табличного документа справа, начиная со строки, с которой выводился предыдущий фрагмент методом Вывести.

Область

Позволяет получить область как объект типа ОбластьЯчеекТабличногоДокумента.

ПолучитьОбласть

Позволяет получить область как объект типа ТабличныйДокумент.

Обратите внимание на различие методов Область и ПолучитьОбласть:

• Метод Область() предоставляет доступ к части табличного документа. Он возвращает объект ОбластьЯчеекТабличногоДокумента, предназначенный для установки форматирования области ячеек, установки текста, значения, примечания и расшифровки. Этот объект можно передать в методы ВставитьОбласть и УдалитьОбласть.

• Метод ПолучитьОбласть() создает отдельный табличный документ из указанной области. Он возвращает объект ТабличныйДокумент, который можно передать в методы Вывести и Присоединить.

Следующая программа формирует простую печатную форму (без данных в ячейках):

 

ТабДок = Новый ТабличныйДокумент;
//Получение макета
Макет - Документы.РасходнаяНакладная.ПолучитьМакет("Печать");
//получим область как новый табличный документ (!)
Область = Макет.ПолучитьОбласть("Заголовок");
//выведем область в табличный документ
ТабДок.Вывести(Область);
//Шапка
ТабДок.Вывести(Макет.ПолучитьОбласть("Шапка"));
//Состав
Для Каждого СтрСостава Из Состав Цикл
	Область = Макет.ПолучитьОбласть("Строка");
	ТабДок.Вывести(Область);
КонецЦикла;
//Подвал
Область = Макет.ПолучитьОбласть("Подвал");
ТабДок.Вывести(Область);
ТабДок.Показать(); //покажем на экране
 

А следующий пример формирует более сложный отчет. В нем выводятся горизонтальные и вертикальные области, устанавливаются различные свойства области:

 

ТабДок = ЭлементыФормы.ПолеТабДок;
ТабДок.Очистить();
Макет = ПолучитьМакет("Основной");
//получим область как объект ТабличныйДокумент
ОбластьТабДок = Макет.ПолучитьОбласть("ЛеваяЧастьШапки");
ТабДок.Вывести(ОбластьТабДок);
Для НомМес = 1 По 12 Цикл
	//получим область как объект ОбластьЯчеекТабличногоДокумента
	//свойства области нужно заполнять до ее вывода в печатную форму
	ОбластьЯчеек = Макет.Область("НазваниеМесяца");
	ОбластьЯчеек.Шрифт = Новый Шрифт(,,Истина); //жирный
	ОбластьЯчеек.Текст = НомМес;
	//получим область как объект ТабличныйДокумент
	ОбластьТабДок = Макет.ПолучитьОбласть("МесяцШапка");
	ТабДок.Присоединить(ОбластьТабДок) ;
КонецЦикла;
 

К области можно обращаться не только через метод Область, но и через свойство-коллекцию Области объекта ТабличныйДокумент.

Следующие примеры эквивалентны друг другу:

 

ОбластьЯчеек = Макет.Область("НазваниеМесяца") ;
ОбластьЯчеек = Макет.Области("НазваниеМесяца");
ОбластьЯчеек = Макет.Области.НазваниеМесяца,
 

Событие Выбор

При двойном щелчке (или нажатии Enter) на ячейке табличного документа или рисунке возникает событие Выбор. Это же событие возникает при одинарном щелчке на гиперссылке. Программист может перехватить это событие с помощью процедуры-обработчика.

Внимание! Следует различать события Выбор и ОбработкаРасшифровки. Событие Выбор возникает при двойном щелчке (или нажатии Enter) на ячейке или рисунке, даже если у них нет расшифровки, тогда как событие ОбработкаРасшифровки возникает у ячеек или рисунков, содержащих расшифровку. Причем сначала возникает событие Выбор, а потом ОбработкаРасшифровки. пиццерии киева . рыбалка Винница . Центр обучения "Mei-Tan" приглашает на курсы маникюра в Киеве по лучшей цене. . Большой выбор моделей и цветов угловые шкафы купе на заказ.